🧠
AIチャットボット開発の気づき(1)
RAG のデータソースとして Slack を利用する
LLM と RAG を利用した Slackボット OssansNavi の開発・運用で得たノウハウを共有するシリーズ記事です
初回は 2024年3月頃の開発内容で、その後の OssansNavi のコアとなるコンセプト部分の話です。
次の記事: (2) 人を繋ぐ AI
一般に LLM で RAG を利用する場合はデータソースとなるベクトルDBが必要です。
しかしベクトルDBの運用にはコストが伴うため、例えば Slack に日々投稿されるメッセージ全てをベクトルDBに保持して RAG のデータソースとして利用するのは多大なるコストと労力が必要です。
そこで OssansNavi はベクトルDBを利用せずに RAG を実現する手法を採用しました。
詳しくは技術勉強会で発表した資料「RAGにベクトルDBは必要ない!DBも不要で運用めちゃ楽な RAG Chatbot を作った話」を参照ください
ユーザーの質問から LLM に様々なパターンの検索キーワードを考えてもらい、それらで Slackグループ内を検索します。
この方法ならば、キーワード検索可能なあらゆるデータソースを RAG で利用可能です。
2024年3月当時からは未来の話ですが、2024年末に Anthropic が MCP(Model Context Protocol)を公開しました。
OssansNavi が LLM を通して Slackグループ内のリソースを利用する手法はある種で MCP 的な発想と通じるところがあります。
Discussion