22.5 RAG 技术栈
概念
RAG(Retrieval-Augmented Generation,检索增强生成)解决的是大模型最根本的限制:知识截止日期。模型在训练结束后,世界还在变化,新知识持续产生。RAG 的思路很直觉:让模型回答前先去”翻书”。
可以用一个比喻来理解:大模型是一个记忆力超群但被关在房间里的人,他只能凭训练时记住的内容回答问题。RAG 就是在这个房间里装了一扇通向图书馆的门 — 每次有人提问,他先去图书馆找到相关书籍,读完再回答。他仍然用自己的语言组织答案,但信息来源不再是过时的记忆,而是实时检索到的文档。1
教学:核心流程与五大转变
标准 RAG 流水线:
文档加载 -> 文本分块 -> 嵌入向量化 -> 存入向量库 -> 检索 -> 重排序 -> 生成
每一步都有不同的技术选型和权衡。文档加载关心怎么把 PDF、网页、数据库等异构数据源统一解析;文本分块是”切多大块”的学问 — 太大则检索不准,太小则丢失上下文;嵌入向量化把文本转成数学向量以便机器比较语义相似度;向量库存储和索引这些向量供快速搜索;检索时从向量库中找出最相关的片段;重排序用一个更精准的小模型对初筛结果做二次排序;最后把精选的片段和用户问题一起喂给模型生成答案。2
2026 年 RAG 五大转变
- 混合检索成标配。 稠密向量 + BM25 关键词(BM25 是一种基于词频的传统检索算法—不靠 AI 向量,直接匹配关键词,详见第13章),检索失败率降低 67%
- Graph RAG 崛起。 知识图谱增强复杂推理。微软的 GraphRAG 在全局摘要类任务上准确率从 16.7% 跃升至 56.2%,实现了 3.4 倍的提升。图不替代向量,而是互补 — 向量管广度,图管深度。3
- Agentic RAG。 Agent 自主决定检索策略、迭代查询。不是”检索一次然后生成”,而是 Agent 检查检索结果质量、决定是否需要换个角度再查、是否要拆分子问题分别检索。代价是 Token 消耗增加 3 到 10 倍,2026 年的实践是按查询复杂度分级路由:简单查询走经典 RAG,复杂多跳查询才启动 Agentic 流程。
- pgvector 流行。 PostgreSQL 原生向量支持(pgvector 是 PostgreSQL 数据库的向量扩展—让你在已有的数据库里直接存向量、搜向量,不需要额外部署向量数据库),减少额外组件
- Late Chunking。 先编码整篇再分块,而非先分块再编码(传统做法先切块再向量化会丢失跨块上下文;Late Chunking 先对整篇文档编码,保留全局语义后再切块。需要嵌入模型支持,Jina Embeddings v3 是目前的主要选择)
组件选型
| 组件 | 主流选择 | 2026 新兴 |
|---|---|---|
| 文本加载 | LlamaIndex, LangChain | Firecrawl(一个专门把网页内容转成干净文本的工具) |
| 分块 | RecursiveCharacter(LangChain 提供的递归分块器—按段落/句子边界智能断开) | Late Chunking, Agentic Chunking |
| Embedding | text-embedding-3(OpenAI), bge-large-v3(BAAI) | Jina v3(Jina AI), Cohere v3(Cohere) |
| (以上四者都是嵌入模型—把文本转成向量的 AI 模型,详见第13章) | ||
| 向量库 | Milvus, Pinecone, Qdrant(详见第13章) | pgvector, LanceDB(LanceDB 是专为 AI 数据设计的新一代向量库) |
| 检索 | 稠密 + BM25 混合 | Cross-Encoder 重排(用一个小模型对初步检索结果做精细排序,提升准确率) |
| 评估 | RAGAS, TruLens(RAG 系统的评估框架—自动打分评估检索和生成质量) | LangSmith(LangChain 出品的全链路调试和评估平台) |
注意事项
不要跳过重排序。 初步检索返回的 top-k 结果只是”大致相关”,重排序用一个更精准的交叉编码器模型对候选片段做精细匹配,单独这一步就能带来 33% 到 40% 的检索准确率提升,而延迟只增加约 120 毫秒。花小钱办大事。
数据质量是 RAG 的天花板。 再好的检索策略也救不了一个被错误解析的 PDF 或一堆重复文档。投入 RAG 时,先把 80% 的精力花在数据清洗上:统一文档格式、去除重复、确保分块合理。高级技术是增量,数据质量是地基。7
RAG 和微调不是二选一。 这是本章反复强调的观点:RAG 让模型获取外部知识,微调让模型学会更好地利用外部知识。2026 年的趋势是融合而非对立 — RAFT(检索增强微调)在训练阶段就嵌入检索,让模型天然懂得查阅文档。
关联
- RAG 体系深入:见 第13章:RAG 检索增强
- 向量数据库选型:见 第13章相关小节
- 微调如何与 RAG 互补:见 22.4 微调技术
- Agent 如何驱动 RAG 流程:见 22.3 Agent 框架
- 嵌入模型在 Ch13 和 Ch22.6 多模态中的角色:文本嵌入 vs 多模态嵌入
← 上一节:22.4 微调技术:SFT -> LoRA -> DPO 管线 | 下一节:22.6 多模态模型一览 →
注释
-
Firecrawl, “RAG Guide”, https://firecrawl.dev ↩
-
FutureAGI, “RAG Architecture 2026”, https://futureagi.com/blog/rag-architecture-llm-2025/ ↩
-
Atlan, “12 Advanced RAG Techniques Beyond Naive Retrieval 2026”, https://atlan.com/know/advanced-rag-techniques/ ↩
-
Medium Data Science Collective, “RAG Stack 2026” ↩
-
LinkedIn, “2026 RAG Stack Evolution” ↩
-
StackAI, “RAG Best Practices”, https://stackai.com ↩
-
Atolio, “Enterprise RAG in 2026: Challenges, Architecture, and Best Practices”, https://www.atolio.com/blog/enterprise-rag-guide ↩