下面很多链接在这个Github仓库,大家通过访问Github仓库访问更多资料。
摘要
代理式检索增强生成(Agentic RAG)通过在RAG管道中嵌入自主代理,代表了人工智能领域的重大飞跃。 本仓库补充了综述论文《代理式检索增强生成(Agentic RAG): 综述》,提供了以下方面的见解:
- 基础原理 ,包括代理模式 ,如反思、规划、工具使用和多代理协作。
- Agentic RAG系统的详细分类 ,展示了单代理、多代理、分层、纠正、自适应和图基RAG等框架。
- 传统RAG、Agentic RAG和代理式文档工作流(ADW)的比较分析 ,突出它们的优势、劣势和最佳适用场景。
- 跨行业的实际应用 ,如医疗、教育、金融和法律分析。
- 挑战和未来方向 ,涉及扩展性、伦理AI、多模态集成和人机协作。
目录
- 📜 摘
- 🧩 引言
- 🤖 代理模式
- 🛠️ Agentic RAG系统的分类
- 🔍 Agentic RAG框架的比较分析
- 💼 应用
- 🚧 挑战与未来方向
- 🛠️ RAG代理分类的实现:技术与工具
- 📰 关于Agentic RAG的博客和教程
- 🖊️ 值得注意的相关概念
- 💡 Agentic RAG的实际实现与用例
- 📚 参考文献
- 🖊️ 如何引用
引言
检索增强生成(RAG)系统结合了大型语言模型(LLMs)和检索机制,生成上下文相关且准确的响应。 虽然传统RAG系统在知识检索和生成方面表现出色,但在处理动态、多步推理任务、适应性和复杂工作流的编排方面往往存在不足。 代理式检索增强生成(Agentic RAG) 通过集成自主AI代理克服了这些限制。这些代理采用核心的代理模式 ,如反思、规划、工具使用和多代理协作,动态适应任务特定需求,并在以下方面提供卓越性能:
- 多领域知识检索。
- 实时、以文档为中心的工作流。
- 可扩展、自适应和符合伦理的AI系统。
本文探讨了从RAG到Agentic RAG的演进,展示了:
- 代理模式 :驱动系统适应性和智能的核心原则。
- 分类 :Agentic RAG架构的全面分类。
- 比较分析 :传统RAG、Agentic RAG和ADW之间的关键差异。
- 应用 :跨医疗、教育、金融等领域的实际用例。
- 挑战与未来方向 :解决扩展性、伦理AI和多模态集成问题。
无论您是研究人员、开发者还是实践者,本仓库都提供了宝贵的见解和资源,帮助您理解和推进Agentic RAG系统。
检索增强生成中的代理模式
Agentic RAG系统的智能和适应性来源于定义明确的代理模式。 这些模式使代理能够处理复杂的推理任务,适应动态环境,并有效协作。 以下是Agentic RAG的核心模式:
1. 反思
- 定义 :代理评估自己的决策和输出,识别错误和改进空间。
- 关键优势 :
- 支持结果的迭代优化。
- 提高多步推理任务的准确性。
- 示例 :在医疗诊断系统中,代理根据检索到的数据迭代反馈优化诊断结果。
2. 规划
- 定义 :代理创建结构化工作流和任务序列,以高效解决问题。
- 关键优势 :
- 通过分解任务促进多步推理。
- 通过优化任务优先级减少计算开销。
- 示例 :金融分析系统规划数据检索任务以评估风险并提供建议。
3. 工具使用
- 定义 :代理与外部工具、API和知识库交互,检索和处理数据。
- 关键优势 :
- 扩展系统能力,超越预训练知识。
- 通过集成外部资源支持特定领域的应用。
- 示例 :法律助理代理从合同数据库中检索条款,并应用领域特定规则进行合规分析。
4. 多代理协作
- 定义 :多个代理协作分工,共享信息和结果,以解决复杂任务。
- 关键优势 :
- 高效处理大规模和分布式问题。
- 结合专业化代理能力以获得更好的结果。
- 示例 :在客户支持中,代理协作从FAQ中检索知识、生成响应并提供后续跟进。
代理模式的意义
这些模式构成了Agentic RAG系统的核心,使其能够:
- 动态适应任务需求。
- 通过自我评估改进决策。
- 利用外部资源进行领域特定推理。
- 通过协作处理复杂的分布式工作流。
Agentic RAG系统的分类
代理式检索增强生成(RAG)系统涵盖了多种架构和工作流,每种架构都针对特定任务和复杂性级别进行了优化。 以下是这些系统的详细分类:
1. 单代理RAG
- 核心思想 :单个自主代理管理检索和生成过程。
- 工作流 :
- 查询提交给代理。
- 代理从外部源检索相关数据。
- 数据处理并合成为响应。
- 优势 :
- 适用于基本用例的简单架构。
- 易于实施和维护。
- 局限性 :
- 扩展性有限。
- 对多步推理或大数据集效果不佳。
2. 多代理RAG
- 核心思想 :多个代理协作执行复杂的检索和推理任务。
- 工作流 :
- 代理动态分配任务(如检索、推理、合成)。
- 每个代理专注于特定子任务。
- 结果汇总并合成为连贯输出。
- 优势 :
- 在分布式、多步任务中表现更好。
- 模块化和扩展性增强。
- 局限性 :
- 代理数量增加时协调复杂性增加。
- 代理之间可能存在冗余或冲突。
3. 分层代理RAG
- 核心思想 :将代理组织为层次结构,以更好地进行任务优先级和委派。
- 工作流 :
- 顶层代理协调子任务给下层代理。
- 每个下层代理处理流程的特定部分。
- 结果在更高层次上迭代优化和集成。
- 优势 :
- 适用于大规模和复杂任务。
- 模块化设计便于专业化。
- 局限性 :
- 需要复杂的协调机制。
- 高层可能存在瓶颈。
4. 纠正代理RAG
- 核心思想 :通过反馈循环使代理能够迭代评估和优化其输出。
- 工作流 :
- 代理生成初始响应。
- 批评模块评估响应的错误或不一致性。
- 代理根据反馈优化响应。
- 重复步骤2-3,直到输出达到质量标准。
- 优势 :
- 通过迭代改进实现高准确性和可靠性。
- 适用于易出错或高风险任务。
- 局限性 :
- 计算开销增加。
- 反馈机制需精心设计以避免无限循环。
5. 自适应代理RAG
- 核心思想 :根据任务需求动态调整检索策略和工作流。
- 工作流 :
- 代理评估查询及其上下文。
- 根据可用数据和用户需求实时调整检索策略。
- 使用动态工作流合成响应。
- 优势 :
- 对多样化任务和动态环境具有高度灵活性。
- 提高上下文相关性和用户满意度。
- 局限性 :
- 设计稳健的自适应机制具有挑战性。
- 实时调整的计算开销较大。
6. 图基代理RAG
图基RAG系统通过集成图数据结构进行高级推理,扩展了传统RAG。
6.1 Agent-G:图RAG的代理框架
- 核心思想 :使用图知识库和反馈循环动态分配任务给专业化代理。
- 工作流 :
- 从图知识库中提取关系(如疾病到症状的映射)。
- 补充来自外部源的非结构化数据。
- 使用批评模块验证结果并迭代优化。
- 优势 :
- 结合结构化和非结构化数据。
- 模块化且适用于复杂任务。
- 通过迭代优化确保高准确性。
6.2 GeAR:图增强代理RAG
- 核心思想 :通过图扩展技术和代理架构增强RAG系统。
- 工作流 :
- 扩展与查询相关的图以增强关系理解。
- 利用专业化代理进行多跳推理。
- 将图结构化和非结构化信息合成为响应。
- 优势 :
- 在多跳推理场景中表现出色。
- 提高深度上下文任务的准确性。
- 动态适应复杂查询环境。
7. 代理式文档工作流(ADW)
代理式文档工作流(ADW)通过智能代理自动化以文档为中心的流程,扩展了传统RAG系统。
工作流
- 文档解析与结构化 :
- 从发票或合同等文档中提取结构化数据。
- 状态维护 :
- 在多步工作流中跟踪上下文以确保一致性。
- 知识检索 :
- 从外部源或领域特定数据库中检索相关参考。
- 代理编排 :
- 应用业务规则,执行多跳推理,并编排外部API。
- 可操作输出生成 :
- 生成针对特定用例的结构化输出(如报告或摘要)。
关键特性与优势
- 状态维护 :确保多步工作流的一致性。
- 领域特定智能 :适应特定领域的定制规则。
- 扩展性 :高效处理大规模文档处理。
- 增强生产力 :减少人工工作量并增强人类专业知识。
可视化表示
- 单代理RAG图
- 多代理RAG图
- 分层RAG工作流
- 基于图的RAG工作流
- ADW工作流
Agentic RAG框架的比较分析
下 表提供了三种架构框架的全面比较分析: 传统RAG、Agentic RAG和代理式文档工作流(ADW)。 该分析突出了它们各自的优势、劣势和最佳适用场景,为跨多样化用例的适用性提供了宝贵见解。
特性 | 传统RAG | Agentic RAG | 代理式文档工作流(ADW) |
---|---|---|---|
重点 | 孤立的检索和生成任务 | 多代理协作和推理 | 以文档为中心的端到端工作流 |
上下文维护 | 有限 | 通过记忆模块实现 | 在多步工作流中维护状态 |
动态适应性 | 最小 | 高 | 针对文档工作流定制 |
工作流编排 | 无 | 编排多代理任务 | 集成多步文档处理 |
外部工具/API的使用 | 基本集成(如检索工具) | 通过API和知识库扩展 | 深度集成业务规则和领域特定工具 |
扩展性 | 限于小数据集或查询 | 适用于多代理系统 | 适用于多领域企业工作流 |
复杂推理 | 基础(如简单问答) | 多步推理与代理 | 跨文档的结构化推理 |
主要应用 | 问答系统、知识检索 | 多领域知识和推理 | 合同审查、发票处理、索赔分析 |
优势 | 简单性、快速设置 | 高准确性、协作推理 | 端到端自动化、领域特定智能 |
挑战 | 上下文理解不足 | 协调复杂性 | 资源开销、领域标准化 |
关键要点
- 传统RAG 最适合需要基本检索和生成能力的简单任务。
- Agentic RAG 在多代理协作推理中表现出色,适用于更复杂的多领域任务。
- 代理式文档工作流(ADW) 为企业级应用(如合同分析和发票处理)提供了定制的文档中心解决方案。
应用
代理式检索增强生成(RAG)系统在多个行业中具有变革性潜力,能够实现智能检索、多步推理和动态适应复杂任务。 以下是Agentic RAG系统产生重大影响的关键领域:
1. 医疗与个性化医学
- 问题 :快速检索和合成医学知识以支持诊断、治疗计划和研究。
- 应用 :
- 利用多模态数据(如患者记录、医学文献)的临床决策支持系统。
- 自动化生成带有相关上下文参考的医疗报告。
- 多跳推理分析复杂关系(如疾病到症状的映射或治疗到结果的相关性)。
2. 教育与个性化学习
- 问题 :为多样化学习者提供个性化和适应性学习体验。
- 应用 :
- 设计能够实时检索知识和提供个性化反馈的智能导师。
- 根据学生进度和偏好生成定制教育内容。
- 多代理系统用于协作学习模拟。
3. 法律与合同分析
- 问题 :分析复杂的法律文档并提取可操作的见解。
- 应用 :
- 合同摘要和条款比较,与法律标准进行上下文对齐。
- 检索先例案例和法规指南以确保合规性。
- 迭代工作流
挑战与未来方向
尽管代理增强检索生成(Agentic RAG)系统展现出巨大的潜力,但仍存在一些未解决的挑战和研究机会:
挑战
- 多代理系统中的协调复杂性 :
- 管理多个代理之间的通信和协作可能导致效率低下和计算开销增加。
- 平衡任务分配和解决代理之间的冲突仍然是一个关键问题。
- 伦理与负责任的AI :
- 在医疗和金融等敏感领域确保无偏见的检索和决策。
- 解决数据隐私问题,构建符合伦理标准的透明系统。
- 可扩展性与延迟 :
- 扩展Agentic RAG系统以处理大规模数据集和高频查询,同时不牺牲响应时间。
- 解决多代理和图工作流中的延迟问题。
- 人机协作 :
- 设计有效整合人类监督与自主代理的系统,以应对需要领域专业知识的任务。
- 在利用AI代理优势的同时,保持用户的信任和控制。
- 扩展多模态能力 :
- 整合文本、图像、音频和视频数据,以生成更丰富和全面的输出。
- 处理实时应用中的多模态推理复杂性。
未来方向
- 增强的代理协调 :
- 开发更强大的协调框架,用于分层和多代理系统。
- 引入自适应学习机制,动态改进任务分配。
- 领域特定应用 :
- 为法律分析、个性化教育和高级科学研究等特定领域定制Agentic RAG系统。
- 伦理AI与治理框架 :
- 构建工具以监控、解释和减轻AI输出中的偏见。
- 制定高风险环境中伦理部署的政策和指南。
- 高效的图推理 :
- 优化大规模实际应用中的图工作流。
- 探索结合图推理与神经网络的混合方法。
- 人机协同 :
- 设计直观的界面和工作流,使人类能够有效地与Agentic RAG系统交互。
- 关注可解释性和以用户为中心的设计。
RAG代理分类的实现:技术与工具
技术 | 工具 | 描述 | 笔记本 |
---|---|---|---|
单代理RAG | LangChain, FAISS, Athina AI | 使用AI代理通过向量数据库和网络搜索找到并生成答案。 | 查看笔记本 |
LlamaIndex, Vertex AI (向量存储, 文本嵌入, LLM), Google Cloud Storage | 展示使用LlamaIndex和Vertex AI的单路由器Agentic RAG系统,用于上下文检索和响应生成。 | 查看笔记本 | |
LangChain, IBM Granite-3-8B-Instruct, Watsonx.ai, Chroma DB, WebBaseLoader | 使用IBM Granite-3-8B-Instruct模型在Watsonx.ai中构建Agentic RAG系统,以回答复杂查询并提供外部信息。 | 查看笔记本 | |
LangGraph, Chroma, NVIDIA推理微服务 (NIMs), Tavily搜索API | 该系统使用基于路由器的架构,决定查询应由RAG管道(从向量数据库检索)还是网络搜索管道处理。AI代理评估查询主题并将其路由到适当的管道以进行信息检索和响应生成,确保准确、相关和上下文增强的答案。 | 查看笔记本 | |
LlamaIndex, Redis, Amazon Bedrock, RedisVectorStore, LlamaParse, BedrockEmbedding, 语义缓存 | 该系统实现了基于ReAct代理的RAG管道,代理与Redis支持的索引和向量存储交互,以从PDF文档中检索和处理数据。它使用Amazon Bedrock嵌入和LlamaIndex处理文档、构建嵌入并处理基于检索的增强生成。此外,语义缓存通过减少对重复或相似用户问题的冗余LLM查询来优化系统,提高响应时间和效率。 | 查看笔记本 | |
多代理RAG协调器 | AutoGen, SQL, AI搜索索引 | 该协调器利用多代理系统通过协调代理交互促进复杂任务执行。使用工厂模式和各种预定义策略(例如,用于检索增强生成的classic_rag和用于将自然语言翻译为SQL的nl2sql),系统支持灵活的多代理协作,用于数据库查询和文档检索等任务。协调器支持代理通信、迭代响应和可定制策略,为多样化用例提供高度适应性。 | 查看笔记本 |
分层多代理RAG | Weaviate, ExaSearch, Groq, crewAI | 该方法使用分层代理架构,多个代理各自负责特定任务或工具。管理器代理协调专门代理(如用于内部文档检索的WeaviateTool、用于网络搜索的ExaSearchTool和用于快速AI推理的Groq)以处理复杂查询。该灵活的任务导向系统支持各种用例,如QA和工作流自动化。 | 查看笔记本 |
纠正RAG | LangChain, LangGraph, Chromadb, Athina AI | 精炼相关文档,删除不相关文档或进行网络搜索。 | 查看笔记本 |
LangChain, FAISS, HuggingFace推理API, SmolAgents, HyDE, 自查询 | 该系统结合查询重构和自查询策略,解决传统RAG系统的局限性。它通过批判检索文档的相关性并在需要时重新查询来执行迭代检索。代理精炼查询以提高语义相似性并确保更高的准确性。自评分机制评估检索信息的质量,通过迭代改进增强结果。该系统通过减少虚构内容并提高检索相关性,符合纠正RAG原则。 | 查看笔记本 | |
自适应RAG | LangChain, LangGraph, FAISS, Athina AI | 根据查询类型调整检索方法,使用索引数据或网络搜索。 | 查看笔记本 |
关于Agentic RAG的博客和教程
- DeepLearning.AI: 代理如何提高LLM性能。 DeepLearning.AI
- Weaviate博客: 什么是Agentic RAG? Weaviate博客
- LangGraph CRAG教程: LangGraph CRAG: 上下文检索增强生成教程。 LangGraph CRAG
- LangGraph自适应RAG教程: LangGraph自适应RAG: 自适应检索增强生成教程。 LangGraph自适应RAG . 访问日期: 2025-01-14.
- LlamaIndex博客: 使用LlamaIndex的Agentic RAG。 LlamaIndex博客
- Hugging Face Cookbook. Agentic RAG: 通过查询重构和自查询加速检索增强生成。 Hugging Face Cookbook
- Hugging Face Agentic RAG: https://huggingface.co/docs/smolagents/en/examples/rag
- Qdrant博客. Agentic RAG: 结合RAG与代理以增强信息检索。 Qdrant博客
- Semantic Kernel: Semantic Kernel是微软的开源SDK,集成了大语言模型(LLMs)到应用程序中。它支持代理模式,能够创建自主AI代理,用于自然语言理解、任务自动化和决策。它已在ServiceNow的P1事件管理等场景中使用,以促进实时协作、自动化任务执行和无缝检索上下文信息。
- GitHub - 使用Semantic Kernel的RAG
- GitHub - Semantic Kernel
- ServiceNow案例研究
Agentic RAG的实际应用与用例
- AWS机器学习博客. Twitch如何使用Agentic工作流与RAG在Amazon Bedrock上加速广告销售。 AWS机器学习博客
- LlamaCloud演示库. 使用LlamaCloud的患者案例摘要工作流。 GitHub 2025. 访问日期: 2025-01-13.
- LlamaCloud演示库. 使用LlamaCloud的合同审查工作流。 GitHub
- LlamaCloud演示库. 使用LlamaCloud的汽车保险索赔工作流。 GitHub
- LlamaCloud演示库. 使用LlamaCloud的研究论文报告生成工作流。 GitHub
值得注意的相关概念
- 代理设计模式第1部分
- 代理设计模式第2部分,反思
- 代理设计模式第3部分,工具使用
- 代理设计模式第4部分,规划
- 代理设计模式第5部分,多代理协作
- 使用LlamaIndex构建Agentic RAG
- 使用AutoGen的AI代理设计模式
- LangGraph Agentic RAG
参考文献
关于Agentic RAG的研究论文
1. 单代理RAG(基于路由器)
- Search-o1: 代理增强搜索的大推理模型 https://arxiv.org/abs/2501.05366
2. 多代理RAG
- 用于时间序列分析的代理增强检索生成 https://arxiv.org/abs/2408.14484
3. 纠正RAG
- 企业系统的代理AI驱动技术故障排除 https://arxiv.org/abs/2412.12006
- 纠正RAG (CRAG) https://langchain-ai.github.io/langgraph/tutorials/rag/langgraph\_crag/
- 纠正检索增强生成 https://arxiv.org/abs/2401.15884
- 企业系统的代理AI驱动技术故障排除 https://arxiv.org/abs/2412.12006
4. 自适应RAG
- Langgraph自适应RAG https://langchain-ai.github.io/langgraph/tutorials/rag/langgraph\_adaptive\_rag/
- MBA-RAG: 一种基于Bandit的自适应检索增强方法 https://arxiv.org/abs/2412.01572
- CtrlA: 通过内在控制的自适应检索增强生成 https://arxiv.org/abs/2405.18727
- Adaptive-RAG: 通过问题复杂性学习适应检索增强大语言模型 https://arxiv.org/abs/2403.14403
- AT-RAG: 一种通过主题过滤和迭代推理增强查询效率的自适应RAG模型 https://arxiv.org/abs/2410.12886
5. 图增强RAG
- GeAR: 图增强的检索增强生成代理 https://arxiv.org/abs/2412.18431
- Agent-G: 一种图检索增强生成的代理框架 https://openreview.net/forum?id=g2C947jjjQ
添加微信,回复”RAG“进入交流群