RAG
3秒看懂
RAG(檢索增強生成)是一種讓大語言模型回答問題時先“查資料”再生成答覆的技術架構。它通過外部知識檢索 + 上下文注入,大幅緩解模型的“幻覺”和知識截止問題,是當前讓通用大型模型落地到企業私域知識、事實密集型場景的核心方案之一。
3分鐘產業解釋
傳統大語言模型在回答時只依賴其內部引數中儲存的“記憶”,存在知識過時、無法覆蓋私有資料、容易杜撰事實等弱點。RAG 的思路是:
- 建置外部知識庫——將企業文件、網頁、資料庫等經分塊、嵌入(向量化)後存入向量資料庫。
- 查詢時檢索——使用者提問被轉化為向量,從知識庫中召回最相關的若干文件片段。
- 增強生成——將檢索到的文本片段與原始問題一起拼裝進提示詞,交給大型模型生成最終答案。
這種模式讓大型模型由“閉卷考試”變為“開卷考試”,既能保留大型模型的推論與表達優勢,又能嚴格基於提供的內容作答,使答案溯源清晰、更新成本低(僅需更新知識庫,無需重新訓練模型)。 RAG 已廣泛應用於智慧客服、企業知識庫問答、法律/醫療輔助、程式碼助手中的私有文件查詢等場景,並被微軟、Google、Anthropic 等主流廠商整合進其產品生態。
15分鐘專家深入
RAG 並非單一的演算法,而是一個高度可配置的系統設計範式,其關鍵技術維度包括:
1. 索引管道
- 文件解析與分塊:解析 PDF、HTML、Markdown 等格式,並按段落、句子或滑動視窗切分成適當大小的片段。分塊大小直接影響檢索粒度和上下文完整度。
- 嵌入模型選擇:使用預訓練的文本嵌入模型(如 OpenAI text-embedding-3、BGE、E5 等)將文本片段對映為稠密向量。嵌入模型的質量決定了語義匹配的精度。
- 向量資料庫:負責儲存向量索引並支援高效的近似最近鄰(ANN)搜尋(如 HNSW、IVF-PQ 等演算法)。主流產品包括 Pinecone、Weaviate、Milvus、Qdrant、Chroma 等。
2. 檢索管道
- 查詢改寫/擴充套件:對原始使用者查詢進行拼寫糾錯、同義詞擴充套件、子問題分解(多步推論),甚至使用 LLM 生成假設答案來提取更好的檢索關鍵詞(HyDE 技術)。
- 檢索策略:可一次檢索(單輪),也可進行多跳檢索(基於前一步檢索結果調整後續查詢)。支援稀疏檢索(BM25)與稠密檢索結合,形成混合檢索,提升召回。
- 重排序(Reranking):用更重的交叉編碼器模型對初檢片段進行二次排序,篩選最相關的少數片段,平衡召回與精確。
3. 生成管道
- 上下文拼裝與引用:將檢索片段、使用者問題、系統提示模板組織成最終提示,要求模型基於給定內容作答並註明來源。
- 生成控制:可調整溫度、top-p 等引數以減少隨機性;可要求模型在無法作答時拒絕回答,以降低幻覺。
- 高階模式:支援並行檢索、樹狀檢索、自我反思迴圈(如生成後檢查答案是否與檢索片段一致,不一致則重新檢索/生成)。
4. 訓練耦合深度
- 黑盒 RAG:檢索器、嵌入模型、生成模型均為固定預訓練元件,僅通過提示工程串聯。部署快,無訓練成本。
- 微調檢索器:針對特定領域,用領域內問題-文件對微調嵌入模型或重排序器。
- 聯合訓練:檢索器與生成器一同端到端最佳化(如 REALM、Atlas),可更深入地學習“檢索什麼對生成有利”,但工程與算力成本高昂。
- 檢索器固定、生成器訓練:如 RETRO,檢索器為凍結的預訓練模型,基於預計算索引,訓練期間不更新檢索器引數,僅訓練生成器通過交叉注意力利用外部知識。該模式避免了同時訓練檢索器的巨大開銷,但需要維護較大規模的靜態索引。
5. 評估與監控
- 檢索評估:Recall@k、MRR 等,衡量檢索器能否找到正確答案所在片段。
- 生成評估:忠實度(答案是否完全基於檢索片段)、答案准確率(EM/F1)、幻覺檢測。
- 系統質量:端到端延遲、token 消耗、系統穩定性與可觀測性。
在實際部署中,架構師需重點權衡檢索延遲與召回質量、塊大小與上下文長度、模型選擇與成本,以及知識庫的即時更新機制(增量索引、流式處理)。RAG 已從單輪簡單檢索發展到具備 agentic 推論能力的複雜系統,成為 LLM 應用架構的事實標準之一。
技術原理(最深)
核心流程(以基礎黑盒 RAG 為例):
使用者提問
│
▼
查詢向量化 ───────► 向量資料庫 ANN 檢索
│ │
▼ ▼
查詢文本 [片段1, 片段2, …, 片段k]
│ │
└────── 拼接 ────────┘
│
▼
提示模板:{系統指令} 上下文:{片段} 問題:{使用者提問}
│
▼
大語言模型生成
│
▼
最終答案(含引用來源)
關鍵機制與引數(定性無精確資料,基於常見實踐估算)
- 嵌入維度:通常 768、1024、1536 等,與所選嵌入模型一致。維度越高表達能力越強,但計算和儲存開銷增大。
- 分塊大小:典型範圍在 128–1024 tokens 之間。過小會失去上下文連貫性,過大則稀釋檢索精度並可能超出模型的上下文視窗。常用分塊技巧還會加上與前一塊的重疊(overlap)以保證邊界處的語義完整。
- Top-k 檢索:初檢通常取 50–200 個候選,經重排序後保留 3–10 個片段送入生成器。數值需針對具體場景做 trade-off:片段越多,上下文越豐富,但可能引入噪聲且成本更高。
- 檢索演算法:近似最近鄰(ANN)的主流實現是 HNSW(層級可導航小世界圖),在數千萬向量級別可提供毫秒級延遲。
- 生成約束:提示中通常明確指令“僅基於提供的上下文回答,如果上下文中沒有答案,就說不知道”,以降低幻覺。
- 多步/多跳推論:某些複雜問題需要從檢索片段 A 中提取實體,再檢索關於該實體的新片段 B,這種迭代架構常見於 ReAct、IRCoT 等。
數學直覺(非嚴格公式,僅示意)
- 檢索分數(餘弦相似度等):
score(q, d) = cosine(E_q(q), E_d(d)),其中 E 為嵌入模型。 - 最終生成機率(條件生成):
P(y | x, D_r),其中D_r是檢索到的上下文集合,x 是使用者問題。 - 樸素 RAG 相當於在推論時提供了一條額外的檢索路徑,它沒有改變模型引數,而是改變了模型的條件分佈。
由於無法獲取精確的檢索結果支援,本部分不給出具體數值下的效能宣告,一切量化結論須通過實際場景測試驗證。
技術演進史
RAG 的發展軌跡可概括為檢索式問答 + 預訓練語言模型的深度結合逐步升級的過程:
-
2017~2019:開放域 QA 與稠密檢索萌芽 早期神經網路閱讀器依賴 TF-IDF 或 BM25 檢索,以 DrQA(2017)為代表。隨後,稠密段落檢索(DPR, 2020)通過雙塔模型將問題與文件對映到同一空間做內積匹配,顯著提升了開放域問答的檢索質量,為後續 RAG 奠定基礎。
-
2020:RAG 提出 Lewis 等人(Facebook AI)在論文《Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks》中正式提出 RAG。模型使用 DPR 作為檢索器,BART 或 T5 作為生成器,並展示了 RAG-Sequence(檢索多個文件後分別計算生成機率再融合)和 RAG-Token(在解碼每個 token 時動態選擇文件)兩種變體,在知識密集型任務上表現優異且引數無需儲存全部知識。
-
2020~2021:聯合訓練與即時檢索 REALM(Google, 2020)將檢索器與生成器在預訓練階段端到端聯合最佳化,模型學會檢索對語言建模最有用的知識。隨後,FiD(Fusion-in-Decoder, 2020)將多個檢索片段獨立編碼再到解碼器中融合,使 T5 能有效處理大量上下文。
-
2022~2023:大規模檢索增強模型 RETRO(DeepMind, 2021)在75億引數規模上,將外部 2 萬億 tokens 的知識庫以分塊形式與模型交叉注意力互動,實現了引數減半但效能匹敵更大型模型的效果。Atlas(Meta, 2022)進一步探索聯合訓練和少樣本學習。
-
2023 至今:工程化與企業落地爆發 隨著 ChatGPT 引爆大型模型應用,LangChain、LlamaIndex 等架構將 RAG 抽象為標準化管道,向量資料庫如 Pinecone、Weaviate、Milvus 成為基礎設施。業界湧現大量 RAG 增強的產品,如 Microsoft 365 Copilot、Perplexity AI。近兩年重心轉向Agentic RAG(多步檢索、工具呼叫)、多模態 RAG、圖+RAG 以及完全離線/邊緣部署 RAG。
技術路線對比(量化表)
下表比較不同 RAG 範式,指標採用定性級別(高/中/低)或常見範圍,精確數值因實現而異,未獲得檢索關鍵資料,故標註“估算”。
| 範式 | 檢索器訓練 | 生成器耦合 | 檢索粒度 | 生成靈活性 | 幻覺控制 | 部署成本 | 典型應用 |
|---|---|---|---|---|---|---|---|
| 黑盒 RAG(無微調) | 預訓練固定 | 松耦合 | 文件片段 | 高 | 中(依賴指令) | 低 | 企業知識庫客服、原型驗證 |
| 領域微調檢索器(嵌入+重排序) | 領域微調 | 松耦合 | 片段/句子 | 高 | 較高 | 中 | 醫療、法律等領域專用問答 |
| RAG-Sequence / RAG-Token | 預訓練 | 緊耦合(端到端微調) | 文件 | 中(受融合策略影響) | 較高 | 高(需聯合訓練) | 學術研究、知識密集型 NLG |
| RETRO | 預先建置靜態索引 | 緊耦合(交叉注意力) | 分塊(約數百位元組) | 高 | 較高 | 極高(大規模索引) | 大規模語言建模、程式碼生成 |
| REALM / Atlas | 聯合預訓練 | 極緊耦合 | 文件級 | 中 | 較高 | 極高 | 知識密集型預訓練 |
| Agentic RAG(多步/自反思) | 通常黑盒檢索器 | 松耦合 | 多輪檢索片段 | 極高 | 高 | 中高(多輪呼叫) | 複雜推論、開放式研究 |
說明:
- “幻覺控制”指答案與檢索內容的一致性保障程度,耦合越緊、約束越強通常越難偏離檢索內容,但也可能犧牲部分創造力。
- 部署成本估算受模型規模、索引規模、聯網依賴等影響,未獲取量化資料。
上下游
上游核心元件與供給方
- 資料來源與處理:企業文件、網頁、資料庫、知識圖譜。ETL 工具(如 Unstructured.io、Apify)負責解析清洗。
- 嵌入模型:OpenAI (text-embedding-3)、Cohere (Embed)、智源 (BGE)、Hugging Face (E5/Instructor) 等。選擇影響語義匹配和語言覆蓋。
- 向量資料庫:Pinecone(全託管、高可用)、Weaviate(具備向量+鍵值混合搜尋)、Milvus(開源,高效能ANN)、Qdrant(Rust實現,高效能)、Chroma(輕量,開發者友好)、Elasticsearch(結合 BM25)。
- 大語言模型:作為生成器,如 GPT-4o、Claude 3、Gemini、Llama 3、Qwen 等。通常通過 API 或本地部署呼叫。
中間層(編排與架構)
- LangChain / LlamaIndex:提供 RAG 管道抽象,簡化索引、檢索、提示管理。
- Haystack:基於 pipeline 的 NLP 架構,支援可插拔的檢索器和生成器。
- Semantic Kernel / DSPy:更程式設計化/宣告式的 LLM 架構。
下游應用
- 企業知識庫問答:內部文件助手,減少員工資訊搜尋時間。
- 客服機器人:基於產品手冊、知識庫即時檢索解答。
- 法律/醫療助理:檢索相關判例或文獻輔助生成建議。
- 程式碼助手:結合私有程式碼庫或文件回答開發者問題。
- 精準搜尋與總結:搜尋引擎的生成式結果(如 Bing Chat、Perplexity)。
產業生態特點:上下游高度解耦,創業者可專注某一層(如向量資料庫、嵌入模型、RAG 應用平台),技術整合門檻逐年下降。
關鍵指標
1. 檢索質量
- Recall@K:前K個檢索結果中包含正確答案的比例。K 通常取 5、10、20。
- Mean Reciprocal Rank (MRR):第一個正確答案的排名的倒數平均。
- NDCG:歸一化折損累計增益,考慮排序位置。 這些指標依賴標註資料集,在自建知識庫場景需自行建置測試集。
2. 生成質量
- 忠實度:答案是否與檢索上下文一致,可用自然語言推論模型或人工評測。
- 答案准確性:Exact Match (EM)、F1 分數,判斷答案是否包含正確答案的關鍵內容。
- 幻覺率:生成內容中無法追溯到檢索片段的部分佔比,常用人工評估或自動檢測工具(如 RAGAS)。
3. 系統性能
- 端到端延遲:從提問到獲取完整答案的時間,含檢索時間、LLM 推論時間。
- 吞吐量:單位時間可處理的查詢數。
- 成本:每次查詢的 token 消耗(嵌入 token + 提示上下文 token + 生成 token)及計算費用。
4. 運維指標
- 知識庫更新延遲:新文件從上傳到可被檢索的時間。
- 索引重建/增量更新效率。
- 系統可用性、災難恢復。
註明:具體基準資料因測試集和實現而異,公開權威對比資料需查閱 TREC、MTEB 等排行榜或廠商揭露的案例研究,本文未獲取精確檢索證據,不提供數字。
供需與市場資料
RAG 市場正處於爆發期,但準確統計市場規模、增長率等量化資料需要引用付費市場研究報告(如 Gartner、MarketsandMarkets 等),本次檢索未獲取有效資訊,因此只做定性判斷:
- 需求端:幾乎所有部署大型模型的企業都面臨知識私域化、更新延遲和幻覺問題,RAG 成為事實上的解決方案,企業級需求極為強勁。
- 供給端:向量資料庫、嵌入模型、RAG 架構賽道融資頻繁,巨頭(微軟、Google、AWS)均已推出相關託管服務,供給快速增加。
- 趨勢:RAG 正從“單次檢索”向“多步推論+工具呼叫”進化,推動算力消耗與市場擴大;同時小模型+邊緣 RAG 也帶來新增長點。
- 制約:高質量資料預處理成本、檢索延遲與準確性平衡、安全性(敏感文件權限控制)仍是落地瓶頸。
如需具體市場預測資料,建議查閱權威分析機構的最新報告。
代表公司與資本對映
基礎設施層
- 向量資料庫:Pinecone(估值約 7.5 億美元,2023 年 B 輪)、Weaviate(約 5000 萬美元融資)、Milvus 背後的 Zilliz(約 1.13 億美元)、Qdrant(融資 1000 萬美元左右)。
- 嵌入模型:OpenAI(嵌入 API)、Cohere(嵌入與重排序 API)、智源研究院(BGE 開源系列)、Jina AI。
平台與架構層
- LangChain(融資超千萬美元)和 LlamaIndex(開源專案,公司化運作)是開發者最常使用的編排工具。
- Haystack 由 deepset 支援,也在融資中。
應用層
- 微軟:通過 Azure AI Search + OpenAI 將 RAG 深度整合到 Copilot、Bing Chat 等產品。
- Google:Vertex AI Search 與對話機器人結合,Gemini 模型利用 Google 搜尋實現 RAG。
- Perplexity AI:以 RAG 驅動的對話式搜尋引擎,估值已超 10 億美元。
- Anthropic:Claude 支援通過工具檢索外部文件。
- 其他創業公司:如 Cognition(Devin 程式碼助手背後也有 RAG 影子)、Quivr、Cognosys 等。
資本對映:資金大量流入向量資料庫和 RAG 應用層,反映市場對“讓模型更可信”的迫切需求。一級市場標的分散,具體融資資料請以 PitchBook/Crunchbase 為準。
投資邏輯
-
RAG 是 LLM 落地的標配,其價值在於將不確定的幻覺問題轉化為可追溯的資訊檢索,是企業客戶買單的關鍵理由。因此,投資切入方向包括:
- 向量資料庫:作為新基礎設施,替代傳統關鍵詞搜尋資料庫,壁壘在於效能、規模、生態整合。
- 資料預處理與 ETL:非結構化資料的清洗、分塊、多模態處理是瓶頸環節,提供高效工具的公司有溢價空間。
- 垂直領域 RAG 方案:醫療、法律、金融等對安全性和準確性要求極高的領域,需要定製化的檢索和合規方案。
- 評估與安全層:檢測 RAG 輸出忠實度、防止資料洩露的創業公司逐步興起。
-
風險點:
- 開源架構(LangChain、LlamaIndex)降低了實現門檻,可能導致部分中間層價值被壓縮。
- 大型模型自身的上下文視窗不斷擴大(如 512k 甚至百萬 token),有可能在部分場景直接“內化”外部知識,削弱對檢索的依賴,但成本、延遲和長期記憶管理的複雜性仍為 RAG 留下空間。
- 巨頭(雲端廠商)提供一站式 RAG 服務,可能擠壓獨立向量資料庫或小廠商的生存空間。
-
價值錨點:關注能顯著提升檢索質量(召回率、延遲)、降低總擁有成本的差異化技術,以及具備網路效應(如開源社群積累的嵌入模型或評估資料集)的公司。
常見誤讀糾偏(≥2)
誤讀 1:RAG 就是簡單地給 LLM 拼上一段搜尋結果 糾偏:簡單的關鍵詞搜尋+拼接確實是 RAG 的一種樸素實現,但完整的 RAG 系統包含語義搜尋、重排序、動態分塊、查詢改寫、拒絕策略等一系列工程最佳化。真正的企業級 RAG 更像一個資訊檢索與生成有機結合的決策系統,而非機械拼接。
誤讀 2:使用 RAG 後 LLM 就完全不會產生幻覺 糾偏:RAG 可以顯著降低幻覺,但無法根除。模型可能忽略或曲解檢索內容,當檢索到的資訊不充分或自相矛盾時,模型仍可能自行“腦補”。因此,高要求場景還需配合人工稽核、自動化事實核查,甚至採用“逐句勾稽溯源”的後處理。
額外誤讀:認為 RAG 與微調(Fine-tuning)是對立選擇。實際上,兩者可以互補:微調教會模型領域術語和表達風格,RAG 提供事實性和即時知識,許多優秀實踐是將微調模型作為生成器嵌入 RAG 管道。
學習路徑
- 入門:閱讀 LangChain 或 LlamaIndex 的官方文件,跟隨 Quickstart 搭建一個簡單的 PDF 問答機器人。
- 核心論文:
- Lewis et al., “Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks” (2020)
- Karpukhin et al., “Dense Passage Retrieval for Open-Domain Question Answering” (2020)
- Guu et al., “REALM: Retrieval-Augmented Language Model Pre-Training” (2020)
- Borgeaud et al., “Improving language models by retrieving from trillions of tokens” (RETRO, 2021)
- 進階實踐:
- 學習向量資料庫的原理和選型(對比 Qdrant, Weaviate, Milvus)。
- 嘗試高階檢索技巧:HyDE、多跳檢索、上下文壓縮。
- 使用 RAGAS 或 TruLens 評估你的 RAG 系統。
- 深入架構:
- 閱讀 Haystack 的 Pipeline 設計、Semantic Kernel 的 Agent 整合。
- 研究 FiD、Atlas 的融合解碼機制。
- 社群與資訊:關注 r/LocalLLaMA、LangChain Discord、向量資料庫公司的技術部落格,以及多位 AI 研究者的推特。
一句話總結
RAG 通過“先檢索、後生成”讓大型模型擁有可更新、可追溯、可控的外部記憶,是彌合通用智慧與領域事實鴻溝的關鍵工程方案。
延伸閱讀與來源
本頁內容基於作者對 RAG 領域公開論文、開源架構文件、產業報道的積累撰寫,但受限於本次檢索未獲取外部連結,無法提供精確的檢索來源。 以下為建議閱讀的權威資源(可自行搜尋獲取):
- 論文:Lewis et al. (2020) “Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks”
- 論文:Karpukhin et al. (2020) “Dense Passage Retrieval for Open-Domain Question Answering”
- LangChain 官方文件:https://docs.langchain.com
- LlamaIndex 文件:https://docs.llamaindex.ai
- 向量資料庫對比:各大數據庫的官方基準測試
- 2024 年 RAG 全景圖:首推 a16z 等機構的分析文章
免責:文中任何涉及具體效能數字、市場規模、融資額的部分,若無明確標註來源,均為基於行業常識的趨勢性描述或範圍估算,請讀者查閱一手資料核實。