Slide 1

Slide 1 text

Slackbot × RAG で実現する社内情報検索 の最適化 STORES 株式会社 中野 達也 1

Slide 2

Slide 2 text

自己紹介 STORES 株式会社 IT本部 シニアマネージャー 中野 達也@howdy39 SIerやフリーランスでソフトウェアエンジニア →(STORES)フロントエンドエンジニア →(STORES)情シス 2 2

Slide 3

Slide 3 text

どんな Slackbot をつくってるの? どのような仕組み? RAGのノウハウを紹介 目次 3

Slide 4

Slide 4 text

どんな Slackbot をつくってるの? 4

Slide 5

Slide 5 text

Slackで質問を投げかけると社内のドキュメントを読み込んで回答してくれるBOTを作成 5 5

Slide 6

Slide 6 text

BOTがあることで、ドキュメントを探すコストを下げられる 6 6 BOTがあることで、ドキュメントを探すコストを下げられる ヘルプデスク工数のコスト

Slide 7

Slide 7 text

どのような仕組み? 7

Slide 8

Slide 8 text

RAGで実現 8 8 ベクトル情報 を登録・更新 ・削除 Embedding (ベクトル 化) Webhookで 記事情報を送 信 質問する 実行 ベクトルで記 事を検索 Embedding (ベクトル 化) 記事内容を入 れて質問 回答結果を返 す 記事を 作成・更新・ 削除

Slide 9

Slide 9 text

RAGはフローが大きく2つにわかれるのでどこの話をしているかのイメージが大事 9 9 ベクトル情報 を登録・更新 ・削除 Embedding (ベクトル 化) Webhookで 記事情報を送 信 質問する 実行 ベクトルで記 事を検索 Embedding (ベクトル 化) 記事内容を入 れて質問 回答結果を返 す 記事を 作成・更新・ 削除 ベクトルDBへ格納 ベクトルDBから検索

Slide 10

Slide 10 text

「ベクトルDBへ格納」の詳細 10 10

Slide 11

Slide 11 text

「ベクトルDBから検索」の詳細 11 11

Slide 12

Slide 12 text

RAGのノウハウを紹介 12

Slide 13

Slide 13 text

ノウハウその1「初期データの反映」と「差分データの反映」の設計が大事 13 13 差分データの反映 初期データの反映 インポートするだけなので 簡単 難しい Webhookがあればいいが ない場合にどうするかの設 計が大事

Slide 14

Slide 14 text

ノウハウその2 マークダウンから無駄なデータを削ぎ落として登録 14 14 ここ!

Slide 15

Slide 15 text

ノウハウその2 マークダウンから無駄なデータを削ぎ落として登録 | コード例 15 15 imgタグを除去 brタグを削る 4つ以上の罫線の ”-”, “=”, “〜” を3つに減らす 太字 “**” を除去 2つ以上のスペースを1つ に減らす 複数の改行を1つに減らす

Slide 16

Slide 16 text

記事の内容にもよるが 適当な記事をピックアップしたところ 文字数が 39,219→20,025 に削減 ノウハウその2 マークダウンから無駄なデータを削ぎ落として登録 | 削減効果 16 16 500文字ずつチャンクしたとしたら 分割数が80→40まで削減できた

Slide 17

Slide 17 text

ノウハウその3 データを収集するのが大事 17 17 ここ

Slide 18

Slide 18 text

ノウハウその3 データを収集するのが大事 | 例 18 18 これ

Slide 19

Slide 19 text

ノウハウその3 データを収集するのが大事 | 可視化 19 19 フィードバック メッセージを返却 (ランダム) フィードバック結果 のログをスプレッド シートに残す 利用状況とフィード バックをLooker Studioで可視化

Slide 20

Slide 20 text

ノウハウその4 Rerankを必ず入れる 20 20 ここ

Slide 21

Slide 21 text

ノウハウその4 Rerankを必ず入れる | チャンクを多く取ってRerankで絞る 21 21 100チャンクを Rerankして上位10 チャンクを取得 ※ 類似度:高 topN=100 のチャンクを取得 ※ 類似度:低

Slide 22

Slide 22 text

Slackbot x RAG 環境を作り従業員の業務効率を向上させよう (ついでに情シスのヘルプデスク工数を削減する) RAGの全体像(登録フロー, 検索フロー)イメージしながら設計・ 実装・改善をしていくとよい まとめ 22 22

Slide 23

Slide 23 text

ご清聴ありがとうございました! 23