n8n RAG Chatbot 建置教學:用向量資料庫打造智慧客服
想做一個能回答自家產品問題的 AI 客服?這篇教你用 n8n + 向量資料庫(Pinecone/Qdrant)建置 RAG Chatbot,讓 AI 讀懂你的資料再回答。
你有沒有試過用 ChatGPT 回答客戶問題,結果它瞎掰一通?那是因為它根本不知道你公司的產品、價格、退貨政策。RAG 就是解決這個問題的方法。
RAG 白話版:就是讓 AI 先去翻你的資料庫,找到相關內容再回答,而不是亂掰。
這篇帶你用 n8n 建一個 RAG Chatbot,從準備資料、建向量資料庫、到讓 AI 根據你的資料回答問題,全部用 n8n 工作流搞定。
什麼是 RAG?為什麼普通 ChatGPT 不夠用?
先搞清楚問題在哪:
- 普通 ChatGPT:只知道它訓練過的公開資料,不知道你公司的東西
- Fine-tuning(微調):把你的資料餵給模型重新訓練。貴、慢、而且資料更新很麻煩
- RAG:不動模型本身,而是在 AI 回答之前,先幫它「查資料」
RAG 的全名是 Retrieval-Augmented Generation(檢索增強生成),但你不用記這個。記住一件事就好:
RAG = AI 回答問題之前,先去你的資料庫找答案
流程是這樣的:
使用者問問題
↓
把問題轉成向量(Embedding)
↓
去向量資料庫找最相關的內容
↓
把找到的內容 + 問題一起丟給 AI
↓
AI 根據你的資料回答(不瞎掰)
架構概覽
整個 RAG 系統分兩條工作流:
工作流 A:建立知識庫(跑一次)
資料來源(PDF / 網頁 / Google Docs)
↓
文件切割(Chunking)
↓
轉成向量(Embedding)
↓
存入向量資料庫
工作流 B:問答查詢(持續使用)
使用者提問
↓
問題轉成向量
↓
從向量資料庫找最相關的段落
↓
段落 + 問題 → 丟給 LLM
↓
回覆使用者
向量資料庫怎麼選?
n8n 原生支援多種向量資料庫,包括 Pinecone、Qdrant、Supabase、Weaviate、Milvus、PGVector 等(來源:n8n 官方文件)。
這裡推薦兩個:
| 比較項目 | Pinecone | Qdrant |
|---|---|---|
| 架設方式 | 雲端(免費方案有) | 可自架或用雲端 |
| 免費額度 | 1 個 Index,2GB 儲存 | 自架免費,雲端有免費方案 |
| 設定難度 | 超簡單 | 自架要裝 Docker |
| 適合誰 | 想快速測試的人 | 在意資料隱私、想省錢的人 |
| 2026 新功能 | 內建 Embedding 生成、BYOC 支援 | 內建 Embedding 生成 |
建議:先用 Pinecone 跑起來,之後需要省錢或控制資料再換 Qdrant。
Step 1 — 準備知識庫資料
你的 RAG 只會跟資料一樣聰明。垃圾進、垃圾出。
支援的資料格式:
- PDF 文件(產品手冊、FAQ 文件)
- 網頁內容(公司官網、幫助中心)
- Google Docs
- Notion 頁面
- 純文字 / Markdown
建議:先從一份最常被客戶問到的 FAQ 文件開始。不用一次把所有資料都丟進去。
Step 2 — 設定 Pinecone 向量資料庫
2.1 註冊 Pinecone
- 到 Pinecone 官網 註冊
- 免費方案就夠用了
- 建立一個 Index:
- Dimensions 設
1536(配合 OpenAI text-embedding-3-small) - Metric 選
cosine
- Dimensions 設
2.2 在 n8n 設定 Pinecone 憑證
- n8n → Credentials → Add Credential
- 搜尋
Pinecone - 填入 API Key(從 Pinecone 後台複製)
- 填入 Environment(例如
us-east-1)
Step 3 — 建立 Embedding 工作流(知識庫寫入)
這條工作流負責把你的文件「吃進」向量資料庫。
3.1 整體架構
Manual Trigger(手動執行)
↓
讀取資料來源(Google Drive / HTTP Request)
↓
Text Splitter(切割文件)
↓
Embeddings OpenAI(轉成向量)
↓
Pinecone Vector Store(存入)
3.2 文件切割(Chunking)
為什麼要切割?因為 AI 模型有 token 限制,而且太長的文本 Embedding 效果不好。
n8n 有內建的 Recursive Character Text Splitter 節點:
- Chunk Size:建議
500-1000字元 - Chunk Overlap:建議
100-200字元(讓前後段落有重疊,避免切斷語意)
3.3 Embedding 設定
用 Embeddings OpenAI 節點:
- Model 選
text-embedding-3-small(便宜又夠用) - 這個節點會自動把文字轉成 1536 維的向量
3.4 存入 Pinecone
用 Pinecone Vector Store 節點:
- Operation 選 Insert Documents
- 選好你的 Index
- Metadata 欄位可以加上來源、日期等資訊(後面查詢時可以過濾用)
跑一次這個工作流,你的知識庫就建好了。
Step 4 — 建立查詢工作流(AI 問答)
這條工作流是使用者實際互動的部分。
4.1 使用 AI Agent 節點
n8n 的 AI Agent 節點可以直接把 Pinecone 當工具使用,不用自己串查詢邏輯(來源:n8n Advanced AI 文件)。
Chat Trigger / Webhook
↓
AI Agent
├── Chat Model: OpenAI GPT-4o
├── Tool: Pinecone Vector Store(Retrieve 模式)
└── System Prompt: 你是一位客服助理...
4.2 System Prompt 範例
你是 [公司名] 的客服助理。
請根據提供的參考資料回答客戶問題。
規則:
1. 只根據參考資料回答,不要自己編造
2. 如果資料中沒有答案,回覆「這個問題我需要轉給真人客服」
3. 用繁體中文回答
4. 語氣親切、簡潔
這個 System Prompt 很重要——它告訴 AI「不知道就說不知道」,避免瞎掰。
4.3 測試
用 n8n 內建的 Chat UI 測試:
- 問一個你資料裡有答案的問題 → 應該能正確回答
- 問一個你資料裡沒有的問題 → 應該回覆「需要轉給真人」
Step 5 — 串接前端
Chatbot 做好了,接下來要讓使用者能用。幾種串接方式:
Webhook(最萬用)
用 Webhook 節點當入口,任何前端都能串:
- 自家官網嵌入聊天視窗
- 第三方客服平台
LINE Bot(台灣必備)
台灣用戶最多的通訊軟體就是 LINE。把 RAG Chatbot 串上 LINE Bot,客戶在 LINE 上問問題,AI 自動回覆。
詳細做法看這篇:n8n + LINE Bot 完整串接教學。
n8n Chat Embed
n8n 有內建的聊天介面,可以直接嵌入網頁。最快的方式。
效果優化技巧
RAG 建好了但回答不夠準?試試這些:
1. 調整 Chunk 大小
- Chunk 太大:找到的內容太雜,AI 抓不到重點
- Chunk 太小:缺少上下文,AI 看不懂
- 實測建議:FAQ 類文件用 300-500 字元,長文件用 800-1000 字元
2. 優化 Metadata
存入向量資料庫時加上 Metadata(例如:分類、日期、來源頁面),查詢時可以用 Metadata 過濾,提高準確度。
3. Prompt 工程
System Prompt 加上「引用來源」的要求:
回答時請附上參考資料的來源段落。如果多個來源有衝突,以最新日期的為準。
4. Hybrid Search
結合向量搜尋(語意)+ 關鍵字搜尋(精確),效果更好。Pinecone 和 Qdrant 都支援。
5. 定期更新知識庫
用 Schedule Trigger 定期重跑 Embedding 工作流,確保資料是最新的。
模板下載
這篇教學的完整工作流模板:
- 知識庫建立工作流(Pinecone 版)
- RAG 問答工作流(含 System Prompt)
直接上模板 >> n8nstart.cc/templates
下一步
RAG Chatbot 是你的第一個智慧 AI 應用,接下來可以繼續深入:
- 想了解更多 AI Agent 架構?看 n8n AI Agent 工作流設計模式
- 想把 Chatbot 串到 LINE?看 n8n + LINE Bot 串接教學
- 想用多個 AI 模型省錢?看 n8n 多模型切換教學
- 回到完整學習路徑:n8n + AI Agent 實戰指南
本週限量包有完整的 RAG Chatbot 工作流模板,含 Pinecone 和 Qdrant 兩個版本 >> n8nstart.cc/weekly
常見問題 FAQ
RAG 和 Fine-tuning 哪個好?
看需求。RAG 適合「讓 AI 查你的資料」,Fine-tuning 適合「改變 AI 的行為和風格」。大部分客服場景用 RAG 就夠了。RAG 的優點是資料更新快、成本低、不用重新訓練模型。
向量資料庫要花多少錢?
Pinecone 免費方案有 2GB 儲存空間,一般中小企業的 FAQ 和產品文件完全夠用。Qdrant 自架的話免費,只有 VPS 費用。
Chunk 大小怎麼決定?
沒有標準答案,要看你的資料類型。FAQ 類(一問一答)用小 Chunk(300-500 字元),長文件用大 Chunk(800-1000 字元)。建議先試中間值,再根據回答品質調整。
資料更新了怎麼辦?
重跑 Embedding 工作流就好。建議用 Schedule Trigger 設定自動更新(例如每天凌晨跑一次)。Pinecone 支援 upsert,相同 ID 的文件會自動覆蓋。