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
1.1k
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
Falconを活かした インシデントレスポンスとの向き合い方
akatsukipr3932
0
13
How Slack Platform Slackを使って日常業務をスマートに
akatsukipr3932
1
100
AIとAWSでビジネスプロセス変革に挑む
akatsukipr3932
1
84
Formula、Lookup table、Environment Propertiesを活用したワークフロー構築
akatsukipr3932
1
36
ワークスペース間で チャンネルを移動する
akatsukipr3932
1
770
Other Decks in Technology
See All in Technology
関数型プログラミングで 「脳がバグる」を乗り越える
manabeai
2
230
サイバーエージェントグループのSRE10年の歩みとAI時代の生存戦略
shotatsuge
4
860
ClaudeCodeにキレない技術
gtnao
1
710
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
10
130k
オフィスビルを監視しよう:フィジカル×デジタルにまたがるSLI/SLO設計と運用の難しさ / Monitoring Office Buildings: The Challenge of Physical-Digital SLI/SLO Design & Operation
bitkey
1
360
DatabricksにOLTPデータベース『Lakebase』がやってきた!
inoutk
0
150
SRE不在の開発チームが障害対応と 向き合った100日間 / 100 days dealing with issues without SREs
shin1988
2
1.6k
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
7.8k
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
790
話題の MCP と巡る OCI RAG ソリューションの旅 - Select AI with RAG と Generative AI Agents ディープダイブ
oracle4engineer
PRO
5
110
AIの全社活用を推進するための安全なレールを敷いた話
shoheimitani
2
640
安定した基盤システムのためのライブラリ選定
kakehashi
PRO
3
100
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
RailsConf 2023
tenderlove
30
1.1k
Rails Girls Zürich Keynote
gr2m
95
14k
Thoughts on Productivity
jonyablonski
69
4.7k
KATA
mclloyd
30
14k
How to Think Like a Performance Engineer
csswizardry
25
1.7k
What's in a price? How to price your products and services
michaelherold
246
12k
How GitHub (no longer) Works
holman
314
140k
YesSQL, Process and Tooling at Scale
rocio
173
14k
The Pragmatic Product Professional
lauravandoore
35
6.7k
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で処理を挟み込むことで実現可能 ▪ 自分で実装ならば今後のアップデートでも困難は発生しないはず やってみてわかったこと