C-3PO:多智能体强化学习赋能检索增强生成

简介: 检索增强生成(Retrieval-augmented generation,RAG)作为一种关键范式,它通过融入外部知识来提升大型语言模型(LLMs)的能力。RAG的有效性很大程度上取决于检索器和大语言模型之间的对齐程度以及各组件间的紧密交互和协作。

前言

检索增强生成(Retrieval-augmented generation,RAG)作为一种关键范式,它通过融入外部知识来提升大型语言模型(LLMs)的能力。RAG的有效性很大程度上取决于检索器和大语言模型之间的对齐程度以及各组件间的紧密交互和协作。然而这些组件通常是独立开发的,没有共同训练,这可能会导致语义不匹配和次优交互:检索器可能无法根据 LLM 的需求提供合适的信息,而 LLM 可能难以生成有效的查询(query)来指引检索器或者无法无缝整合检索到的内容。

因此,该工作通过观察人类的搜索行为,发现人类在使用检索时通常涉及反复搜索查询、审查文档和规划推理等行为,直到在文档中找出正确的答案或者在脑海中浮现出正确的答案。因此,该工作模仿人类搜索行为,提出了C-3PO,这是一个以代理为中心的对齐框架,它采用轻量级的代理来促进检索器和 LLM 之间的通信,而无需修改或损害其原始功能。

C-3PO在单个代理模型中集成了一个多智能体系统,其中多个智能体以人类的工作方式协助整个 RAG工作流。为了更好的优化这个代理,C-3PO将检索器和 LLM 视为环境的一部分,采用多智能体强化学习进行端到端训练。其中,C-3PO引入了树状结构的Rollout机制和蒙特卡洛信用分配来改善不同智能体之间的奖励分配问题。实验结果表明,C-3PO在域内和分布外数据集,甚至是完全域外的检索器和LLM上,都取得了稳健的性能,展现了其即插即用的可扩展性和卓越的泛化能力。

论文地址:

https://arxiv.org/abs/2502.06205

项目地址:

https://chen-gx.github.io/projects/C-3PO

Demo地址:

https://www.modelscope.cn/studios/Decaderan/C-3PO/summary

协作的多智能体系统

(Cooperative Multi-agent System)

受人类行为的启发,C-3PO设计了三个专门的智能体——推理路由器、信息过滤器和决策者——以促进检索器和 LLM 之间的交流(图1)。这些智能体使用特定的指令在单个轻量级代理模型中充当不同的角色,协作管理 RAG 流程的各个方面。这种设计确保了高效的协调,同时保持了端侧部署的简单性。

图1. C-3PO的整体框架。(左上)在人类行为中,与高效 RAG 系统交互所需的基本认知能力。(右上)以代理为中心的对齐框架通过轻量级多智能体系统模拟这些人类交互。(底部)多智能体系统的端到端优化流程。

各个智能体的定义如下:

推理路由器(Reasoning Router)负责根据给定问题,确定最佳推理策略。

  1. 确定检索的必要性:如果认为不需要检索([No Retrieval]),则该问题由 LLM 直接处理,仅利用其固有知识。
  2. 确定问题的复杂性:如果认为需要检索,推理路由器会评估该问题的复杂性来确定后续推理策略。
  3. 对于简单问题,推理路由器生成单个查询([Retrieval] <query content>)来调用检索器以获取相关文档。然后,信息处理器过滤检索到的文档,以提取有帮助的内容。
  4. 对于复杂问题,推理路由器输出([Planning])来触发多步骤推理策略。

信息过滤器(Information Filter)负责处理和过滤检索到的信息。其状态空间包括问题、检索到的文档和当前推理目标(如果是[Planning]模式)。

决策者(Decision Maker)负责在[Planning]策略中,根据当前状态确定最佳的下一步动作。其状态空间包括问题、LLM 生成的路线图(Roadmap)以及推理历史中积累的文档。

  1. [Retrieval] <subquery content>:继续检索-过滤循环以获取有帮助的信息。
  2. [LLM]:认为信息已经足够,将积累的文档信息交给LLM进行回答。

同时,C-3PO定义了不同的协作策略来有效处理不同类型的问题:

  1. 直接回答策略(Direct Answering Strategy):无需额外信息,直接由LLM进行回答(对应[No Retrieval])。
  2. 单次传递策略(Single-pass Strategy):仅进行单次检索-过滤操作(对应[Retrieval]<query content>)。
  3. 多步推理策略(Multi-Step Reasoning Strategy):旨在处理需要 LLM 生成的路线图和多个检索过滤循环的复杂问题(对应 [Planning])。它通过以下三个阶段实现迭代信息收集和推理:
  4. LLM生成路线图:LLM 将复杂问题分解为一组结构化的子目标,为代理提供高层次的指导。
  5. 检索-过滤循环:在路线图的指导下,决策者评估当前进度,确定下一个目标,并为检索-过滤循环生成子查询,直到决策者确定累积的文档包含足够的信息来解决所有子目标。
  6. 获取最终答案:所有累积的信息都传递给 LLM 以生成答案。

值得注意的是, LLM 在[Planning]策略中只被调用两次(生成路线图和最终回答问题),从而最大限度地减少了计算开销。此外,检索-过滤的次数可能并不直接对应于子目标的数量,因为一次检索可能会解决多个子目标,或者需要多次尝试才能实现一个子目标。

通过这三种策略,该多智能体系统可以自适应地处理不同复杂度的问题。推理路由器会根据每个问题的特点自动选择最合适的策略:直接回答策略为一般知识提供即时响应;单次传递策略有效地解决只需一次检索的简单单跳问题;多步推理策略在LLM生成的Roadmap的指导下迭代推理,解决复杂问题。这种分层方法将计算工作量与问题复杂性相结合,确保最佳资源利用率,同时保持较高的响应质量。

多智能体代理优化

(Multi-Agent Proxy Optimization)

由于 LLM 生成的最终答案可以直接评估为系统级奖励,因此使用强化学习来优化代理模型是非常直观的。但是,代理中的每个智能体都充当RAG系统中的中间模块,仅负责 RAG 工作流的部分内容。这使得定义智能体级别的奖励变得困难。例如,由于后续文档过滤效果不佳,高质量的生成查询仍可能导致较低的系统级奖励。为了应对这一挑战,C-3PO提出了一种树状结构的rollout方法,用于稳健的在线策略学习,并在早期阶段采用确定性rollout,在后期阶段利用随机rollout扩大探索空间。

树状结构的信用分配机制

为了避免传统单一轨迹中奖励稀疏的问题,C-3PO提出了树状结构的rollout以进行信用分配,以期望的形式将系统级奖励分配给不同的智能体,以缓解每个智能体局部奖励的高方差问题。核心思想是通过强制推理路由器在每个问题的rollout过程中探索所有可能的推理策略来评估每个智能体的贡献(图1 底部)。

确定性rollout:如图1所示,C-3PO在rollout的第一阶段确定性地探索所有可能的策略分支([No Retrieval], [Retrieval], [Planning])来构建决策树,从而全面了解每个策略中智能体的决策如何影响最终结果。

随机rollout:一旦在确定性rollout中确定探索策略,后续rollout将采用随机采样的方式来扩展决策树。对于每个非终止节点,从代理模型 中随机抽取  个候选动作,用于逐层扩展深度为  的第 i 个智能体:

其中 表示第 个代理的任务特定指令, 表示深度 处的动态分支因子,平衡探索和计算效率。

蒙特卡洛信用分配机制

如图1所示,C-3PO不是为每个问题探索单个轨迹而是通过树状结构的探索创建一个包含多个轨迹的决策树。这种树结构使C-3PO能够追踪单个决策如何影响系统级结果。对于每个代理生成的节点 ,C-3PO基于系统级奖励以期望的形式计算每个智能体的奖励:

其中 表示从 可达的叶节点集合, 是叶节点 的最终奖励。

该工作提出的蒙特卡洛信用分配机制与单一轨迹部署相比具有几个关键优势:

(1) 树结构的探索彻底探索了每个问题的所有可能策略,为每个代理生成了大量中间训练示例(更大的探索空间)。

(2) 相比于在单个轨迹中将系统级奖励分配给每一个智能体,C-3PO使用树结构以概率期望的形式更准确地估计每个智能体节点的奖励。

实验效果

该工作从各个角度全面评估了C-3PO的性能,包括域内的单跳、多跳数据集(图2),域外最新的RAG评测数据集以及域外检索器和大模型上的性能(图3)。总体而言,仅优化少量参数(0.5B-1.5B)的情况下,C-3PO在各种单跳和多跳数据集上表现出出色的性能。而在各种域外设定下,C-3PO取得了非常鲁棒的结果,展现出其即插即用的特点。

图2. 在域内单跳、多跳数据集上的性能

图3. 在域外的数据集、检索器、大模型下的实验结果

此外,C-3PO对比了各类方法之间性能和推理开销之间的关系。由于轻量级的代理设计以及层次化的推理策略,C-3PO在推理性能和推理开销之间取得了较好的平衡。

总结

该工作提出了C-3PO,一个以代理为中心的对齐框架,它通过轻量级多智能体系统促进检索器和 LLM之间的通信。C-3PO通过利用多智能体强化学习、树状结构的Rollout和蒙特卡洛信用分配机制,端到端地优化了多个智能体,而无需修改现有的 RAG 组件。大量实验证明了C-3PO在不同的数据集、检索器和 LLM 上展现出卓越性能和强大的泛化能力。

点击链接阅读原文:C-3PO

目录
相关文章
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
基于通义千问:全AI自动驱动合同审查系统的技术解构与实践
“律杏法务云+通义千问”实现合同审查智能化跃迁,融合法律知识图谱与大模型技术,构建生成、审查、交互、进化闭环。支持智能清单生成、风险识别、条款补漏与AI对话,审查效率提升10倍,漏检率低于0.3%,推动法律科技进入AI新范式。
2025 1
|
编解码 计算机视觉
RT-DETR改进策略【Head】| 增加针对 大目标 的检测层 (四个检测头)
RT-DETR改进策略【Head】| 增加针对 大目标 的检测层 (四个检测头)
884 16
|
机器学习/深度学习 决策智能 网络架构
C-3PO:多智能体强化学习赋能检索增强生成
C-3PO:多智能体强化学习赋能检索增强生成
679 2
|
人工智能 自然语言处理 安全
千行百业,“义”不容辞:通义技术创新与商业实践
千行百业,“义”不容辞:通义技术创新与商业实践。本次分享分为两部分,首先介绍大模型的快速迭代与普及,探讨通义千问在精度和复杂任务执行上的突破;其次聚焦企业级落地,解决安全性、部署路径及模型调优三大问题。通过多模态理解(视觉、语音)和更强的生成控制力,携手伙伴服务各行业,推动技术向生产力转化,并关注公益应用,助力社会进步。
|
API 语音技术 开发者
用python实现文字转语音的5个较好用的模块
这篇文章介绍了五个Python模块:gtts、pyttsx3、baidu-aip、pywin32和speech,它们能够实现文本到语音的转换功能。
1666 1
|
API 数据处理 开发者
Polars中的急性与惰性API:性能优化与数据处理策略
Polars中的急性与惰性API:性能优化与数据处理策略
422 1
|
数据处理 Apache 流计算
【Flink】Exactly-Once的保证
【4月更文挑战第21天】【Flink】Exactly-Once的保证
|
并行计算 Linux iOS开发
llamafile:单个文件分发和运行LLM
为了方便更多的零基础的初学者体验大语言模型,llamafile 提出了单文件运行大模型的方案。
|
机器学习/深度学习 数据可视化 TensorFlow
NeRF系列(2):NeRF in the wild : Neural Radiance Fields for Unconstrained Photo Collections论文解读与公式推导
NeRF系列(2):NeRF in the wild : Neural Radiance Fields for Unconstrained Photo Collections论文解读与公式推导
1082 0
|
XML 存储 缓存
设计一个缓存策略,动态缓存热点数据
写在前面,因为我们最近的大作业项目需要用到热点排行这个功能,因为我们是要使用Elasticsearch来存储数据,然后最初设想是在ES中实现这个热点排行的功能,但是经过仔细思考,在我们这个项目中使用ES来做热点排行是一个很蠢的方式,因为我们这只是一个很小的排行,所以最终我们还是使用Redis来实现热点排行
907 1
设计一个缓存策略,动态缓存热点数据

热门文章

最新文章