针对你目前构建的系统以及行业内的主流方向,我将 RAG 技术的发展分为四个阶段:Naive RAG(朴素 RAG)、Advanced RAG(高级 RAG)、Modular RAG(模块化 RAG) 以及前沿的 Graph RAG / Agentic RAG。
以下是详细的技术对比总结。
1. Naive RAG (朴素/初级 RAG)
这是 RAG 的“Hello World”版本,也就是最基础的“切片-索引-检索-生成”流程。
- 核心流程:PDF -> 纯文本提取 -> 固定字符分块 -> 向量化 -> 检索 Top-K -> 喂给 LLM。
- 优点:
- 实现简单:几行代码就能跑通(如直接用 LangChain 的默认 Chain)。
- 成本低:无需复杂的预处理和重排序。
- 缺点:
- 召回率低:关键词匹配不准,容易漏掉重要信息。
- 精度低:经常检索到不相关的片段(噪音)。
- 上下文丢失:简单的切片会把表格、跨段落的逻辑切碎(Garbage In)。
- 幻觉严重:由于上下文破碎,LLM 容易胡说八道。
- 适用场景:简单的个人知识库,文档结构非常简单(如纯文本小说)。
2. Advanced RAG (高级 RAG)
针对 Naive RAG 的痛点,在检索前、中、后引入了优化策略。
A. 预检索优化 (Pre-Retrieval)
- 技术点:结构化解析 (Markdown Parsing)、父子索引 (Parent-Child)、语义分块 (Semantic Chunking)。
- 特点:不再把文档当纯文本,而是感知其结构(表格、层级)。
- 优缺点:
- ✅ 极高精度:解决了“表格数据乱码”和“上下文切断”的问题。
- ❌ 处理慢:解析 PDF 布局和建立父子映射需要更多时间和算力。
B. 检索优化 (Retrieval)
- 技术点:混合检索 (Hybrid Search)、查询改写 (Query Transformation/Multi-Query)。
- 特点:BM25(字面)+ 向量(语义)互补;将用户模糊问题转化为机器精准搜索词。
- 优缺点:
- ✅ 高召回率:即使文档写法不规范,也能通过同义词或关键词找到。
- ❌ 延迟增加:需要多次调用 LLM 进行改写,且同时进行多路检索。
C. 后检索优化 (Post-Retrieval)
- 技术点:重排序 (Reranking)、上下文重组 (Context Reordering)、硬过滤 (Hard Filtering)。
- 特点:先“海选”(Top 50),再“精选”(Top 10),并把最重要的放在首尾。
- 优缺点:
- ✅ 去噪能力强:大幅减少喂给 LLM 的垃圾信息,提升回答准确度。
- ❌ 依赖模型:Rerank 模型通常需要额外的显存开销。
3. Modular RAG (模块化 RAG)
不再是线性的流程,而是由多个功能模块组成,可以动态组合。
- 特点:包含路由(Router)、记忆(Memory)、融合(Fusion)等独立模块。
- 技术点:RAPTOR (树状递归索引)、Self-RAG (自修正)。
- 优缺点:
- ✅ 灵活性:可以根据问题类型走不同的路(比如问事实走数据库,问总结走摘要树)。
- ✅ 可控性:如果检索结果不好,模块可以触发“重新检索”。
- ❌ 工程复杂度极高:需要编写大量的控制逻辑和提示词工程。
4. Graph RAG (知识图谱 RAG) —— 未来的进阶方向
利用知识图谱(Knowledge Graph)来显式地存储实体之间的关系,弥补向量检索“只见点不见面”的缺陷。
- 核心逻辑:提取文档中的实体(如“某部门”)和关系(如“获得 -> 奖励”),存入 Neo4j 等图数据库。
- 优点:
- 全局理解能力:擅长回答“全库总结性问题”(例如:库里所有提到关于AI风险的观点有哪些?)。
- 多跳推理:能顺着关系链找到答案(A 影响 B,B 导致 C,问 A 会导致什么?向量搜不到 C,但图谱可以)。
- 缺点:
- 构建极难:图谱提取非常消耗 Token,且图谱维护(Schema 设计)很复杂。
- 查询慢:图查询语言(Cypher)的生成和执行比向量检索慢。
5. Agentic RAG (代理 RAG) —— RAG 的终极形态
让 LLM 变成一个“智能体”,拥有使用工具(检索器)的能力。
- 核心逻辑:LLM 拿到问题,自己决定:要不要搜?搜什么?搜到的够不够?不够再搜一次(多轮迭代)。
- 优点:
- 解决复杂任务:可以处理非常复杂的、需要多步拆解的问题。
- 自我纠错:如果第一次搜出来的东西不对,它会自己换个词重搜。
- 缺点:
- 慢且贵:因为是循环执行,可能为了一个问题调用十几次 LLM。
- 不可控:Agent 可能会陷入死循环。
📊 横向对比总结表
| 技术类型 | 核心手段 | 优点 | 缺点 | 你的系统位置 |
|---|---|---|---|---|
| Naive RAG | 文本切片 + 向量检索 | 简单、快 | 精度低、幻觉多、无表格能力 | ❌ 已超越 |
| Advanced RAG | 父子索引、混合检索、重排序、硬过滤 | 高精度、保留结构、少幻觉 | 构建复杂、Token消耗大 | ✅当前阶段 |
| Modular RAG | 路由、递归摘要 (RAPTOR) | 灵活、适合总结类任务 | 工程量大 | 🔄 部分涉及 (改写模块) |
| Graph RAG | 知识图谱 + 向量 | 全局视野、多跳推理 | 构建成本极高、维护难 | ⏳ 下一步探索方向 |
| Agentic RAG | LLM 自主调用工具、循环检索 | 解决极难问题、自修正 | 速度慢、不可控 | ⏳ 算力充足时可尝试 |