检索增强生成(RAG)从2023年的一个简单概念,已经演进为2026年企业AI应用的核心架构模式。但大多数团队仍然停留在"向量数据库+相似度搜索"的初级阶段,而前沿的技术演进已经走到了第三代:基于图结构的确定性知识系统。
最近Machine Learning Mastery发表的一系列深度技术文章,结合arXiv上的最新研究论文和Hugging Face的工程实践,完整描绘了RAG从简单到复杂的三代架构演进。核心论点:向量搜索是RAG的"青铜时代",Graph-RAG才是"白银时代",而真正的"黄金时代"属于有状态、可推理的自适应检索系统。
三代RAG架构对比
| 维度 | 第一代:Naive RAG | 第二代:Advanced RAG | 第三代:Graph-RAG |
|---|---|---|---|
| 知识表示 | 文本切片→向量嵌入 | 多粒度切片+元数据 | 实体-关系图+社区摘要+原始块 |
| 检索方式 | 余弦相似度TopK | 混合检索+重排序 | 图遍历+社区检索+向量辅助 |
| 回答质量 | 经常答非所问 | 大幅改善,但缺乏推理 | 支持多跳推理、关系查询 |
| 可解释性 | 低(哪个chunk被用了) | 中(重排序分数可查) | 高(知识路径可追溯) |
| 维护成本 | 低 | 中 | 高 |
| 适用规模 | 小型知识库(<1万文档) | 中型(1-100万文档) | 大型企业知识系统 |
| 典型延迟 | 200-500ms | 500ms-2s | 1-5s |
第一代:向量搜索的黄金幻觉
2023-2024年间,几乎所有RAG教程都在教同一个模式:
- 将文档切成固定大小的块(如512 token)
- 用嵌入模型(如text-embedding-ada-002)生成向量
- 存入向量数据库(Pinecone、Weaviate、Milvus等)
- 用户提问时,用同样的嵌入模型编码问题,做TopK相似度搜索
- 把检索到的块塞入LLM的prompt中生成回答
这个模式简单优雅,但存在三个根本性缺陷:
缺陷一:语义鸿沟。 用户的问题和文档中的答案之间往往存在语义距离。比如用户问"公司的退款政策是什么",但文档里写的是"客户在购买后30天内可以申请全额退还款项"——两者的向量相似度可能不如某个讨论"退款"的无关段落。
缺陷二:上下文碎片化。 固定大小的切片会切断语义连续性。一个完整的操作流程可能被切成3个块,检索时只取回了中间那个,导致回答缺少前因后果。
缺陷三:无法处理关系查询。 “张三的直属上级是谁?张三上级的上级负责哪些项目?"——这类需要沿着关系链条推理的查询,向量搜索天然无法处理。
第二代:混合检索与重排序
面对第一代的局限,2024-2025年间发展出了一系列增强技术,Machine Learning Mastery的多篇文章对此有系统性的梳理。
混合检索策略
不再依赖单一的向量检索,而是组合多种检索方式:
- 稀疏检索(BM25):基于关键词匹配,对精确术语查询效果好
- 密集检索(向量搜索):基于语义理解,对意图模糊的查询效果好
- 混合打分:用加权融合或RRF(Reciprocal Rank Fusion)将两者的结果合并
重排序层
这是第二代架构中最关键的改进。Machine Learning Mastery在《Top 5 Reranking Models to Improve RAG Results》中对比了五种主流重排序模型:
| 模型 | 类型 | 特点 | 适用场景 |
|---|---|---|---|
| Cohere Rerank 3.5 | API服务 | 多语言、即开即用 | 快速部署,不想自托管 |
| BGE Reranker v2.5 | 开源交叉编码器 | 性能强、可微调 | 需要定制化的企业场景 |
| ColBERT v2 | 延迟交互 | 向量预计算+交互打分 | 大规模低延迟需求 |
| Jina Reranker v2 | 开源 | 长文档支持好 | 文档较长的知识库 |
| BAAI/bge-reranker-v2-m3 | 开源多语言 | 支持100+语言 | 多语言场景 |
重排序的核心思想是:先用低成本的方式召回大量候选(如TopK=100),再用高精度的交叉编码器对候选进行精排(选出Top5-10)。 这种两阶段架构在信息检索领域已经被验证了几十年,但直到Sentence Transformers和Hugging Face将其工程化,才真正在RAG系统中普及。
长上下文RAG技术
随着LLM上下文窗口扩展到128K甚至更长,一个自然的问题出现了:还需要RAG吗?直接把所有文档塞进去不行吗?
Machine Learning Mastery在《5 Techniques for Efficient Long-Context RAG》中分析了五种策略:
- 上下文压缩:用摘要模型将检索到的文档压缩为关键信息
- 层次化检索:先检索文档级别摘要,再深入到段落级别
- 迭代检索:根据初始回答,生成后续查询进行补充检索
- 自适应上下文窗口:根据查询复杂度动态调整检索数量
- 缓存机制:利用KV Cache复用频繁访问的上下文
其中,推理缓存(Inference Caching) 是一个常被忽视但影响巨大的优化。Machine Learning Mastery在专文中详细介绍了Prompt Caching和KV Cache的实现——对于知识库相对稳定的RAG系统,系统prompt和常用文档块的KV Cache可以被复用,将推理延迟降低40-60%。
第三代:Graph-RAG的架构革命
Machine Learning Mastery的《Beyond Vector Search: Building a Deterministic 3-Tiered Graph-RAG System》是目前对Graph-RAG最清晰的工程化指南。其核心架构包含三层:
第一层:实体-关系图
从原始文档中抽取实体(人名、组织、概念、产品等)和它们之间的关系,构建知识图谱。这一步通常用LLM来完成:
- 输入:文档块
- 输出:(实体A, 关系类型, 实体B) 三元组
- 存储:图数据库(Neo4j、Nebula Graph等)
关键区别:向量RAG将文档视为独立的"信息岛”,Graph-RAG则将所有文档视为一个互联的知识网络。
第二层:社区摘要
对知识图谱进行社区检测(如Leiden算法),将密切相关的实体聚类为"社区",并为每个社区生成摘要。这些摘要代表了知识库中的高级主题和概念。
社区摘要的价值在于:它提供了一个中间抽象层,让检索可以先定位到相关的主题区域,再深入到具体的实体和关系。 这类似于人类在大型知识体系中的导航方式——先确定领域,再定位具体信息。
第三层:原始文本块
保留传统的切片和向量索引作为底层支撑。当图检索和社区检索提供了方向但缺乏细节时,可以回退到原始文本块获取精确信息。
检索流程
Graph-RAG的检索是一个多路径融合的过程:
- 查询分析:判断用户查询的类型——事实查询、关系查询、还是概览性查询
- 图遍历:对于关系查询,在知识图谱上执行图遍历(如"找到张三的所有2跳关系")
- 社区匹配:对于概览性查询,匹配相关的社区摘要
- 向量补充:对于事实查询,用传统向量检索补充细节
- 结果融合:将多路结果整合,送入LLM生成回答
确定性的力量
“确定性"是这篇文章标题中的关键词。与向量搜索的概率性检索不同,图遍历是确定性的——如果知识图谱中存在实体A到实体B的路径,图查询一定能找到它。这对企业应用至关重要:在法务、合规、医疗等场景中,“可能找到了相关信息"和"确定找到了所有相关信息"之间的差距就是诉讼和安全的差距。
学术前沿:有状态的自适应检索
arXiv上的最新论文将RAG推向了更前沿的方向。
《Stateful Evidence-Driven RAG with Iterative Reasoning》提出了一种有状态的RAG架构:系统不仅记住当前查询,还记住整个对话历史中积累的证据状态。每一轮检索都基于之前的发现来决定下一步应该检索什么。这本质上是将RAG从单次检索升级为迭代推理。
《Hierarchical RAG for Adversarial Technique Annotation》则展示了层次化RAG在网络安全领域的应用:用多层级的检索策略将攻击行为映射到MITRE ATT&CK框架。这证明了RAG架构的通用性——不仅仅是问答系统,而是任何需要将非结构化输入映射到结构化知识的任务。
实践建议:选择哪种RAG架构?
| 你的场景 | 推荐架构 | 理由 |
|---|---|---|
| 小型知识库,快速原型 | Naive RAG + 好的切片策略 | 简单、快速、够用 |
| 中型知识库,需要准确性 | 混合检索 + 重排序 | 投入产出比最高 |
| 大型企业知识库 | Graph-RAG | 支持关系查询和多跳推理 |
| 多轮对话系统 | 有状态RAG | 需要维护对话上下文 |
| 合规/法务场景 | Graph-RAG + 确定性检索 | 需要完整性保证 |
一个反直觉的建议:不要一开始就上Graph-RAG。 图谱构建和维护的成本远高于向量数据库。正确的路径是:先用第二代架构(混合检索+重排序)验证业务价值,当你明确遇到了"关系查询"和"多跳推理"的需求时,再迁移到Graph-RAG。
我的预判
Graph-RAG将在2027年前成为企业知识系统的标配——不是因为它更酷,而是因为企业知识本身就是图结构的(组织架构、产品关系、流程依赖)。
重排序模型将被嵌入到基础模型中——未来的LLM会内置检索和排序能力,独立的重排序模型将逐渐被整合。
多模态RAG是下一个前沿——Hugging Face已经在训练多模态嵌入和重排序模型。未来的RAG不仅检索文本,还检索图像、表格、代码。
RAG和Agent的融合不可避免——有状态RAG本质上就是一个简化的Agent。当RAG系统具备了自主决定"接下来该检索什么"的能力时,它就成为了一个信息检索Agent。
结语
RAG的进化反映了一个更深层的趋势:AI系统正在从"模式匹配"走向"知识推理”。 向量搜索是模式匹配的巅峰,Graph-RAG是知识推理的起点。对于构建企业AI应用的团队来说,理解这个演进方向比追逐任何单一技术都更重要。
参考来源:
- Machine Learning Mastery, “Beyond Vector Search: Building a Deterministic 3-Tiered Graph-RAG System”, April 2026
- Machine Learning Mastery, “5 Techniques for Efficient Long-Context RAG”, April 2026
- Machine Learning Mastery, “Top 5 Reranking Models to Improve RAG Results”, April 2026
- Machine Learning Mastery, “The Complete Guide to Inference Caching in LLMs”, April 2026
- arXiv, “Stateful Evidence-Driven Retrieval-Augmented Generation with Iterative Reasoning”, April 2026
- arXiv, “Hierarchical Retrieval Augmented Generation for Adversarial Technique Annotation”, April 2026
- Hugging Face Blog, “Training and Finetuning Multimodal Embedding & Reranker Models”, April 2026