n8n x DifyでRAGチャットボット構築入門
n8nを活用し、Googleドライブ内のPDF資料を自動でベクトル化してPineconeに保存し、SlackからAIが回答するRAG(検索拡張生成)システムを構築します。
学習ポイント
- Googleドライブの更新をトリガーにファイルを自動ダウンロードし、ベクトルDB(Pinecone)へ保存する手順
- 文章を細かく分割する「チャンク化」とOpenAI APIを用いた「ベクトル化(Embedding)」の仕組みと設定方法
- Slackのメンションをトリガーにして、AIエージェントが自社資料から回答を生成・返信するワークフロー構築術
動画では、n8nを用いて「資料の自動読み込み」と「SlackでのAI回答」という2つの主要フローを構築する方法について解説しています。
1. Googleドライブ連携によるナレッジのベクトル化
Googleドライブ内の特定フォルダを監視し、新しいPDFファイルがアップロードされると、n8nが自動でファイルをダウンロードします。その後、テキストを適切なサイズ(200〜400文字程度)に分割する「Recursive Character Text Splitter」を通し、OpenAIのEmbeddingモジュールを使用してベクトル化します。これらのデータは最終的にベクトルデータベースであるPineconeに保存され、AIが検索可能な状態(RAG)として管理されます。
2. SlackボットとAIエージェントの構築
Slackでボットにメンションが送られた際、AIエージェントがPinecone内のデータから関連情報を抽出します。設定では「Define Below」を使用してユーザーメッセージを指定することが重要です。AIは抽出された資料に基づき、OpenAIのGPTモデルを介して回答を生成し、再びSlackのチャンネルへメッセージを自動投稿します。
3. n8n構築における注意点とTips
n8nはDifyなどのツールと異なり、各ノードの実行結果(アウトプット)を次のノードにドラッグ&ドロップで渡す仕組みです。一気に全体を動かすのではなく、一つのノードごとにテスト実行(Execute Step)を行い、正しく情報が取得できているかを確認しながら進めることがエラー回避の鍵となります。
**紹介されるツール・サービス:**
n8n (iPaaS)
Google Drive (ファイルストレージ)
Pinecone (ベクトルデータベース)
OpenAI API (LLM / Embedding)
Slack (UI・通知ツール)