news 2026/4/18 7:23:40

Improving Retrieval-Augmented Generation throughMulti-Agent Reinforcement Learning

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Improving Retrieval-Augmented Generation throughMulti-Agent Reinforcement Learning

Abstract

检索增强生成(Retrieval-Augmented Generation,RAG)被广泛用于将外部知识引入大语言模型,从而提升问答(QA)任务中的事实性并减少幻觉。一个标准的 RAG 流水线通常由多个组件组成,例如查询重写、文档检索、文档过滤以及答案生成。然而,这些组件通常通过监督微调分别进行优化,这可能导致各个组件的局部目标与“生成准确答案”这一整体目标之间产生不一致。

尽管近期已有工作尝试利用强化学习(RL)来优化 RAG 中的特定组件,但这些方法往往只关注包含两个组件的简单流水线,或未能充分刻画各模块之间复杂的相互依赖关系与协同交互。为了解决这些问题,我们提出将包含多个组件的复杂 RAG 流水线视为一个多智能体协作任务,其中每个组件都可以被看作一个强化学习智能体。

具体而言,我们提出了MMOA-RAG²(Multi-Module joint Optimization Algorithm for RAG,多模块联合优化算法),该方法采用多智能体强化学习,将所有智能体的目标统一到一个全局奖励上,例如最终答案的 F1 分数。我们在多个问答基准上的实验结果表明,MMOA-RAG 能够显著提升整个 RAG 流水线的整体性能,并优于现有的基线方法。此外,系统性的消融实验验证了各个组件的贡献,并表明 MMOA-RAG 能够适配不同的 RAG 流水线结构和评测基准。

1 Introduction

将 MMOA-RAG 应用于一个包含四个关键模块的 RAG 流水线:查询重写器、固定的文档检索器、文档选择器以及答案生成器。我们的核心目标通过将最终奖励定义为生成答案相对于真实答案的正确性(以 F1 分数衡量),来联合优化这些模块。为此,我们采用了多智能体 PPO(Multi-Agent PPO,MAPPO)算法 [53],该算法能够在完全协作的设置下实现高效的联合优化。这意味着所有模块以协作方式工作,其优化目标统一指向生成高质量答案。与依赖 DPO [60, 59] 或 PPO [29, 22] 的先前方法相比,MMOA-RAG 在不同流水线设计上具有更高的灵活性,并且更擅长促进多模块之间的协作。这种端到端的优化方式确保了每个模块的目标始终与生成准确答案这一整体目标保持一致。

为了验证 MMOA-RAG 建模与优化方法的有效性,我们基于Llama-3-8B-Instruct [7],在三个公开的问答数据集——HotpotQA [51]、2WikiMultihopQA [14] 和 AmbigQA [30] 上进行了实验。实验结果表明,MMOA-RAG 的性能优于一系列现有的 RAG 优化方法。此外,我们还进行了大量消融实验,以进一步分析在 RAG 系统中对多个模块进行联合优化的有效性与优势,以及 MMOA-RAG 在不同 RAG 流水线结构上的泛化能力。

本文的主要贡献如下:

  • 我们创新性地将 RAG 建模为一个多智能体协作任务,将 RAG 流水线中的多个模块视为独立的智能体

  • 我们采用多智能体强化学习算法,对包含四个关键模块(查询重写器、固定文档检索器、文档选择器和答案生成器)的复杂 RAG 系统进行联合优化。

  • 我们通过大量实验验证并展示了所提出框架的有效性和泛化能力。

2 Related Works

3 Method

3.1 将 RAG 建模为协作式多智能体强化学习(Co-MARL)

将 RAG 过程概念化为一个**协作式多智能体强化学习(Cooperative Multi-Agent Reinforcement Learning, Co-MARL)**框架。在该框架中,RAG 流水线中的每一个模块都被视为一个独立的强化学习(RL)智能体。该多智能体系统的总体目标是生成高质量的答案,这一目标与各个模块的个体优化目标是一致的。

我们定义一个四元组

⟨G,O,A,R⟩

其中,G 表示 Co-MARL 系统中的智能体集合,O 表示每个智能体可观测到的状态信息,A 表示每个智能体可执行的动作空间,R表示由所有智能体共享的奖励函数。整个系统的最终目标是最大化该共享奖励,从而提升评测指标并增强 RAG 系统的整体性能。

在本文中,我们采用Multi-Agent PPO(MAPPO)[53] 对 Co-MARL 框架中各智能体的策略进行优化。MAPPO 是对 PPO 算法 [38] 在多智能体环境下的扩展。在完全协作的场景中,与仅针对单智能体并使用个体奖励的 PPO 不同,MAPPO 使用全局共享奖励来促进所有智能体之间的协同优化。


3.2 MMOA-RAG 的整体架构

RAG 系统通常采用由多个相互连接模块组成的模块化架构。图 1 展示了我们提出的MMOA-RAG框架的整体结构,该框架由四个核心模块组成:

  • Query Rewriter(查询重写器)
    将初始问题 qqq(可能过于复杂或存在歧义,难以通过一次检索直接解决)重写为一组子问题,记为 subq\text{subq}subq。

  • Retriever(检索器)
    针对每个子问题分别从语料库中检索相关文档,并输出候选文档集合 D。

  • Selector(文档选择器)
    对候选文档集合 D 进行进一步筛选,得到对回答初始问题 q有用的文档子集 Dselected。

  • Generator(生成器)
    基于 Dselected生成对初始问题的预测答案 Anspredict​。

由于Query Rewriter、Selector 和 Generator均可以基于大语言模型(LLM)实现,因此可以将它们视为 RL 智能体 [31],并通过奖励信号进行参数更新。为了提高计算效率,这三个模块可以共享同一个 LLM。另一方面,由于将 Retriever 建模为 RL 智能体较为困难,我们采用一个固定的检索器,并将其视为环境的一部分。

MMOA-RAG 框架的核心目标在于对多个模块进行协同优化,使各模块的个体目标与最终生成高质量答案这一全局目标保持一致。我们使用 Generator 输出的预测答案 Anspredict\text{Ans}_{\text{predict}}Anspredict​ 所对应的评测指标(如F1 分数)作为共享奖励Rshared

鉴于 RAG 系统中各模块之间是完全协作关系,Rshared可用于训练所有智能体,这也是多智能体强化学习文献中的常见做法 [34, 53, 4]。此外,为了提升多智能体训练的稳定性并加速收敛,我们为每个智能体设计了对应的惩罚项 PQR​、PS 和 PG​。

下面是3.3 Detailed Configuration for Each Agent中文学术翻译,风格与前文保持一致,可直接接在你已有的第 3 节之后使用。


3.3 各智能体的详细配置

在本节中,我们将对第 3.1 节中定义的四元组
(G, O, A, R )
中的各个要素进行详细说明。其中,


表示系统中的全部智能体集合。

接下来,我们将分别介绍每个智能体 (i \in G) 的关键组成要素,包括:

  • 观测信息 (O_i ),

  • 动作空间 (A_i ),

  • 奖励函数 (R_i)。

这些要素共同定义了各个模块在协作式多智能体强化学习框架中的行为方式与优化目标。

3.3.1 Query Rewriter 的要素

观测(Observation)
Query Rewriter 的观测定义如公式 (1) 所示,由 Query Rewriter 的提示词 PromptQR(见表 3)以及初始问题 q 组成:

动作空间(Action Space)
Query Rewriter 的动作空间对应于大语言模型的词表,记为 V。这是因为我们通过提示 LLM 根据初始问题 q 生成一个或多个子问题:

奖励函数(Reward Function)
Query Rewriter 的奖励函数定义如公式 (3) 所示。其中,Rshared表示最终答案的评价指标,对应图 1 中的黄色部分。本文使用生成答案 Anspredict 的F1 分数作为共享奖励。

项 PQRP_{QR}PQR​ 是一个惩罚项,用于防止 Query Rewriter 在训练过程中生成过多的子问题。具体而言,当子问题数量超过 4 个时,PQR=−0.5;当子问题数量不超过 4 个时,PQR=0。

3.3.2 Selector 的要素

观测(Observation)
Selector 的观测定义如公式 (4) 所示,包含 Selector 的提示词 PromptS见表 4)、初始问题 q,以及包含 K 篇候选文档的文档集合 D:

动作空间(Action Space)
Selector 的动作空间仅由一组有限的词构成,如公式 (5) 所示。由于 Selector 的功能是输出对回答初始问题 q 有帮助的候选文档 ID,其动作空间被约束在这一有限集合中。该约束显著缩小了 Selector 的探索空间,并有助于提升训练过程的稳定性:

奖励函数(Reward Function)
Selector 的奖励函数同样由两部分组成:共享奖励 Rshared和惩罚项 PS​。
PSP_SPS​ 用于防止 Selector 生成重复的文档 ID,或输出不符合指定格式(如Document0,Document3,Document9)的结果。当 Selector 输出重复文档 ID 或格式错误时,PS=−1;否则,PS=0:

3.3.3 Generator 的要素

观测(Observation)
Generator 的观测定义如公式 (7) 所示,由 Generator 的提示词 PromptG(见表 5)、初始问题 q,以及 Selector 输出的文档子集 Dselected​ 组成:

动作空间(Action Space)
Generator 的动作空间与 Query Rewriter 相同:

奖励函数(Reward Function)
Generator 的奖励函数包含共享奖励 RsharedR_{\text{shared}}Rshared​ 以及惩罚项 PG​,其中 PGP_GPG​ 用于限制模型生成过长的答案。当生成答案超过预设长度阈值时,PG=−0.5P_G = -0.5PG​=−0.5,否则 PG=0。
实际上,各智能体的惩罚项 Pi(i∈G)在大多数情况下为 0,仅当输出不满足约束条件时才取负值:

3.4 MMOA-RAG 的训练过程

3.4.1 基于 SFT 的热启动(Warm Start)

在使用 Multi-Agent PPO 对多个模块进行联合优化之前,有必要对每个可训练模块进行热启动。热启动可以使模型更好地遵循任务指令,并在多智能体强化学习(MARL)的联合训练阶段有效缩小探索空间,从而提升探索与利用的效率。

在 MMOA-RAG 框架中,共有三个可训练模块:Query Rewriter、Selector 和 Generator。因此,我们分别为这三个任务构建监督微调(SFT)训练数据,并对其进行 SFT,以获得各模块的初始参数检查点。训练数据构建的具体细节见附录 B。

3.4.2 多智能体联合优化

经过 SFT 之后,LLM 在执行 Query Rewriter、Selector 和 Generator 功能时具备了更强的指令遵循能力,RAG 系统也获得了较为理想的初始性能。为了进一步提升整体表现,有必要对建模为完全协作多智能体系统的 RAG 框架进行联合训练,以强化各模块之间的协作。

我们采用与 StarCraft II 中 Multi-Agent PPO(MAPPO)[53] 类似的训练设置,多个智能体共享全局奖励 Rshared,共同优化

G={QR,S,G}

为降低计算开销,我们在智能体之间采用参数共享机制,使 QR、S 和 G 共用同一个 LLM。

在多智能体优化过程中,涉及三个模型:Actor 模型、Critic 模型以及 SFT 模型,其参数分别记为 θ、ϕ 和 θSF。
Actor 模型根据每个智能体的观测 Oi 生成输出 Answeri_i​;Critic 模型用于估计状态值函数 Vi,tϕV,这是强化学习中经典的 Actor–Critic 架构;SFT 模型作为 Actor 的基线模型,其作用与 InstructGPT [31] 类似。

训练目标是同时更新 Actor 和 Critic 模型参数。总体损失函数定义为:

Actor 损失函数如公式 (11) 所示,与单智能体 PPO [38] 类似,不同之处在于此处同时优化多个智能体:

其中,重要性采样比率定义为:

优势函数采用 GAE [37] 估计:

时序差分误差定义为:

最终奖励函数如公式 (15) 所示。与 InstructGPT 不同的是,我们无需训练额外的奖励模型,而是直接使用 Generator 生成答案 Anspredict 的 F1 分数作为所有智能体共享的奖励 Rshared:

Critic 模型的损失函数定义如下:

基于 MAPPO 的多智能体优化伪代码见附录 C 的算法 1,对应于图 1 所示的 MMOA-RAG 整体框架。最终,我们得到一个训练完成的 Actor 模型,用于后续推理与评估。

4.1 Experimental Settings

实验主要围绕以下三个研究问题展开:

RQ1:与现有的 RAG 优化方法相比,MMOA-RAG 的性能如何?
RQ2:RAG 流水线中各个模块的联合优化如何促进 MMOA-RAG 框架的整体效果?
RQ3:MMOA-RAG 是否能够在不同的 RAG 系统中展现良好的泛化能力?


4.1 实验设置

数据集与评估指标
我们在三个开放域问答(Open-Domain QA)数据集上,将 MMOA-RAG 与多种基线方法进行了对比实验,具体包括HotpotQA[51]、2WikiMultihopQA[14] 以及AmbigQA[30]。
对于这三个数据集,候选文档均从Wikipedia 段落中进行检索。


表 1:不同方法在各数据集上的性能对比。
表中所有结果均使用Contriever[16] 作为检索模型获得。在每个数据集中,性能最优的基线方法用下划线标出。符号表示 MMOA-RAG 相对于最佳基线方法的性能提升幅度。

我们采用三种关键评估指标——Accuracy(准确率)Exact Match(EM,完全匹配率)F1 分数——来评估各类 RAG 方法的性能。

实现细节
在大多数实验中,我们使用Contriever[16] 作为检索器(Retriever)。Selector 模块的输入始终为固定数量的候选文档,设定为K = 10。此外,所有基线方法以及 MMOA-RAG 均采用Llama-3-8B-Instruct[7]作为基础大语言模型。

我们将 MMOA-RAG 与多种基线方法进行了对比,包括:
不使用 RAG 的 LLM(LLM w/o RAG)未训练的原始 RAG(Vanilla RAG w/o train)经监督微调的原始 RAG(Vanilla RAG w SFT)SELF-RAG[1]、RetRobust[52]、Rewrite-Retrieve-Read[29]、BGM[22] 以及RAG-DDR[27]。

关于实验设置和各基线方法的更详细介绍,详见附录 D

4.2 与其他方法的比较

我们将MMOA-RAG与多种基线方法进行了对比分析,实验结果如表 1 所示。为确保对比的公平性,所有方法均采用Llama-3-8B-Instruct作为骨干大语言模型,并且所有基线方法均按照附录 D.2 中描述的实验设置重新实现。

首先,如表 1 所示,MMOA-RAG 在所有数据集和所有评估指标上均表现出最优性能,充分验证了其有效性。此外,可以观察到,Vanilla RAG w/o train在多个指标上的表现与LLM w/o RAG相当。这一现象表明,预训练的 Llama-3-8B-Instruct 难以有效利用外部知识进行答案生成,其原因可能在于预训练阶段未包含与 RAG 相关的任务,从而限制了模型对外部知识的利用能力。相比之下,Vanilla RAG w SFT在所有评估指标上均显著优于 Vanilla RAG w/o train,说明经过监督微调(SFT)后的 Llama-3-8B-Instruct 能够更有效地利用外部知识,从噪声较大的候选文档中提取关键信息,从而提升生成答案的质量。

Rewrite-Retrieve-ReadBGM方法分别通过引入查询重写模块和桥接模块对 Vanilla RAG 进行了增强,这两个模块均采用 PPO 算法进行训练。如表 1 所示,在多跳数据集HotpotQA2WikiMultihopQA上,Rewrite-Retrieve-Read 的性能优于 BGM,表明在多跳问答场景中,引入查询重写模块比增加桥接模块更为有效。而在单跳数据集AmbigQA上,Rewrite-Retrieve-Read 与 BGM 的性能则较为接近。

从方法设计角度来看,MMOA-RAG 可以被视为在 Vanilla RAG 的基础上同时引入了Query RewriterSelector两个模块,其功能分别对应于 Rewrite-Retrieve-Read 中的查询重写模块以及 BGM 中的桥接模块。MMOA-RAG 的核心优势在于:通过MAPPO对 Query Rewriter、Selector 和 Generator 三个模块进行联合优化,使各模块的优化目标与生成高质量答案这一整体目标保持一致。表 1 中的实验结果进一步表明,MMOA-RAG 在性能上显著超越了 Rewrite-Retrieve-Read、BGM 以及其他基线方法。

此外,我们还基于其他检索器BGE[48] 和E5[46] 对多种方法进行了实验,对应结果见附录 E 中的表 7。同时,我们还开展了跨域(out-of-domain)实验,其结果见附录 F 中的表 8。综合表 1、表 7、表 8 以及本节 4.2 中的分析,可以全面回答研究问题RQ1。此外,附录 I 中提供了案例分析,从直观层面展示了多模块联合优化方法的优势。

图 2:不同 Agent 优化的消融实验。
在该图中,MMOA-RAG w/o i(i ∈ {QR, S, G})表示在多智能体联合优化过程中去除第 i 个智能体的变体模型,其中 QR、S、G 分别代表 Query Rewriter、Selector 和 Generator。

4.3 不同 Agent 优化的消融实验

为证明在 RAG 系统中进行多智能体联合优化的必要性,我们在本节中开展了消融实验。如图 1 所示,MMOA-RAG 框架由三个智能体组成:
i ∈ {查询重写器(Query Rewriter,QR)、选择器(Selector,S)、生成器(Generator,G)}。

在图 2 中,MMOA-RAG w/o i表示在多智能体联合优化过程中将第 i 个智能体从完整优化流程中移除的变体模型。

如图 2 所示,完整版本的 MMOA-RAG(即对三个模块进行联合优化)取得了最高的性能。这一结果充分表明,多智能体联合优化在 RAG 系统中是行之有效的,也验证了同时优化多个模块的重要性

此外,在三种消融配置中,MMOA-RAG w/o S的性能表现最好。Selector 的主要作用是对候选文档集合 (D) 进行进一步筛选,得到质量更高的子集 (D_{\text{selected}}),从而提升 Generator 生成高质量答案 (Ans_{\text{predict}}) 的能力。然而,在 MAPPO 的联合优化过程中,Generator 在一定程度上学会了去噪能力,因此即使在联合优化阶段未对 Selector 进行优化,系统仍然能够取得较为理想的效果。

我们还基于 AmbigQA 数据集的消融实验,展示了训练过程中共享奖励 (R_{\text{shared}}) 的变化轨迹,如图 3 所示。从图 3 可以看出,MMOA-RAG 的奖励曲线收敛速度最快,且最终收敛值最高,这进一步说明了跨多个模块进行联合优化,能够显著且高效地提升 RAG 系统的整体性能。

同时,图 3 中MMOA-RAG w/o G的训练曲线明显慢于其他方法,而其在 AmbigQA 数据集上的测试结果(如图 2 所示)也是最差的。这一现象表明,在单跳问答任务的 AmbigQA 数据集上,Generator 模块是最为关键的组成部分

综上所述,图 2 和图 3 的实验结果共同回答了RQ2在 RAG 系统中同时优化多个模块,比仅优化单个模块更加有效

图 3:AmbigQA 数据集上的消融实验结果。
横轴表示训练样本数量,纵轴表示训练过程中得到的共享奖励 RsharedR_{\text{shared}}Rshared​(即 F1 分数)

4.4 不同模块配置下 RAG 系统的通用性实验

在本节中,我们评估了 MMOA-RAG 在优化具有不同智能体数量的 RAG 系统时的性能,具体结果如表 2 所示。在表 2 中,QR+S+G 表示由查询重写器(Query Rewriter,QR)、选择器(Selector,S)和生成器(Generator,G)组成的 RAG 系统配置。

表 2:不同模块配置下 RAG 系统的通用性实验结果。
表中第二列的SFTMAPPO分别表示在热启动训练阶段(第 3.4.1 节)和 MAPPO 联合训练阶段(第 3.4.2 节)下的对应模块配置结果。符号表示相较于 SFT 阶段,在 MAPPO 阶段所取得的性能提升。

5 结论与未来工作

本文将 RAG 系统建模为一个多智能体协作任务,其中将查询重写器(Query Rewriter)、选择器(Selector)和生成器(Generator)模块视为可学习的强化学习(RL)智能体。我们采用多智能体强化学习算法对这些智能体进行联合优化,使多个模块的优化目标与生成高质量答案这一最终目标保持一致。

实验结果表明,我们的建模方式和联合优化方法是有效的。全面的消融实验进一步验证了多模块联合优化的必要性与通用性,确立了 MMOA-RAG 作为一种优化 RAG 系统的有效方法。

在未来工作中,我们计划将 MMOA-RAG 应用于更加复杂的工作流场景中。这包括:将 RAG 工作流组织为有向无环图(DAG)的情形,以及涉及 agentic RAG 中动态工作流的情况。此外,评估 RAG 系统中各个模块的成本与时延也同样重要。在这方面,奖励函数的设计不应仅依赖于评测指标(例如本文中使用的 F1 分数),而应在部分协作的 RAG 场景中,力求在效果与成本之间取得合理平衡。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 15:41:13

基于Spring Boot的河南红色旅游景点管理系统_1o8gdfg0-java毕业设计

目录已开发项目效果实现截图开发技术系统开发工具:核心代码参考示例1.建立用户稀疏矩阵,用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式&…

作者头像 李华
网站建设 2026/4/18 6:25:25

19、Python 文件与目录操作:从比较到同步的全流程指南

Python 文件与目录操作:从比较到同步的全流程指南 在数据处理和管理的过程中,经常需要对文件和目录进行各种操作,如比较目录差异、合并数据、查找重复文件、删除文件、模式匹配以及文件同步等。Python 提供了丰富的库和功能,能够帮助我们高效地完成这些任务。 1. 比较目录…

作者头像 李华
网站建设 2026/4/18 6:26:24

Python自动化测试实战指南:从零开始构建高效测试体系

Python自动化测试实战指南:从零开始构建高效测试体系 【免费下载链接】Python自动化测试教程完整版PDF 本仓库提供了一份名为“Python自动化测试教程 完整版PDF”的资源文件。该教程专注于使用Python和Selenium进行自动化测试,适合希望快速上手自动化测试…

作者头像 李华
网站建设 2026/4/17 17:00:02

智能体优化新范式:动态强化学习驱动模块化架构革新

智能体优化新范式:动态强化学习驱动模块化架构革新 【免费下载链接】agentflow-planner-7b 项目地址: https://ai.gitcode.com/hf_mirrors/AgentFlow/agentflow-planner-7b 行业痛点:传统智能体的能力天花板 当开发者试图将大语言模型应用于复杂…

作者头像 李华
网站建设 2026/4/18 6:25:01

AI Agent资源推荐:从入门到实战的完整指南

AI Agent资源推荐:从入门到实战的完整指南 【免费下载链接】500-AI-Agents-Projects The 500 AI Agents Projects is a curated collection of AI agent use cases across various industries. It showcases practical applications and provides links to open-sou…

作者头像 李华