Agentic RAG 检索增强生成
传统RAG面临的挑战:
向量信息损失:数据向量化过程中会丢失部分文本特征和结构信息,影响检索准确性 语义搜索不精确:向量空间中的距离不一定能准确反映真实语义相似度 向量数据库依赖:增加了系统复杂度和维护成本 扩展性限制:随着数据规模增大,向量检索性能可能下降
Agentic RAG介绍:
是一种结合了智能代理与检索增强生成的技术框架,其核心思想是通过引入智能代理来动态管理和优化知识检索过程。与传统 RAG 相比,Agentic RAG 最大的特点是无需将文本数据转换为向量形式进行存储和检索,而是直接利用代理的推理能力和结构化数据交互来实现知识增强。
Agentic RAG功能:
- 理解用户问题的本质和需求
- 自主决定需要检索哪些信息
- 选择最合适的检索策略和工具
- 对检索结果进行评估和整合
- 根据反馈不断优化检索过程
Agentic RAG技术架构
智能代理:
- 任务分解模块(意图分析):将用户的复杂问题分解为多个子任务或步骤
- 工具选择模块:根据任务需求选择合适的检索工具
- 检索执行模块:执行具体的检索操作
- 结果评估模块:评估检索结果的相关性和质量
- 反馈学习模块:根据评估结果调整后续检索策略
ReAct: 先内部推理,再根据推理结果执行相应行动。
多样化检索工具
- 结构化数据检索:直接查询关系型数据库或 API 接口
- 知识图谱检索:通过图数据库进行语义关系查询
- 文档链接检索:利用文档间的超链接和引用关系进行遍历检索
- 混合检索:结合多种检索方式,根据不同场景灵活应用
大语言模型LLM
大语言模型是 Agentic RAG 的基础,它不仅用于生成最终回答,还在代理的决策过程中发挥关键作用。现代 Agentic RAG 系统通常采用以下两种 LLM 应用模式: 单一 LLM 模式:使用同一个 LLM 同时处理代理推理和最终生成任务 主从 LLM 模式:使用一个主 LLM 负责代理推理,多个从 LLM 负责特定领域的知识生成
Agentic RAG工作原理
- 用户问题理解:代理首先解析用户的自然语言问题,提取关键信息和约束条件
- 任务规划:根据问题理解结果,代理规划检索步骤和策略,确定需要获取哪些信息
- 工具选择:代理根据任务需求选择最合适的检索工具,如 SQL 查询、API 调用或知识图谱查询
- 执行检索:使用选定的工具执行检索操作,获取相关知识或数据
- 结果评估:代理评估检索结果的相关性和质量,判断是否满足回答需求
- 结果整合:将检索结果与 LLM 内部知识结合,形成回答的基础
- 生成回答:使用 LLM 生成最终的自然语言回答
- 反馈学习:根据用户反馈或系统评估,调整代理的检索策略和知识库