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
Slackbot × RAG で実現する社内情報検索の最適化
Search
howdy39
October 02, 2024
Technology
2
570
Slackbot × RAG で実現する社内情報検索の最適化
howdy39
October 02, 2024
Tweet
Share
More Decks by howdy39
See All by howdy39
AI新時代 情シスが向き合うべきAI活用戦略
howdy39
0
180
GAS x スプレッドシート x Looker Studio を組み合わせたデバイス管理 / DeviceMangent with GAS, SpreadSheet, Looker Studio
howdy39
3
1.6k
ChatGPTを使った 社内アシスタントBOTを作りました / ChatGPT Assistant Bot
howdy39
0
680
WebPagetestで始めるパフォーマンス計測 / Performance measurement starting with WebPagetest
howdy39
4
680
Storybookを用いたVue.js共通コンポーネント開発との戦い / stores-fights-storybook
howdy39
5
8.7k
gas-webpagetestで パフォーマンス計測を始めよう / get-started-measuring-performance-with-gas-webpagetest
howdy39
0
2.5k
Promise
howdy39
1
390
カラーユニバーサルデザイン / color universal design
howdy39
0
940
Geolocation API
howdy39
0
110
Other Decks in Technology
See All in Technology
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
190
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
280
dbt開発 with Claude Codeのためのガードレール設計
10xinc
2
1.3k
スマートファクトリーの第一歩 〜AWSマネージドサービスで 実現する予知保全と生成AI活用まで
ganota
2
310
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
5
1.7k
Agile PBL at New Grads Trainings
kawaguti
PRO
1
450
react-callを使ってダイヤログをいろんなとこで再利用しよう!
shinaps
2
260
IoT x エッジAI - リアルタイ ムAI活用のPoCを今すぐ始め る方法 -
niizawat
0
110
いま注目のAIエージェントを作ってみよう
supermarimobros
0
350
普通のチームがスクラムを会得するたった一つの冴えたやり方 / the best way to scrum
okamototakuyasr2
0
110
データ分析エージェント Socrates の育て方
na0
6
1.8k
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
1.1k
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Scaling GitHub
holman
463
140k
For a Future-Friendly Web
brad_frost
180
9.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Rails Girls Zürich Keynote
gr2m
95
14k
Done Done
chrislema
185
16k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
The Language of Interfaces
destraynor
161
25k
Transcript
Slackbot × RAG で実現する社内情報検索 の最適化 STORES 株式会社 中野 達也 1
自己紹介 STORES 株式会社 IT本部 シニアマネージャー 中野 達也@howdy39 SIerやフリーランスでソフトウェアエンジニア →(STORES)フロントエンドエンジニア →(STORES)情シス
2 2
どんな Slackbot をつくってるの? どのような仕組み? RAGのノウハウを紹介 目次 3
どんな Slackbot をつくってるの? 4
Slackで質問を投げかけると社内のドキュメントを読み込んで回答してくれるBOTを作成 5 5
BOTがあることで、ドキュメントを探すコストを下げられる 6 6 BOTがあることで、ドキュメントを探すコストを下げられる ヘルプデスク工数のコスト
どのような仕組み? 7
RAGで実現 8 8 ベクトル情報 を登録・更新 ・削除 Embedding (ベクトル 化) Webhookで
記事情報を送 信 質問する 実行 ベクトルで記 事を検索 Embedding (ベクトル 化) 記事内容を入 れて質問 回答結果を返 す 記事を 作成・更新・ 削除
RAGはフローが大きく2つにわかれるのでどこの話をしているかのイメージが大事 9 9 ベクトル情報 を登録・更新 ・削除 Embedding (ベクトル 化) Webhookで
記事情報を送 信 質問する 実行 ベクトルで記 事を検索 Embedding (ベクトル 化) 記事内容を入 れて質問 回答結果を返 す 記事を 作成・更新・ 削除 ベクトルDBへ格納 ベクトルDBから検索
「ベクトルDBへ格納」の詳細 10 10
「ベクトルDBから検索」の詳細 11 11
RAGのノウハウを紹介 12
ノウハウその1「初期データの反映」と「差分データの反映」の設計が大事 13 13 差分データの反映 初期データの反映 インポートするだけなので 簡単 難しい Webhookがあればいいが ない場合にどうするかの設
計が大事
ノウハウその2 マークダウンから無駄なデータを削ぎ落として登録 14 14 ここ!
ノウハウその2 マークダウンから無駄なデータを削ぎ落として登録 | コード例 15 15 imgタグを除去 brタグを削る 4つ以上の罫線の ”-”,
“=”, “〜” を3つに減らす 太字 “**” を除去 2つ以上のスペースを1つ に減らす 複数の改行を1つに減らす
記事の内容にもよるが 適当な記事をピックアップしたところ 文字数が 39,219→20,025 に削減 ノウハウその2 マークダウンから無駄なデータを削ぎ落として登録 | 削減効果 16
16 500文字ずつチャンクしたとしたら 分割数が80→40まで削減できた
ノウハウその3 データを収集するのが大事 17 17 ここ
ノウハウその3 データを収集するのが大事 | 例 18 18 これ
ノウハウその3 データを収集するのが大事 | 可視化 19 19 フィードバック メッセージを返却 (ランダム) フィードバック結果
のログをスプレッド シートに残す 利用状況とフィード バックをLooker Studioで可視化
ノウハウその4 Rerankを必ず入れる 20 20 ここ
ノウハウその4 Rerankを必ず入れる | チャンクを多く取ってRerankで絞る 21 21 100チャンクを Rerankして上位10 チャンクを取得 ※
類似度:高 topN=100 のチャンクを取得 ※ 類似度:低
Slackbot x RAG 環境を作り従業員の業務効率を向上させよう (ついでに情シスのヘルプデスク工数を削減する) RAGの全体像(登録フロー, 検索フロー)イメージしながら設計・ 実装・改善をしていくとよい まとめ 22
22
ご清聴ありがとうございました! 23