支持私有化部署
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


RAG 技术演进:从朴素检索到智能代理增强

发布日期:2025-07-21 14:29:52 浏览次数: 1556
作者:MetaFlow

微信搜一搜,关注“MetaFlow”

推荐语

RAG技术如何让大语言模型突破记忆限制?从基础检索到智能代理的进化之路。

核心内容:
1. RAG技术原理与Embedding向量检索机制
2. 朴素RAG到进阶RAG的检索质量优化路径
3. 专业领域中的分块策略与语义保护方案

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家

LLM 具备强大的分析能力、推理能力、生成能力,但它仍然无法记得上个月的今天发生了什么,哪怕你曾经在上个月告诉过它。

究其原因,是因为 LLM 基于静态语料库训练,你的个人经历并不在其中。它只具备短期记忆,这种记忆依靠一次对话的上下文维持(历史信息会被携带到下一次对话,且信息量有限)。

当然,现在的诸多协议已经能够为 LLM 提供很多"外挂",比如 MCP 协议、A2A 协议,它们在不断扩展 LLM 的认知边界,让 LLM 能够跳出其固有的知识范围。但是,RAG 仍然是一个重要方向,为 LLM 提供长期记忆、让它能够将神经元触达到你的个人数据。


一、RAG 是什么

RAG(Retrieval-Augmented Generation)通过检索问题的关联信息来增强 LLM 生成效果。

高效、准确的检索依赖于 Embedding 技术,它将一定长度(每种 Embedding 模型对文本长度有要求)的文本转换为固定长度的向量,实现文本的语义表示。通过训练,语义相似的文本在向量空间中会彼此接近,从而支持语义搜索。


二、RAG 范式的演进

RAG 的演进过程,主要是围绕着用户意图识别、关联信息质量治理两个主题展开。尽可能在有限的上下文窗口中,让 LLM 生成更准确、更符合用户意图的答案。


2.1 朴素 RAG

早期的 RAG,实现非常简单,就是将用户的问题,通过 Embedding 模型转换为向量,然后通过向量检索,找到与用户问题最相似的文本,将问题和关联文本一起返回给 LLM,让 LLM 生成回答。

在向量数据库内,已经将现有的知识通过切割分块、向量化并存储。

但这种方式存在明显问题:当用户表达意图模糊或者知识库的向量化做的不好时,基于语义相似度的检索可能返回不相关的内容。这种情况尤其可能发生在比较专业的领域。


2.2 进阶 RAG

进阶版本的 RAG,在朴素 RAG 的基础上,增加了预检索、检索、后检索三个阶段,但是在各个阶段,又所有增强。


2.2.1 检索质量增强

在 Indexing 阶段,内容的质量和分块策略都是检索质量的关键因素。

就内容质量而言,我们可以对数据进行清洗和标准化,去除和内容主题不相关的部分,统一术语和表达方式。

对于分块策略,由于 Embedding 模型对输入长度有限制,必须将长文档切分为多个块进行向量化(即使长度符合要求,也需要进行适当分块,我们无法将一个问题的所有线索一次性投递给模型),然而,不当的分块策略可能导致重要概念被切断,降低检索准确性。

常见的分块策略包括:

递归字符分块:本质上是一种贪心算法。基于文档结构的层次化分割

- 按优先级使用分隔符(段落、换行、空格等)进行分割

- 当块大小超限时,降级使用下一级分隔符

- 适用于结构清晰的文档(如技术文档、学术论文)

滑动窗口分块:基于重叠保护的分割

- 设定固定块大小和滑动步长,确保相邻块有内容重叠

- 在检索准确性和存储效率间取得平衡

- 适用于内容连续性要求高的场景(如小说、对话记录)

语义分块:基于语义相似度阈值的动态分割

- 计算句子间的语义相似度,当相似度低于阈值时开始新块

- 计算开销较大,但能保持语义完整性

- 适用于语义边界模糊的内容(如自由文本、混合主题文档)


2.2.2 查询优化

在 Pre Retrieval 阶段,主要考虑在检索前对查询进行优化,以充分理解用户意图。

优化的策略通常包括:

- 元数据扩充:可以通过增加元数据,来提升检索的准确性。比如,可以增加文本的来源、作者、发布时间、类型等元数据,从而提升检索的准确性。

- 查询重写:让查询更加具体、明确,或者把复杂查询拆分成若干简单查询。意图的识别更加具有明确性和准确性。

- 查询扩展:在原查询基础上添加相关词汇或同义词,扩大检索范围。如将 'Python 教程' 扩展为包含编程学习、代码实践等相关语义的查询向量。

- 查询路由:根据查询内容的语义、类型、复杂度等特征,自动选择最优的检索策略、数据源或处理模型。

- 自查询:使用 LLM 识别查询中的关键实体和关系(例如,位置、日期、人员),并将此信息用作元数据过滤器,以缩小向量数据库中的搜索空间。


2.2.3 检索策略优化

Retrieval 阶段,专注于通过混合搜索、高级检索算法、嵌入模型优化等技术来提升向量搜索的准确性和效率,确保能够精准定位最相关的文档内容。

混合搜索:结合向量搜索和关键词搜索,关键词搜索确保检索文档中存在关键词汇,向量搜索捕获语义相似性,通过权重参数(比如关键词检索权重为 0.3,向量检索权重为 0.7)平衡每种方法的贡献。解决单一检索方式的局限性,在保证语义理解的同时确保重要术语不被遗漏。

高级检索算法:采用迭代检索、递归检索、自适应检索等技术,突破简单 Top-K 检索的限制。迭代检索通过多轮检索逐步深入;递归检索将前一步输出作为下一步输入;自适应检索根据查询复杂度动态调整策略,适用于复杂推理和多步查询场景。

嵌入模型优化:通过优化嵌入模型,提升向量搜索的准确性和效率。

元数据过滤:利用数据库的过滤和搜索功能,结合文档属性(时间、作者、类型、标签等)进行预过滤和精确匹配。在语义检索基础上增加结构化约束,提高检索精度并减少计算开销。


2.2.4 精炼上下文

Post Retrieval 阶段,专注于通过重排序、上下文压缩、Prompt 优化等技术来精炼检索到的内容,确保只有最相关的信息被传递给 LLM。

重排序:通过算法甚至模型,对结果的相关性进行进一步计算,进一步排除相关性不高的结果(噪音)。

上下文压缩:去除冗余信息,保留关键内容,控制总长度。

Prompt 优化:将最相关的信息,编辑成 LLM 容易理解的格式,添加必要的指令和结构。


2.3 模块化 RAG

RAG 系统可以被解构为多个独立且可组合的功能模块,每个模块专注于检索增强生成流程中的特定任务。这实际上是一种架构设计理念,所有功能都并不 “新鲜”,但重组、模块化之后具有以下优势:

灵活性:可以根据具体应用场景和需求,动态组合或替换不同的功能模块

可维护性:各模块之间职责明确,便于独立优化和升级

可扩展性:新的功能模块可以轻松集成到现有系统中

可复用性:通用模块可以在不同的 RAG 应用中重复使用

通过合理的模块化设计,我们可以构建出更加健壮和高效的 RAG 系统,更好地服务于不同的业务场景。


2.3 Graph RAG

Graph RAG 通过引入知识图谱增强检索能力,相比传统的向量检索方法具有显著优势:

结构化知识表示:将领域知识编码为实体和关系的图结构,保留了知识之间的逻辑关联

多跳推理能力:可以通过图的遍历发现间接相关的知识,支持更复杂的推理任务

语义关联扩展:基于图的连接性,可以智能扩展查询范围,发掘潜在相关的知识点

上下文感知检索:利用图结构中的关系信息,提供更符合领域上下文的检索结果

这种基于知识图谱的检索方式特别适用于:

- 专业领域问答(如医疗、法律、金融等)

- 需要深度推理的复杂查询

- 知识之间存在丰富关联关系的场景


2.4 Agentic RAG 

Agentic RAG 通过引入智能代理(Agent)来模拟人类在信息检索过程中的认知决策模式。这种方法将 RAG 从静态的检索-生成流程提升为具备动态决策能力的智能系统。

自适应检索策略

- 根据查询内容和上下文动态调整检索方法

- 智能选择最适合的信息源和检索范围

- 自动优化检索参数和阈值

多轮交互决策

- 支持渐进式信息收集和精炼

- 在检索过程中进行实时反馈和调整

- 通过多轮对话深化对用户需求的理解

智能结果合成

- 自动评估和筛选检索结果的相关性

- 智能组合和重组来自不同来源的信息

- 生成更符合用户意图的综合答案

这种基于 Agent 的增强方式使 RAG 系统能够更好地处理复杂查询场景,提供更精准和个性化的响应。在更复杂的应用场景中,它可以是一个 MCP+RAG 甚至 A2A+RAG 型的应用。


三、总结

通过 RAG,我们可以将 LLM 的认知边界扩展到自己的知识库。意图识别和精准检索策略的不断升级,提供更有针对性和个性化的回答。

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询