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
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