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

目录
相关文章
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
基于通义千问:全AI自动驱动合同审查系统的技术解构与实践
“律杏法务云+通义千问”实现合同审查智能化跃迁,融合法律知识图谱与大模型技术,构建生成、审查、交互、进化闭环。支持智能清单生成、风险识别、条款补漏与AI对话,审查效率提升10倍,漏检率低于0.3%,推动法律科技进入AI新范式。
1084 1
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN): 从理论到实践
本文将深入浅出地介绍卷积神经网络(CNN)的工作原理,并带领读者通过一个简单的图像分类项目,实现从理论到代码的转变。我们将探索CNN如何识别和处理图像数据,并通过实例展示如何训练一个有效的CNN模型。无论你是深度学习领域的新手还是希望扩展你的技术栈,这篇文章都将为你提供宝贵的知识和技能。
1121 7
|
物联网 异构计算 Python
麦橘超然上线魔搭社区,免费生图和训练,文末返图有奖
麦橘超然是麦橘制作的基于Flux.1的模型,可以生成高度摄影写实和富有光影感的图片,尤其擅长表现人物的脸部和肌肤细节。麦橘之前的作品麦橘写实是各大文生图开源站点最受欢迎的模型之一。
1077 11
|
编解码 计算机视觉
RT-DETR改进策略【Head】| 增加针对 大目标 的检测层 (四个检测头)
RT-DETR改进策略【Head】| 增加针对 大目标 的检测层 (四个检测头)
737 16
|
机器学习/深度学习 决策智能 网络架构
C-3PO:多智能体强化学习赋能检索增强生成
C-3PO:多智能体强化学习赋能检索增强生成
478 2
|
API 语音技术 开发者
用python实现文字转语音的5个较好用的模块
这篇文章介绍了五个Python模块:gtts、pyttsx3、baidu-aip、pywin32和speech,它们能够实现文本到语音的转换功能。
1481 1
|
机器学习/深度学习 数据可视化 数据挖掘
PyTorch Geometric (PyG) 入门教程
PyTorch Geometric是PyTorch1的几何图形学深度学习扩展库。本文旨在通过介绍PyTorch Geometric(PyG)中常用的方法等内容,为新手提供一个PyG的入门教程。
PyTorch Geometric (PyG) 入门教程
|
数据安全/隐私保护 图形学
基于 LVGL 使用 SquareLine Studio 快速设计 UI 界面
基于 LVGL 使用 SquareLine Studio 快速设计 UI 界面
2628 0
|
自然语言处理 API 开发工具
Azure OpenAI申请与使用详细教程
本教程将向您介绍如何申请和使用 Azure OpenAI 服务。我们将逐步引导您完成整个过程,包括创建 Azure 账户、设置订阅、创建资源组、创建并配置 OpenAI 服务。
|
存储 缓存 小程序
【小程序开发必备】微信小程序常用API全介绍,附示例代码和使用场景
本篇博文介绍了微信小程序常用API,包括网络请求、数据缓存、交互反馈、设备、媒体、界面、开放接口等方面。每个API都附有详细的介绍和示例代码,以及使用场景。这些API可以帮助小程序开发者快速实现各种功能和交互效果,是小程序开发的必备工具。无论是初学者还是有一定经验的开发者,都能从本篇博文中学到很多实用的技巧和知识。
1651 0

热门文章

最新文章