AI Agents for Beginners笔记: 5.Agentic RAG
📅 2025-02-24 | 🖱️
代理式检索增强生成(Agentic RAG),这是一种新兴的人工智能范式,其中大型语言模型(LLM)在从外部来源获取信息的同时,自主规划其下一步行动。与静态的先检索后阅读模式不同,Agentic RAG 涉及对 LLM 的迭代调用,中间穿插工具或函数调用以及结构化输出。系统会评估结果,优化查询,必要时调用额外的工具,并持续循环此过程,直到获得满意的解决方案。
本节包含以下内容:
- 理解代理式检索增强生成(Agentic RAG):了解人工智能中的新兴范式,其中大型语言模型(LLM)在从外部数据源获取信息的同时,自主规划其下一步行动。
- 掌握迭代式制作者-检查者(Maker-Checker)风格:理解对LLM的迭代调用循环,中间穿插工具或函数调用以及结构化输出,旨在提高正确性并处理格式错误的查询。
- 探索实际应用:识别Agentic RAG表现出色的场景,例如优先正确性的环境、复杂的数据库交互和扩展的工作流程。
完成本节后,将理解以下内容:
- 理解代理式检索增强生成(Agentic RAG):了解人工智能中的新兴范式,其中大型语言模型(LLM)在从外部数据源获取信息的同时,自主规划其下一步行动。
- 迭代式制作者-检查者风格:掌握对 LLM 的迭代调用循环概念,中间穿插工具或函数调用以及结构化输出,旨在提高正确性并处理格式错误的查询。
- 掌控推理过程:理解系统掌控自身推理过程的能力,能够在不依赖预定义路径的情况下决定如何解决问题。
- 工作流程:了解代理模型如何独立决定检索市场趋势报告、识别竞争对手数据、关联内部销售指标、综合分析结果并评估策略。
- 迭代循环、工具集成和记忆:学习系统如何依赖循环交互模式,在各步骤间保持状态和记忆,以避免重复循环并做出明智决策。
- 处理失败模式和自我纠正:探索系统强大的自我纠正机制,包括迭代和重新查询、使用诊断工具以及依靠人工监督作为后备。
- 代理的界限:理解 Agentic RAG 的局限性,重点关注领域特定的自主性、基础设施依赖性以及对护栏的尊重。
- 实际用例和价值:识别 Agentic RAG 表现出色的场景,例如优先正确性的环境、复杂的数据库交互和扩展的工作流程。
- 治理、透明度和信任:学习治理和透明度的重要性,包括可解释的推理、偏见控制和人工监督。
Agentic RAG是什么 #
代理式检索增强生成(Agentic RAG)是一种新兴的人工智能范式,其中大型语言模型(LLM)在从外部来源获取信息的同时,自主规划其下一步行动。与静态的先检索后阅读模式不同,Agentic RAG 涉及对 LLM 的迭代调用,中间穿插工具或函数调用以及结构化输出。系统会评估结果,优化查询,必要时调用额外的工具,并持续循环此过程,直到获得满意的解决方案。这种迭代的“制作者-检查者”风格提高了正确性,能够处理格式错误的查询,并确保高质量的结果。
系统积极掌控其推理过程,重写失败的查询,选择不同的检索方法,并在最终确定答案前集成多种工具——如 Azure AI Search 中的向量搜索、SQL 数据库或自定义 API。代理系统的显著特点在于其掌控自身推理过程的能力。传统的 RAG 实现依赖预定义路径,而代理型系统则根据其找到的信息质量,自主决定步骤的顺序。
定义代理式检索增强生成(Agentic RAG) #
代理式检索增强生成(Agentic RAG)是 AI 开发中的一种新兴范式,其中大型语言模型(LLM)不仅从外部数据源获取信息,还能自主规划其下一步行动。与静态的先检索后阅读模式或精心设计的提示序列不同,Agentic RAG 涉及对 LLM 的迭代调用循环,中间穿插工具或函数调用以及结构化输出。系统在每次迭代中评估所得结果,决定是否优化查询,必要时调用额外的工具,并持续此循环直到获得满意的解决方案。
这种迭代的“制作者-检查者”操作风格旨在提高正确性,处理对结构化数据库(例如 NL2SQL)的格式错误查询,并确保平衡且高质量的结果。系统并非仅依赖精心设计的提示链,而是积极掌控其推理过程。它可以重写失败的查询,选择不同的检索方法,并集成多种工具——如 Azure AI Search 中的向量搜索、SQL 数据库或自定义 API——然后再确定最终答案。这消除了对过于复杂编排框架的需求。相反,一个相对简单的“LLM 调用 → 工具使用 → LLM 调用 → …”循环就能产生复杂且有据可依的输出。
掌控推理过程 #
使系统具有“代理式”的显著特质在于其掌控自身推理过程的能力。传统的 RAG 实现通常依赖人类预先为模型定义路径:一个思维链条,明确规定要检索什么以及何时检索。但当系统真正具有代理性时,它会内部决定如何解决问题。它不仅仅是执行脚本,而是根据找到的信息质量自主确定步骤顺序。例如,如果要求它制定产品发布策略,它不会仅仅依赖一个详细说明整个研究和决策流程的提示。相反,代理模型会独立决定:
- 使用 Bing 网络 grounding 检索当前市场趋势报告。
- 使用 Azure AI Search 识别相关竞争对手数据。
- 使用 Azure SQL 数据库关联历史内部销售指标。
- 通过 Azure OpenAI 服务将发现综合成一个连贯的策略。
- 评估策略是否存在缺口或不一致之处,并在必要时触发另一轮检索。所有这些步骤——优化查询、选择来源、迭代直到对答案“满意”——都由模型自行决定,而非由人类预先编写脚本。
迭代循环、工具集成和记忆 #
代理型系统依赖于循环交互模式:
- 初始调用:用户的目标(即用户提示)被提交给大型语言模型(LLM)。
- 工具调用:如果模型发现信息缺失或指令模糊,它会选择一种工具或检索方法——如向量数据库查询(例如 Azure AI Search 在私有数据上的混合搜索)或结构化 SQL 调用——以收集更多上下文。
- 评估与优化:在审查返回的数据后,模型判断这些信息是否足够。如果不足,它会优化查询,尝试不同的工具,或调整其方法。
- 重复直到满意:此循环持续进行,直到模型确定它已获得足够的清晰度和证据,能够提供最终的、推理充分的响应。
- 记忆与状态:由于系统在各个步骤中保持状态和记忆,它能回忆起之前的尝试及其结果,避免重复循环,并在进行过程中做出更明智的决策。
随着时间的推移,这创造了一种不断演进的理解感,使模型能够在无需人类持续干预或重塑提示的情况下,处理复杂的多步骤任务。
处理失败模式和自我纠正 #
Agentic RAG 的自主性还包括强大的自我纠正机制。当系统遇到死胡同——例如检索到无关文档或面对格式错误的查询时,它可以:
- 迭代与重新查询:模型不会返回低价值响应,而是尝试新的搜索策略、重写数据库查询,或查看替代数据集。
- 使用诊断工具:系统可能会调用额外的功能来帮助调试其推理步骤或确认检索数据的正确性。像 Azure AI Tracing 这样的工具对于实现强大的可观察性和监控至关重要。
- 依赖人工监督:对于高风险或反复失败的场景,模型可能会标记不确定性并请求人工指导。一旦人类提供纠正反馈,模型便可在后续过程中融入这一经验教训。
这种迭代且动态的方法使模型能够持续改进,确保它不仅仅是一个一次性系统,而是一个能在特定会话中从错误中学习的系统。
代理的界限 #
尽管 Agentic RAG 在任务中具有自主性,但它并不等同于通用人工智能(AGI)。它的“代理”能力受限于人类开发者提供的工具、数据源和策略。它无法自行创造工具或超越设定的领域边界。相反,它擅长动态编排手头的资源。它与更高级 AI 形式的主要区别包括:
- 领域特定的自主性:Agentic RAG 系统专注于在已知领域内实现用户定义的目标,采用查询重写或工具选择等策略来改进结果。
- 依赖基础设施:系统的能力取决于开发者集成的工具和数据。没有人类干预,它无法超越这些限制。
- 遵守安全措施:伦理指南、合规规则和业务策略至关重要。代理的自由始终受到安全措施和监督机制的约束(希望如此?)。
实际用例和价值 #
Agentic RAG 在需要迭代优化和精确性的场景中表现出色:
- 优先正确性的环境:在合规检查、法规分析或法律研究中,代理模型可以反复验证事实,查阅多个来源,并重写查询,直到生成经过充分审查的答案。
- 复杂的数据库交互:在处理结构化数据时,查询可能经常失败或需要调整,系统能够通过 Azure SQL 或 Microsoft Fabric OneLake 自主优化查询,确保最终检索结果与用户意图一致。
- 扩展的工作流程:较长时间的会话可能随着新信息的出现而演变。Agentic RAG 可以持续整合新数据,随着对问题空间的了解加深而调整策略。
治理、透明度和信任 #
随着这些系统在推理上变得更加自主,治理和透明度变得至关重要:
- 可解释的推理:模型可以提供其查询、参考来源以及得出结论的推理步骤的审计追踪。像 Azure AI Content Safety 和 Azure AI Tracing / GenAIOps 这样的工具可以帮助保持透明度并降低风险。
- 偏见控制与平衡检索:开发者可以调整检索策略以确保考虑平衡且具有代表性的数据源,并定期审计输出以检测偏见或偏差模式,使用 Azure Machine Learning 为高级数据科学组织定制模型。
- 人工监督与合规性:对于敏感任务,人工审查仍然必不可少。Agentic RAG 不会在高风险决策中取代人类判断,而是通过提供经过更彻底审查的选项来增强它。
拥有提供清晰行动记录的工具至关重要。没有这些工具,调试多步骤流程将非常困难。请参见以下来自 Literal AI(Chainlit 背后的公司)的智能体运行示例:
总结 #
Agentic RAG代表了AI系统处理复杂、数据密集型任务的自然演进。通过采用循环交互模式、自主选择工具并优化查询直到获得高质量结果,系统超越了静态的提示跟随,转变为更具适应性和上下文感知能力的决策者。虽然仍受限于人类定义的基础设施和伦理准则,但这些代理能力为企业和终端用户带来了更丰富、更动态且最终更有用的 AI 交互体验。
Additional Resources #
- Implement Retrieval Augmented Generation (RAG) with Azure OpenAI Service: Learn how to use your own data with the Azure OpenAI Service. This Microsoft Learn module provides a comprehensive guide on implementing RAG
- Evaluation of generative AI applications with Azure AI Foundry: This article covers the evaluation and comparison of models on publicly available datasets, including Agentic AI applications and RAG architectures
- What is Agentic RAG | Weaviate
- Agentic RAG: A Complete Guide to Agent-Based Retrieval Augmented Generation – News from generation RAG
- Agentic RAG: turbocharge your RAG with query reformulation and self-query! Hugging Face Open-Source AI Cookbook
- Adding Agentic Layers to RAG
- The Future of Knowledge Assistants: Jerry Liu
- How to Build Agentic RAG Systems
- Using Azure AI Foundry Agent Service to scale your AI agents