logo

NJP

ServiceNow AIエージェントのカスタマイズ実践ガイド 第2回:AIエージェントに業務データを読ませるには? ~

New article articles in ServiceNow Community · Aug 21, 2026 · article

AI Agent Studio 連載 第2回

ServiceNow AIエージェントのカスタマイズ実践ガイド 第2回:AIエージェントに業務データを読ませるには?

Investigate and resolve ITSM incidentsにおける類似インシデント検索を例に、AIエージェント一式の複製、AI Search の設定変更、Script Include のカスタマイズ、動作確認までの流れを紹介します。

免責事項:

本記事は、筆者個人の検証・経験・見解に基づくものであり、ServiceNow の公式見解、製品方針、正式なガイドラインを示すものではありません。 製品仕様や最新情報については、必ず公式ドキュメント、Release Notes、または関連する公式情報をご確認ください。

対象読者:

  • ServiceNow の AI Agent Studio や AIエージェント活用に関心がある方
  • OOTB AIエージェントを自社業務向けに拡張したい方
  • カスタムフィールドや業務データを AI 活用につなげたい方
  • Tool や AI Search のカスタマイズポイントを知りたい方

はじめに

第1回では、ITSM 向けの OOTB Agentic Workflow である Investigate and resolve ITSM incidents を例に、 Agentic Workflow、AI Agent、Tool、Script Include、AI Search の関係を整理し、AIエージェントの基本的な構造を確認しました。

第1回の記事は こちら をご確認ください。

 

本記事ではその続編として、AIエージェントに自社環境の業務データを活用させるための実装ポイントを紹介します。 具体的には類似インシデント検索を例として、以下の順でAIエージェントをカスタマイズしていきます。

  • AIエージェント一式の複製
  • AI Search の設定変更
  • Script Include のカスタマイズ
  • 動作確認

注意:

本記事では AIエージェント や AI Search の管理機能を利用します。 これらの機能を利用するには適切なロールが必要です。 必要なロールは利用しているバージョンや機能によって異なる場合があるため、詳細は公式ドキュメントを確認してください。 なお、本記事では必要なロールが付与されていることを前提として説明します。


01. まずは OOTB AIエージェントを複製する

OOTB の Agentic Workflow Investigate and resolve ITSM incidents では、以下のような複数の構成要素が連携して動作していました。

  • Agentic Workflow
  • AI Agent
  • Tool
  • Script Include
  • AI Search

AI Search ではキーワード検索だけでなく意味検索(セマンティック検索)も利用できますが、 カスタムフィールドを活用するには複数の設定を見直す必要があります。

今回複製する主な構成要素

Agentic Workflow や AI Agent などの OOTB レコードは直接編集できないため、関連する構成要素を複製した上でカスタマイズします。 Script Include なども OOTB のものを残しておくことで、サポートへの問い合わせにおける再現検証などで役立つ場合があります。

本記事では複製したレコードの名称の先頭に SN を付与し、以降の説明では、特に断りがない限り SN を付与した複製レコードを対象とします。 例えば、OOTB の Investigate and resolve ITSM incidents は、SN Investigate and resolve ITSM incidents として複製します。

Tool や Script Include は複製しただけだと OOTB のモジュールを参照したままになっているため、 コピーしたものを参照するように修正する必要があります。 AI Search 関連の設定である Indexed Sources は複製できないため、直接編集します。

# 種別 名前(OOTB) 備考
1 Agentic Workflow Investigate and resolve ITSM incidents SN プレフィックスを付与して複製
2 Trigger Investigate and resolve ITSM incidents Agentic Workflow と一緒にコピーされるが、リネームが必要
3 AI Agent ITSM incident resolution plan investigation  
4 Tool Find Catalog item and add the URLs in the work notes カタログアイテム検索に関するツール
5 Tool ITSM incident resolution plan investigation AI agent - Fetch all data インシデント調査に必要なデータ取得に関するツール
6 Tool Add a resolution plan or failure message to incident's work notes 解決計画または失敗メッセージを Work notes に追加するツール
7 Script Include CatalogItemRecommenderAgentUtil Tool から呼び出されるスクリプト
8 Script Include CatalogItemRecommenderAgentUtilSNC スクリプト本体
9 Script Include InvestigatingAndResolvingIncidentsUtil Tool から呼び出されるスクリプト
10 Script Include InvestigatingAndResolvingIncidentsUtilSNC スクリプト本体
※今回の修正箇所
11 Search Profile Similar Resolved Incidents 類似インシデント検索で利用するサーチプロファイル
※今回の修正箇所
12 Indexed Sources Incident 1 テーブルにつき 1 つまで
※今回の修正箇所
13 Semantic Index Configuration body ※今回の修正箇所

注意:

AIエージェント関連機能は継続的に改善されているため、過去の構成が常にそのまま維持されるとは限りません。 同じバージョン内で別のパッチを適用した程度でも、OOTB の AI Agent や Agentic Workflow の構成や動作が変わっていたケースもありました。 そのため、AIエージェントを複製する前にアップグレードやパッチ適用を予定している場合は、事前に影響調査を行うことをおすすめします。

02. AI Search でカスタムフィールドを検索できるように設定する

まず AI Search 側の設定として、以下の 3 箇所を修正します。

設定 役割
Indexed Sources AI Search の検索対象とするフィールドを追加する
Semantic Index Configuration セマンティック検索(意味検索)の設定を追加する
Search Profile AI Search へ受け渡す検索条件を設定する

① Indexed Sources で検索対象のフィールドを追加する

まず、ナビゲーションメニューから以下へアクセスし、検索インデックスへ登録するフィールドを設定します。

AI Search

  → Indexed Sources

    → Incident

      → Fields & Mapping

設定例

Field:u_my_business_data

Attribute:map_to

Value:任意のインデックスフィールド名

ポイント:

Indexed Sources の設定変更後は再インデックスが必要になる場合があります。 設定変更したにもかかわらず検索結果へ反映されない場合は、インデックスの更新状況を確認し、 必要に応じて手動で再インデックス化を実施します。

② Semantic Index Configuration で意味検索の設定を追加する

次に、セマンティック検索で利用するフィールドを設定します。

AI Search Admin Home

  → Shared Configurations

    → Indexed Sources

      → Incident

        → Semantic indexing configurations

          → body

            → Semantic Fields

設定例

Type:Field

Field Name:u_my_business_data

Order:5

ポイント:

Semantic Fields に複数の Field を登録する場合は Order で連結順序を設定できます。

③ Search Profile で検索条件を設定する

最後に Search Profile を設定します。

AI Search

  → Search Profiles

    → SN Similar Resolved Incidents

設定例

State = Resolved

  OR

State = Closed

ポイント:

Search Profile では、どの Indexed Source を利用するかや、検索対象レコードの条件を定義します。 今回の例では、解決済みインシデントのみを類似検索の対象とするため、Resolved または Closed のレコードのみ検索するよう設定しています。

補足:設定画面が複数存在する

AI Search 関連機能では、同じテーブルに対して複数の管理画面が用意されている場合があります。 例えば、

  • AI Search
  • AI Search Admin Home

といった複数の導線が存在します。 また、同じレコードを参照していても、利用する画面によって表示・編集できる項目が異なる場合があります。 そのため、目的の設定項目が見当たらない時は、別の管理画面から開くことで設定できることがあります。

03. Tool へカスタムフィールドを返却するように Script Include を修正する

次に、Script Include の SNInvestigatingAndResolvingIncidentsUtilSNC を修正していきます。 fetchSimilarIncidents() 関数のロジックを 3 箇所修正します。

① RAG 検索 API の引数の Search Profile を変更

まず、類似インシデント検索で参照する Search Profile を、OOTB のものから今回複製したものへ変更します。

修正前(イメージ)

.searchProfile("sn_itsm_gen_ai_similar_resolved_incidents")

修正後(イメージ)

.searchProfile("sn_itsm_gen_ai_sn_similar_resolved_incidents")

ポイント:

RAG 検索 API の引数には Search Profile の表示名ではなく、自動生成される Name を指定します。 Name はアプリケーションスコープ名や Search Profile 名から自動生成されます。 今回は Search Profile 名の先頭に SN を付加したため、Name には sn が追加されています。

② RAG 検索 API の引数のフィールド一覧にカスタムフィールドを追加

次に、AI Search の検索結果として取得するフィールド一覧へカスタムフィールドを追加します。

修正前(イメージ)

.fields(["number", "close_notes", "comments_and_work_notes", "short_description", "text"])

修正後(イメージ)

.fields(["number", "close_notes", "comments_and_work_notes", "short_description", "u_my_business_data", "text"])

ポイント:

AI Search 側で検索対象に追加しただけでは、Script Include 側ではその情報を取得できるようにはなりません。 RAG 検索 API の取得対象フィールド一覧にもカスタムフィールドを追加する必要があります。

③ RAG 検索 API の戻り値からカスタムフィールドの値を取得

最後に、取得したカスタムフィールドを後続処理で利用できるよう、戻り値を取得して後続処理へ返却するようにします。

修正前(イメージ)

columns: {
    number: cols.number,
    short_description: cols.short_description,
    close_notes: cols.close_notes
}

修正後(イメージ)

columns: {
    number: cols.number,
    short_description: cols.short_description,
    close_notes: cols.close_notes,
    u_my_business_data: cols.u_my_business_data
}

ポイント:

これで AIエージェントはカスタムフィールドの値を参照できるようになりました。 ただし、カスタムフィールドを実際の業務で活用するためには、必要に応じてプロンプトや Tool なども修正し、 取得した情報が利用されるように調整する必要があります。

04. カスタマイズ後は AI Agent Studio で動作確認する

カスタマイズ後は動作確認と移送前テストが重要です。

  • カスタマイズした内容が反映されているか
  • 環境差異、データ差異、利用ユーザー、実行権限などを考慮した上で、移送可能な状態となっているか

を確認する必要があります。 今回はトリガーによる実行ではなく、手動実行で動作確認をします。 AI Agent Studio のテスト機能を利用するとスムーズに確認ができます。

AI Agent Studio

  → Testing

    → Start manual test

今回は以下の内容でテストを実行します。

項目 設定値
Choose a test type AI agent or workflow
Name of the AI agent or agentic workflow SN Investigate and resolve ITSM incidents
Version 任意のバージョン
Task 任意のインシデント番号

実行後、AI agent decision logs の以下を確認すると、カスタムフィールドが取得できていることが分かります。

SN ITSM incident resolution plan investigation AI agent

  → Tool - SN ITSM incident resolution plan investigation AI agent - Fetch all data

    → Output Fields

      → Similar resolved incident results

        → Columns

また、対象インシデントの内容とカスタムフィールドの内容が関連している場合は、 検索結果の Score が高くなっていることを確認できる場合があります。

ポイント:

AI Search の検索対象にカスタムフィールドを追加しても、その内容が必ずしも検索スコアに大きく影響するとは限りません。 実際のスコアリング結果は、データの内容や登録状況、他の検索対象フィールドとの関連性などによって変化します。

第2回のまとめ

今回は、AIエージェントに業務データを活用させるための実装ポイントを紹介しました。

  • AIエージェント一式の複製
  • AI Search の設定変更
  • Script Include のカスタマイズ
  • 動作確認

という流れでカスタマイズを進めました。

ここからは筆者の所感になりますが、AIエージェントのカスタマイズでは特に、以下の点が重要だと感じました。

  • OOTB AIエージェントはそのままの状態で残しておく
  • 可能な範囲でインスタンスを最新のバージョンにアップグレードしてから AIエージェントを複製する
  • 非本番環境と本番環境のデータ差異を考慮してテストする

今回の記事が、AIエージェントを自社業務向けにカスタマイズする際の参考になれば幸いです。

※製品仕様や最新情報については、公式ドキュメント、Release Notes、または関連する公式情報をご確認ください。

 

 

この記事の執筆者

この記事の執筆者:Yuta Horizoe

Technical Consultant at ServiceNow

Tokyo, JP

View original source

https://www.servicenow.com/community/japan-blog/servicenow-ai%E3%82%A8%E3%83%BC%E3%82%B8%E3%82%A7%E3%83%B3%E3%83%88%E3%81%AE%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%9E%E3%82%A4%E3%82%BA%E5%AE%9F%E8%B7%B5%E3%82%AC%E3%82%A4%E3%83%89-%E7%AC%AC2%E5%9B%9E-ai%E3%82%A8%E3%83%BC%E3%82%B8%E3%82%A7%E3%83%B3%E3%83%88%E3%81%AB%E6%A5%AD%E5%8B%99%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E8%AA%AD%E3%81%BE%E3%81%9B%E3%82%8B%E3%81%AB%E3%81%AF/ba-p/3585226