Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
IT Service Management (ITSM) の Now Assistを 自分で実...
Search
Akatsuki Inc. PR
September 24, 2024
Technology
1
970
IT Service Management (ITSM) の Now Assistを 自分で実装してみた
SNUG (ServiceNow User Group)ミートアップ登壇資料(2024/9/24)
Akatsuki Inc. PR
September 24, 2024
Tweet
Share
More Decks by Akatsuki Inc. PR
See All by Akatsuki Inc. PR
How Slack Platform Slackを使って日常業務をスマートに
akatsukipr3932
1
97
AIとAWSでビジネスプロセス変革に挑む
akatsukipr3932
1
81
Formula、Lookup table、Environment Propertiesを活用したワークフロー構築
akatsukipr3932
1
24
ワークスペース間で チャンネルを移動する
akatsukipr3932
1
720
Other Decks in Technology
See All in Technology
The Ultimate Showdown of Database Migration Tools
asm0dey
0
130
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.6k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
12k
AIに実況させる / AI Streamer
motemen
1
1.1k
2025advance01
minamizaki
0
100
Microsoft Season of Agent AI エージェントの使用開始
takas0522
0
110
Postman AI エージェントビルダー最新情報
nagix
0
110
マップを速く表示するために
tsuboyan5
0
170
人とAIとの共創を夢見た2か月 #共創AIミートアップ / Co-Creation with Keito-chan
kondoyuko
0
420
SmartHRの複数のチームにおけるMCPサーバーの活用事例と課題
yukisnow1823
1
790
declaration mergingの威力:ライブラリアップデート時の書き換え作業を90%短縮するテクニック
yutake27
2
240
それでもぼくらは貢献をつづけるのだ(たぶん) @FOSS4GLT会#002
furukawayasuto
1
230
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Facilitating Awesome Meetings
lara
54
6.4k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Designing Experiences People Love
moore
142
24k
Six Lessons from altMBA
skipperchong
28
3.8k
Faster Mobile Websites
deanohume
307
31k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Balancing Empowerment & Direction
lara
0
70
Visualization
eitanlees
146
16k
Transcript
IT Service Management (ITSM) の Now Assistを 自分で実装してみた 株式会社アカツキ IT Service部 宮越 信吾
Who? • 名前 ◦ 宮越信吾 • 所属 ◦ IT Service部
• どんなことをやっている人? ◦ Workatoの導入/開発/運用 ◦ ServiceNowの導入/開発/運用 ◦ いろいろ ▪ BigQuery, Looker, AWS, Raspberry Piなど • 趣味 ◦ 音楽鑑賞 ▪ レコードなどアナログオーディオ沼にハマっています • 枚数が。。。オタクはかさばる。
会社紹介
©Akatsuki Inc. 2024年8月会社紹介資料より抜粋
©Akatsuki Inc. 2024年8月会社紹介資料より抜粋
恥ずかしながら ServiceNowの画面を そこまで使っていないんです (incidentのオペレーションでは)
基本的にSlackをインターフェースにしています
• だいたい以下のとき ◦ アサインするとき ◦ Resolveするとき ◦ VTBを使うとき ◦ リマインダーを仕掛ける
ServiceNowの画面で操作するのは Taskテーブルを拡張 (だいたい)設定した時間に Slackへ届くリマインドメッセージ
ServiceNowの画面で操作することが 前提のNow Assistだと操作性が厳しい Slackでアシストしてもらいたい!
やっと本題 IT Service Management (ITSM) の Now Assistを自分で実装してみた
まずはOOTBの機能を確認
Now Assistアプリケーションの機能 https://docs.servicenow.com/ja-JP/bundle/xanadu-it-service-management/page/product/now-assist-itsm/concept/supporting-information-now-assist-itsm.html
トライした機能 1. Now AssistのOOTBにある機能 a. インシデントの要約 b. 解決メモ生成 2. Now
AssistのOOTBにない機能 a. 生成AIにフリーで質問 b. 過去にクローズした類似Incidentの通知
今回登場するAWSのAI系サービス • Amazon Bedrock ◦ 近しいもので有名どころはChatGPT ◦ 文章を要約したり回答を生成したいところで使っています • Amazon
Kendra ◦ 検索機能を持つデータベース ▪ データベースに保存するときに「ベクトル化」してから保存している • 「意味」で検索ができる ◦ 過去対応したITへの問い合わせチケットを入れています ▪ 新たな問い合わせが来たときに「類似」を検索しています
今回ご紹介する内容で実現できたこと • Bedrockを使用することで実現 ◦ チケット作成時に「内容を要約」してチケットのタイトルにする ◦ チケット解決時に「根本原因」と「解決メモ」を自動で生成する • Kendraを使用することで実現 ◦
チケット発行時に「類似した問い合わせ」を通知する 要約、自動生成 類似の検索
チケット作成時に要約 • Slackのメッセージから起票している ◦ Slackのコミュニケーション的には正しいメッセージ ◦ しかしShort Descriptionとしては不適切 ◦ AIで要約することで両者が両立する運用が可能に!
解決メモを自動生成 • トリガーは独自に追加したUI Action • UI ActionからSub Flowを実行 • Sub
FlowでIncidentのデータを構造化 • 構造化したデータをWorkatoへPOST • WorkatoがBedrockを実行 • Bedrockが解決メモを生成 • 生成された解決メモを使って Workatoがincidentを更新
Bedrockへ送信しているデータの構造 <inc_ticket> <description> </description> <comments> <comment> </comment> ︙ </comments> </inc_ticket>
Instruction あなたは企業のIT部門に所属するアナリストです。チケットに 記載されている社員からの問い合わせと対応を読んで、「根本 原因」と「解決方法」をまとめてください。 チケットのフォーマットについて説明します。 <inc_ticket>タグ内がチケットのデータです。 <description>タグ内は、社員が最初に問い合わせたときの メッセージはの中に記載しています。 <comments>タグの中に複数の<comment>タグが存在しま す。<comments>タグは古いほうから順に時系列に並んでい ます。 <comment>タグ内は、IT部門と社員とがコミュニケーションし たときのメッセージです。 JSONサンプルです。このフォーマットに合わせて解答してくだ さい。 { "route_cause": "根本原因", "resolve_note": "解決方法" } 根本原因はroute_causeへ記載してください。 解決方法はresolve_noteへ記載してください。 記載はすべて日本語で書いてください。 解決メモを自動生成 ~ 詳細
生成AIにフリーで質問 • 1のデータ取得は解決メモと同じ内容 ◦ 処理は流用している • 回答内容を見て、案内して良さそうだったらユーザに案内する ◦ 回答が使えないものの可能性を考慮している ◦
世間的には正しくても、チームの運用に合わない場合も担当者でフィルタできる
過去にクローズした類似Incidentの通知 • Kendraを使用 ◦ 毎日データを取り込み • チケット作成時にクエリ ◦ 類似したincidentがあれば精度まで 出してくれるのでHigh以上を使用す
るなども可 ▪ 例 • Very High • High • Low
過去にクローズした類似Incidentの通知 ~ サンプル • テスト環境なのでデータが足りてない ◦ LOWしかでない ◦ 本番ではVery Highなども出てます
OOTBのカスタマイズではなく 新規で実装している理由 〜車輪の再発明なのでは?〜
OOTBをカスタマイズするということ OOTB OOTBをカスタマイズ アップデートでConflict working working does not working
OOTBをカスタマイズするということ 対応が大変なことになる
• やれなくはない ◦ ServiceNowだけで完結させようとすると厳しい ◦ iPaaSやPublic Cloudを組み合わせることで実現できた ▪ 「iPaaSとpublic cloudはいいぞ」に見えていたらごめんなさい
• ServiceNowと組み合わせると相乗効果が発生しやすい • OOTBをカスタマイズするのは避けたほうが良い ◦ OOTBにはOOTBの世界があるので中途半端にカスタマイズするのは危険 ▪ 今後のアップデートで困難が発生する可能性 ◦ カスタマイズするくらいなら新規で実装するほうが楽 ▪ UI ActionやBusiness Ruleで処理を挟み込むことで実現可能 ▪ 自分で実装ならば今後のアップデートでも困難は発生しないはず やってみてわかったこと