— PILLAR 03 · RAG 與向量資料庫

RAG 完整架構教學:Retrieval + Generation 全圖

從文件進來到 LLM 回應的完整 RAG 流程,含每個元件的選型與調校。

PUBLISHED
2026-05-29
READ TIME
14 min
WORD COUNT
3500 字
CATEGORY
PILLAR 03

RAG(Retrieval-Augmented Generation)由 5 個元件組成。這篇從文件進來到 LLM 回應,把整個架構完整拆解,每個元件的選型與調校都教給您。

RAG 完整流程

1. 文件 → [Loader] → 文字
2. 文字 → [Chunker] → 切片
3. 切片 → [Embedding] → 向量
4. 向量 → [Vector DB] → 儲存
─────────────────(離線索引完成)─────────────────
5. 用戶問題 → [Embedding] → 問題向量
6. 問題向量 → [Vector DB Search] → Top-K 相似切片
7. Top-K + 問題 → [Reranker] → 重排序
8. 排序後 + 問題 → [LLM] → 自然語言回答

元件 1:Document Loader

把不同格式檔案轉為文字。

  • PDF:PyMuPDF(純文字快)/ Unstructured(混合內容好)
  • Word:python-docx
  • Excel:openpyxl + 自製 schema 描述
  • 網頁:BeautifulSoup + Readability
  • 圖片:Gemini Vision OCR

元件 2:Chunker(切片)

切得太大召回差、太小失語境。三種策略:

  • Fixed Size:每塊固定 token 數,最簡單
  • Semantic:用 embedding 找語義邊界
  • Hierarchical:多層切(章 → 節 → 段)

實務建議:先用 Fixed 500 tokens + overlap 50 起步。

詳見 文件切割策略完整指南

元件 3:Embedding

把文字轉為向量。常用:

  • OpenAI text-embedding-3-large(1536/3072 維、中文好)
  • Gemini text-embedding-004(768 維、便宜)
  • Cohere embed-v3(多語強)
  • BGE-M3(開源、可自架)

詳見 Embedding 模型選擇指南

元件 4:Vector Database

選擇適合
pgvector已有 PostgreSQL、< 100 萬筆
Qdrant自架、效能好、最常見
PineconeSaaS、不想維運
Weaviate混合搜尋強

詳見 向量庫完整比較

元件 5:Retrieval + Reranking

取向量庫 Top-K(通常 10–20),然後用 Reranker 重新排序。

  • Reranker 模型:Cohere Rerank / BGE Reranker
  • 把最相關的 3–5 個切片送給 LLM

實測:加 Reranker 通常讓最終答案準確度提升 10–30%。

元件 6:LLM Generation

把切片 + 問題餵給 LLM。關鍵設計:

  1. Prompt 結構清楚(指令 + Context + 問題)
  2. 要求 LLM 引用來源(避免幻覺)
  3. 找不到答案時要 LLM 說「不知道」

建議架構(中小企業)

文件 (PDF/Word)
  ↓
PyMuPDF + Unstructured
  ↓
Recursive Character Splitter (500 tokens, 50 overlap)
  ↓
Gemini text-embedding-004
  ↓
Qdrant (Docker 自架)
  ↓
Top-10 → BGE Reranker → Top-3
  ↓
Gemini 2.5 Flash + Citation Prompt
  ↓
回答 + 來源連結

這套架構月成本 NT$2,000–5,000,可服務 10,000 次/月查詢。

進階:評估與監控

RAG 上線後,每月看 3 個指標:

  • Hit Rate:問題能找到相關切片的比例
  • Faithfulness:答案是否忠於切片內容
  • Relevance:答案是否真的回答了問題

詳見 RAG 評估指標完整指南

常見錯誤

  1. 沒做 chunk overlap → 切片邊界資訊丟失
  2. 沒做 metadata 過濾 → 跨部門資訊混雜
  3. 沒做 Reranker → 命中率低
  4. 沒寫 Citation Prompt → LLM 幻覺
  5. 沒做評估 → 不知道哪裡需要優化

RELATED ARTICLES

延伸閱讀。

— 最後一步

給我 30 分鐘,
告訴我你的業務。

我直接告訴你:你公司最該先用 AI 的 3 個地方、預算、補助。不收費、不推銷、不簽約。

L