引言
前文: Search-o1技术解读-智能RAG助力O1推理模型突破知识盲区 提到的智能RAG其实就是Agentic RAG,那么Agentic RAG与传统RAG有什么不同?今天这篇小作文简要介绍2者的差异。
RAG 是一种结合信息检索与生成模型的技术,主要分为传统 RAG 和 Agentic RAG 两种形式。它们在设计、应用和能力上存在显著区别。
传统 RAG
1、 基本概念 : 传统 RAG 通过将文档向量化存储在向量数据库中,用户查询时将问题向量化,从数据库中检索相关文档,然后将问题与检索结果交给生成模型(LLM)进行总结和生成响应。
2、 流程 :
- 检索 :一次性从数据库中获取相关文档。
- 生成 :基于检索到的信息生成文本响应。
具体流程可以参考如下动画:
3、 优缺点 :
- 优点 :简单低成本,交互次数少。
- 缺点 :
- 仅能进行一次检索和生成,无法根据上下文动态搜索更多信息。
- 对复杂查询缺乏推理能力。
- 无法根据用户问题调整策略,容易导致生成结果不理想。
4、 应用场景 : 适合需要回答具体问题或生成基于事实内容的场景,例如问答系统。
Agentic RAG
以下动图展现了Agentic RAG与传统 RAG 的区别。Agentic RAG核心思想是在RAG的每个阶段引入Agent行为。
1、 增强的能力 : Agentic RAG 在传统 RAG 基础上引入了 AI 智能体,强调自主决策(agentic capabilities)和动态交互能力。
2、 动态交互流程 :
- 查询重写 :智能体对用户查询进行重写,例如修正拼写错误。
- 额外信息获取 :智能体判断是否需要额外的信息,可能通过搜索引擎或者调用工具获取必要数据。
- 内容检查 :在生成内容后,智能体会检查答案的相关性和有效性。如果不符合要求,系统会返回第一步,修改查询并继续迭代,直到找到相关内容或告知用户问题无法回答。
以下动图简要示意了每个步骤:
- 步骤1-2) agent重写查询(删除拼写错误等)
- 步骤3-8) agent决定是否需要更多上下文。
- 如果不是,则将重写的查询发送给 LLM。
- 如果是,agent会找到最佳的外部源来获取上下文,并将其传递给 LLM。
- 步骤9) 得到了response。
- 步骤10-12) Agent检查答案是否相关。
- 如果是,则返回响应。
- 如果不是,请返回步骤 1。
这个过程持续几次,直到得到response或者系统承认它无法回答查询。
3、 优缺点 :
- 优点 :能够处理复杂的对话、多轮交互和动态调整检索策略,适应复杂用户需求。
- 缺点 :相较于传统 RAG,成本更高,处理时间更长。
4、 应用场景 : 更适合用于复杂对话系统、虚拟助手等场景,能够有效处理多轮对话和复杂查询。
总结
传统 RAG 侧重于信息的检索与生成,适用于简单场景;而 Agentic RAG 则通过引入智能体,增强了自主决策和动态交互能力,适应更复杂和多变的用户需求。虽然 Agentic RAG 成本较高,但其灵活性和实用性在许多应用中具有明显优势。