Dify x n8n連携!RAGチャットボット構築入門
学習ポイント
- n8nにおける各ノードの接続方法と情報の受け渡し(インプット・アウトプット)の基本法則
- Pinecone(ベクトルデータベース)とOpenAIを連携させたRAGシステムの構築手順
- Slackをトリガーとして、AIが資料を元に自動回答するワークフローの実装方法
動画では、n8nを使って社内ドキュメントを学習させたAIボットをSlackで稼働させる手順を、実演を交えて解説しています。
1. ナレッジの蓄積フロー(RAGの構築)
Googleドライブ内の特定のフォルダを監視し、新しいPDFファイルが作成された際に自動で処理を開始するフローです。
**Google Drive Trigger**: フォルダを毎分監視し、新規ファイルを検知。
**File Download**: 検知したファイルをバイナリデータとして取得。
**Recursive Character Text Splitter**: 長い文章を適切なサイズ(チャンク)に分割します。
**Pinecone Vector Store**: OpenAIのEmbedding APIを使用してテキストをベクトル化し、Pineconeデータベースへ保存します。
2. Slack応答フローの実装
ユーザーがSlackでボットにメンションを飛ばした際に、蓄積されたナレッジから回答を生成するフローです。
**Slack Trigger**: メンションをトリガーにメッセージ内容を取得。
**AI Agent Node**: OpenAIのモデル(GPT-4o等)を使用。このノードには「Tool」としてPineconeを接続します。
**Vector Store Tool**: 質問に関連する文章をPineconeから検索(Retrieve)し、AIにコンテキストとして渡します。
**Slack Send Message**: 生成された回答をSlackの指定したチャンネルへ返信します。
3. n8nでの開発のポイント
n8nはDifyなどの他ツールと異なり、ノードを一つずつ実行(Execute Step)して前段の情報を確定させながら構築を進める必要があります。また、保存は自動ではないため、こまめな「Save」が推奨されます。
**紹介されたツール・サービス:**
**n8n**: ワークフロー自動化プラットフォーム
**Pinecone**: ベクトルデータベース(RAGの記憶部分)
**OpenAI API**: テキストのベクトル化およびLLMによる回答生成
**Slack**: ユーザーインターフェースとしてのチャットツール
**Google Drive**: ソースドキュメントの保管場所