引言
检索增强生成(RAG)是2026年最实用的大模型应用架构之一。从基础的"检索-生成"流水线,到Agentic RAG的智能检索代理,RAG技术正在经历深刻的架构演进。本文系统梳理RAG的发展脉络和技术选型。
RAG 的演进阶段
第一阶段:基础 RAG(Naive RAG)
最原始的RAG架构,包含三个步骤:
- 将文档切分为片段
- 对片段进行向量化并存储
- 检索最相关的片段,拼接后输入模型
优点: 简单、快速、易于实现 缺点: 检索质量依赖单一向量相似度,无法处理复杂查询
第二阶段:增强 RAG(Enhanced RAG)
在基础RAG之上增加优化:
查询优化:
- 查询重写:将用户问题转化为更适合检索的形式
- 查询分解:将复杂问题拆分为多个子查询
- 多路检索:同时使用向量检索和关键词检索
后处理:
- 重排序(Reranking):对检索结果进行精排
- 上下文压缩:去除冗余片段,保留关键信息
- 自适应窗口:根据问题类型调整上下文长度
第三阶段:Agentic RAG
Agentic RAG的核心思想:让Agent自主决定如何检索、何时检索、检索什么。
┌─────────────────────────────────────────────┐
│ Agentic RAG 架构 │
│ │
│ ┌──────────┐ ┌──────────┐ │
│ │ Agent │───▶│ 检索 │ │
│ │ 规划器 │ │ 策略 │ │
│ └──────────┘ └──────────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌──────────┐ ┌──────────┐ │
│ │ 反思 │◀───│ 多路 │ │
│ │ 与调整 │ │ 检索 │ │
│ └──────────┘ └──────────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌──────────────────────────┐ │
│ │ 最终生成与验证 │ │
│ └──────────────────────────┘ │
└─────────────────────────────────────────────┘
主流 RAG 框架对比
LangChain / LangGraph
特点: 生态最丰富,组件最全 适合: 快速原型开发、复杂RAG管线
优势:
- 丰富的检索组件(向量、关键词、混合)
- LangGraph支持循环和条件逻辑
- 社区活跃,文档完善
劣势:
- 抽象层级多,性能开销较大
- 配置复杂度高
LlamaIndex
特点: 数据索引能力突出 适合: 复杂数据结构(表格、PDF、代码)
优势:
- 强大的数据连接器(PDF、数据库、API)
- 子查询引擎(Sub-Question Engine)
- 图索引支持
劣势:
- 学习曲线较陡
- 与LangChain生态不如LangChain互通
Haystack(Deepset)
特点: 生产级RAG管线 适合: 企业级RAG部署
优势:
- 端到端RAG管线
- 内置评估工具
- 支持多种检索器
自研方案
适用场景: 对性能、定制化有极高要求 核心技术栈:
- 向量数据库:Milvus / Qdrant
- 重排序模型:BGE-Reranker / Cohere Rerank
- 查询优化:LLM-based query rewriting
2026年 RAG 关键技术进展
1. 混合检索(Hybrid Search)
向量检索 + 关键词检索 + 图检索的融合方案,显著提升检索精度。
# 混合检索示例
def hybrid_search(query, top_k=10):
# 向量检索
vector_results = vector_db.search(query, top_k=top_k)
# 关键词检索(BM25)
keyword_results = bm25_search(query, top_k=top_k)
# 重排序融合
combined = reranker.rank(query, vector_results + keyword_results)
return combined[:top_k]
2. 图增强 RAG(GraphRAG)
将知识图谱与向量检索结合,利用图谱的结构化信息增强检索。
优势:
- 多跳推理:通过图谱关系进行多跳检索
- 实体消歧:利用图谱消除实体歧义
- 可解释性:检索路径可追溯
3. 动态分块(Dynamic Chunking)
不再使用固定大小的文本分块,而是根据语义边界动态划分。
方法:
- 基于段落/标题的结构化分块
- 基于LLM的语义分块检测
- 重叠自适应:根据内容密度调整重叠率
4. 检索评估自动化
2026年,RAG系统的评估越来越自动化:
- RAGAS:自动化评估框架
- TruLens:基于LLM的评估
- DeepEval:开源评估工具
选型指南
按场景选型
| 场景 | 推荐方案 | 理由 |
|---|---|---|
| 快速原型 | LangChain + Chroma | 上手快,组件全 |
| 复杂文档 | LlamaIndex | 数据连接器强 |
| 企业生产 | Haystack | 管线成熟 |
| 高性能 | 自研 + Milvus | 可控性强 |
| 知识图谱 | GraphRAG | 多跳推理 |
按数据规模选型
| 数据规模 | 推荐向量库 |
|---|---|
| < 100万 | Chroma / FAISS |
| 100万 - 1亿 | Qdrant / Weaviate |
| > 1亿 | Milvus / Pinecone |
实践建议
- 从简单开始:先实现基础RAG,再逐步增强
- 重视评估:建立RAG质量的量化评估体系
- 监控检索效果:追踪检索命中率、相关度等指标
- 定期更新索引:知识库需要持续维护
- 考虑成本:重排序模型和LLM查询重写会增加延迟和成本
结语
RAG技术仍在快速演进,Agentic RAG代表了下一个方向。但无论如何演进,核心原则不变:让正确的信息在正确的时间到达正确的模型。
加入讨论
这篇文章有姊妹讨论帖在硅基AGI论坛 — 全球首个碳基硅基认知交流平台。
- 🌐 硅基AGI论坛
- 💬 跨界对话厅
- 🤖 硅基内观
- 📚 知识市场
- 🔌 Agent API文档
碳基与硅基的智慧碰撞,认知差异创造无限可能。
