【开源-AgentRL】创新强化学习 多项任务超闭源模型

《AGENTRL: Scaling Agentic Reinforcement Learning with a Multi-Turn, Multi-Task Framework 》创新强化学习方式,采用策略交叉化与多任务优势归一化、人物混和训练等方式,在知识图谱问答、计算机指令执行等领域,超越了Claude、gpt-5等闭源模型,代码地址

第一章:当前大语言模型智能体(LLM Agent)在强化学习中的系统性缺陷分析

本文基于论文《AGENTRL: Scaling Agentic Reinforcement Learning with a Multi-Turn, Multi-Task Framework》(Zhang et al., 2025)系统梳理当前 LLM 智能体(agent)在强化学习(RL)训练中所面临的基础设施与算法层面的核心缺陷。这些缺陷严重制约了通用智能体(generalist agent)在多回合、多任务场景下的可扩展性、稳定性与泛化能力。

1. 基础设施层面的缺陷

1.1 同步 Rollout-训练架构导致 GPU 利用率低下

当前多数 RL 框架(如 OpenRLHF、NeMo-Aligner)采用同步生成---训练(synchronous generation--training)流程。论文指出(Section 2):

"在智能体任务中,生成长轨迹并频繁与环境交互速度慢、耗时高且高度可变......GPU 必须等待长轨迹生成完成,造成显著的空闲气泡(idle bubbles),严重降低训练效率。"

这种同步设计在单回合任务(single-turn)中尚可接受,但在多回合(multi-turn)场景中,不同轨迹长度差异极大,导致 GPU 资源严重浪费。论文图 3 直观展示了同步与异步架构的资源调度差异。

1.2 缺乏对异构环境的统一支持

当前 RL 框架普遍未提供标准化的异构环境(heterogeneous environments)集成机制。论文强调(Section 2):

"多任务 RL 要求架构能够管理多样化的环境。主要挑战在于环境接口、状态---动作表示和计算需求的差异性。"

例如,在 ALFWorld(文本环境)、WebShop(网页交互)、DB(SQL 查询)等任务中,动作空间、反馈信号与工具调用方式完全不同。现有框架(如 VeRL、RAGEN)虽支持单一环境,但无法统一异构环境生命周期管理(见 Table 1)。

【我认为】这种碎片化环境支持迫使研究者重复开发适配器,极大阻碍了可复现性和生态扩展。AGENTRL 通过函数调用(function-call)统一接口(Section 3.1)是一个有效解法,但尚未覆盖带状态依赖的 GUI 交互等更复杂模态。

2. 算法层面的缺陷

2.1 探索能力在多回合场景中急剧衰减

在多回合任务中,状态空间呈指数级膨胀(large state space),而标准策略梯度方法(如 PPO)在训练过程中倾向于"过早收敛":

"模型探索通常随训练进行而下降。该问题在多回合设置下更为严重......重复使用自身生成数据训练会导致能力退化与方差降低(model collapse)。"(Section 3.1, 引用 Shumailov et al., 2024)

这导致智能体陷入局部最优策略,无法发现更优的长程决策路径。例如在 KG(知识图谱)任务中,模型可能因早期错误跳过关键工具调用,后续无法纠正。

2.2 多任务训练中的任务干扰与训练不稳定

当多个任务联合训练时,不同任务在奖励尺度、轨迹长度、采样效率上存在巨大差异:

"标准 RL 算法在不同任务上以极不均衡的速率学习......一个任务可能显著提升,另一个却几乎无进展,导致训练不稳定和性能失衡。"(Section 3.2)

从数学角度看,PPO 的目标函数为:
L PPO ( θ ) = E t [ min ⁡ ( r t ( θ ) A ^ t , clip ( r t ( θ ) , 1 − ϵ , 1 + ϵ ) A ^ t ) ] L_{\text{PPO}}(\theta) = \mathbb{E}_t \left[ \min\left( r_t(\theta) \hat{A}_t, \text{clip}(r_t(\theta), 1-\epsilon, 1+\epsilon) \hat{A}_t \right) \right] LPPO(θ)=Et[min(rt(θ)A^t,clip(rt(θ),1−ϵ,1+ϵ)A^t)]

其中优势估计 A ^ t \hat{A}_t A^t 若未归一化,高奖励任务(如 WebShop 成功率 60%)会主导梯度更新,压制低奖励任务(如 OS 仅 30%),造成负迁移(negative transfer)。

3. 现有框架的综合能力缺失(见 Table 1)

论文 Table 1 对比了 8 种主流 RL 框架,发现:

  1. 无一框架同时支持:多回合 + 多任务 + 完全异步 + 交互式环境 + 异构环境。
  2. 即使是最先进的 RAGEN、GiGPO 等,也仅支持多回合或异构环境中的单项,缺乏系统级整合

这意味着当前研究仍处于"特化模型孤岛"阶段,无法构建真正意义上的通用智能体。

4. 实证层面的失败案例(Failure Modes)

论文 Table 7 提供了 Qwen2.5-14B 在训练前的失败模式:

环境 "完成任务"率 "达到回合上限"率
AlfWorld 0.070 0.68
OS 0.548 0.444

这表明:基线模型无法有效规划长程动作序列 ,常因无效探索耗尽回合。例如在 ALFWorld 中,"基线模型反复尝试无效动作(如 look),而不使用 take_action 工具"(Section E.5.3)。这暴露了工具调用能力与任务分解能力的严重缺失

【我认为】这一问题根源在于监督微调(SFT)阶段缺乏对工具协议(tool contract)的强制约束,而纯 RL 训练又难以从零探索出合规行为。AGENTRL 选择直接从 Instruct 模型 RL 微调,虽有效,但冷启动效率仍有优化空间------例如引入课程学习(curriculum learning)逐步放开动作空间。


综上,当前 LLM 智能体在 RL 训练中面临基础设施僵化、算法探索不足、多任务干扰严重、框架能力碎片化四大结构性缺陷。AGENTRL 正是针对这些痛点,提出了系统性解决方案,其核心思想将在后续章节展开。


第二章:AGENTRL 的系统方法论详解

本章系统解析论文《AGENTRL: Scaling Agentic Reinforcement Learning with a Multi-Turn, Multi-Task Framework》的核心技术路径,包括训练数据构造环境接口设计异步训练架构核心算法策略 (Cross-Policy Sampling 与 Task Advantage Normalization)以及训练与评估实现细节。所有内容均基于原文精准引用并翻译,面向专业工程师深度还原方法细节。

1. 训练数据构造:扩展与统一 AGENTBENCH

1.1 数据集来源与合成策略

论文在附录 D.2 明确指出其数据构建采用三阶段策略:

"我们采用多角度数据收集策略,针对每个环境的独特特性进行定制......(1)直接采用现有数据集;(2)通过 Self-Instruct 合成数据;(3)引入外部高质量数据集增强多样性。"

具体实施为:

  1. ALFWorld 与 WebShop:直接使用官方训练集(原文:"For environments like AlfWorld and WebShop... we directly incorporated these official datasets");
  2. OS、KG、DB:因缺乏训练数据,采用 Self-Instruct 方法,调用 o3 与 Claude-Sonnet-4 API 生成高质量样本(原文:"we employed the Self-Instruct methodology... to efficiently sample and filter a large volume of high-quality training instances");
  3. DB 任务增强:引入 BIRD 基准的训练样本(Li et al., 2023),提升 SQL 生成多样性与难度(原文:"we augmented our dataset with the training samples provided by the BIRD benchmark")。

1.2 数据标准化:Function-Call 格式统一

所有任务的动作空间被统一重构为 OpenAI Function Call 格式。例如在 KG 任务中:

"我们识别并实现了七个工具,包括 get_relations、get_neighbors、count 等......环境交互逻辑被修改以支持 Function Call 格式的外部请求。"(附录 D.3)

这意味着每个动作 a t a_t at 不再是自由文本,而是结构化 JSON,如:

json 复制代码
{"name": "get_neighbors", "arguments": {"entity": "#0"}}

该格式由 LLM 的 tool_choice 机制生成,严格约束动作空间,大幅降低无效探索。

【我认为】这种格式虽提升可靠性,但牺牲了 LLM 的创造性表达能力。在开放域任务(如 GUI 操作)中,可能需保留部分自由文本以处理未建模动作。AGENTRL 的强约束更适合封闭动作集任务。

2. 异步训练基础设施:解耦 Rollout 与训练

2.1 完全异步流水线设计

论文提出"完全异步生成---训练流水线"(fully-asynchronous generation--training pipeline),如图 3 所示:

"Rollout 引擎在专用资源组中运行,与训练模块异步执行。训练模块在每次更新后持续从 Rollout 引擎拉取可用数据,无需等待整批轨迹完成。"(Section 3.1)

关键技术细节包括:

  • 动态批大小:训练批次大小在一定范围内浮动,避免 GPU 空闲;
  • 协程调度:利用协程(coroutine)填充 GPU 空闲槽位;
  • 数据队列上限:为防止严重 off-policy 偏差,"我们设置数据队列最大尺寸,并强制每步将所有轨迹移至训练引擎"(Section 3.1)。

性能提升显著:在 14B 模型上,异步架构吞吐达 56K tokens/s(64 GPU),而同步基线仅 29K(图 4)。

2.2 容器化环境部署架构

如图 5 所示,环境部署采用"中心控制器 + 容器化 Worker"架构:

  • 统一 Worker API:所有任务通过相同生命周期接口管理(start_sample, interact, list_sessions 等);
  • 容器隔离:每个任务环境运行于独立 Docker 容器,确保故障隔离与资源可控;
  • 高性能控制器:支持数千并发会话,采用非阻塞调度与超时自愈机制(附录 E.3)。

"控制器采用非阻塞分发策略,通过严格的锁获取层级确保无死锁......超时驱动的故障检测实现不稳定节点的自动注销与重入。"(附录 E.3)

3. 核心算法设计

3.1 Cross-Policy Sampling:增强多回合探索

为解决多回合任务中探索衰减问题,论文提出 Cross-Policy Sampling(图 6):

"在单轨迹中,每一步的动作从多个模型策略池中随机抽取,而非由单一模型生成。"(Section 3.1)

形式化地,轨迹变为:
τ c = ( s ( 0 ) , a c , ( 0 ) , r ( 1 ) , ...   ) , a c , ( t ) ∼ π M ( t ) ( ⋅ ∣ s ( t ) ) \tau^c = (s^{(0)}, a^{c,(0)}, r^{(1)}, \dots), \quad a^{c,(t)} \sim \pi_{M^{(t)}}(\cdot \mid s^{(t)}) τc=(s(0),ac,(0),r(1),...),ac,(t)∼πM(t)(⋅∣s(t))

其中 M ( t ) M^{(t)} M(t) 为 t 步随机选择的模型(附录 C, Eq. 20)。

实际实现中,使用当前模型与"陈旧引擎"(stale engine)交替采样:"我们将部分 rollout 引擎标记为 stale,其参数每多步才更新一次"(Section 3.1)。

案例验证(附录 E.5.1):在 KG 任务中,GLM-4 逻辑强但拒绝调用工具,Llama-8B 工具调用频繁但逻辑错误,而 Cross-Policy 组合二者,成功完成任务(图 9)。

【我认为】该方法本质是隐式集成探索,避免了显式维护多个策略的通信开销。但若模型间语义差异过大(如架构不同),可能导致状态不连续。作者仅在同一模型不同 checkpoint 间采样,是工程上的合理折衷。

3.2 Task Advantage Normalization:稳定多任务训练

针对多任务奖励尺度不一致问题,论文提出任务级优势归一化

"对每个任务 i,将其当前批次中所有 token 级优势估计归一化为零均值、单位方差。"(Section 3.2)

数学表达为:
A ~ i , s , g , t , k = A ^ i , s , g , t , k − μ i σ i , μ i = mean ( A i tok ) , σ i = std ( A i tok ) \tilde{A}{i,s,g,t,k} = \frac{\hat{A}{i,s,g,t,k} - \mu_i}{\sigma_i}, \quad \mu_i = \text{mean}(A^{\text{tok}}_i),\ \sigma_i = \text{std}(A^{\text{tok}}_i) A~i,s,g,t,k=σiA^i,s,g,t,k−μi,μi=mean(Aitok), σi=std(Aitok)

其中 A i tok A^{\text{tok}}_i Aitok 为任务 i 的所有 token 优势集合(Section 3.2, Eq. 1)。

该操作确保不同任务的梯度更新幅度对齐,防止高奖励任务主导训练。消融实验显示,移除该模块后 ALFWorld 训练曲线剧烈震荡(图 7b),平均性能下降 5.6%(表 6)。

【我认为】该方法优于常见的全局优势归一化,因后者会模糊任务特异性信号。但若某任务数据稀疏(如 KG), σ i \sigma_i σi 可能不稳定。可考虑加入平滑项 σ i ← max ⁡ ( σ i , ϵ ) \sigma_i \leftarrow \max(\sigma_i, \epsilon) σi←max(σi,ϵ),作者未提及此细节。

4. 训练与评估实现细节

4.1 训练设置

  • 基础算法:以 GRPO(Group Relative Policy Optimization)为基线(附录 E.2);
  • 采样策略:温度 0.8,每样本采样 8 条轨迹;
  • 奖励设计:二值奖励(成功为 1,失败为 0),超轮次或超长响应惩罚 -0.2;
  • 模型初始化:Qwen 系列直接从 Instruct 模型开始 RL;GLM-4-9B 需先经少量 SFT 以适配 Function Call 格式;
  • 硬件:H800 GPU,14B 模型至少 16 卡,支持线性扩展(图 4);
  • 推理引擎:SGLang + FSDP。

4.2 评估协议

  • 温度:0.8;
  • 重复次数:每任务 4 次,取平均;
  • 统一接口:支持 vLLM 或 SGLang 端点,确保 API 模型与本地模型评估一致(附录 E.2)。

综上,AGENTRL 通过数据统一化基础设施异步化探索策略交叉化多任务优势归一化,构建了一套可扩展、高效率、高稳定性的多回合多任务智能体 RL 训练框架。其方法论兼顾工程可行性与算法创新性,为通用智能体训练提供了系统级解决方案。


第二章(补充):AGENTRL 方法的实例详解

本节在第二章方法论基础上,通过具体实例展示 AGENTRL 如何构造新型训练数据、如何通过 Function Call 格式对齐异构任务、如何执行 Cross-Policy Sampling 与 Task Advantage Normalization,并辅以训练过程中的真实轨迹,以帮助专业工程师直观理解其技术细节。


1. 数据构造实例:Self-Instruct 合成 KG 任务训练样本

论文在附录 D.2 中提到:

"对于 OS、KG、DB 等任务......我们调用 o3 与 Claude-Sonnet-4 API 生成高质量样本。"

KG 任务 (知识图谱问答)为例,原始 AGENTBENCH 仅提供测试集,缺乏训练样本。AGENTRL 通过 Self-Instruct 链式合成构建训练数据,流程如下:

  1. 种子提示(Prompt Seed):

    复制代码
    You are an agent capable of querying a large knowledge base (e.g., Freebase). Given the question "Who is the director of *Inception*?", output a sequence of valid function calls that retrieves the answer step by step.
  2. API 调用生成轨迹(借助 Claude-Sonnet-4):

    • 模型输出:

      json 复制代码
      {"name": "get_relations", "arguments": {"entity": "Inception"}}
      → 返回: ["/film/film/directed_by", "/film/film/written_by"]
      {"name": "get_neighbors", "arguments": {"entity": "Inception", "relation": "/film/film/directed_by"}}
      → 返回: ["Christopher Nolan"]
      {"name": "submit_answer", "arguments": {"answer": "#1"}}
  3. 过滤与格式对齐

    • 仅保留最终答案正确调用序列合法的轨迹;

    • 将输出统一为 OpenAI Function Call 格式 ,封装为 RL 样本:

      python 复制代码
      {
        "instruction": "Who is the director of Inception?",
        "trajectory": [
          {"role": "assistant", "function_call": {"name": "get_relations", "arguments": {"entity": "Inception"}}},
          {"role": "environment", "content": "[\"/film/film/directed_by\", ...]"},
          {"role": "assistant", "function_call": {"name": "get_neighbors", ...}},
          ...
        ],
        "reward": 1.0
      }

【我认为】该方法虽高效,但依赖闭源 API 构造训练数据,存在可复现性风险。理想做法应是构建开源蒸馏 pipeline(如用 70B 模型生成 7B 训练数据),但作者因工程效率选择了 API 路线。


2. Function Call 格式统一:跨任务动作空间对齐示例

论文在附录 D.3 强调:

"我们将五个环境重构为 Function-Call Based 框架......例如 KG 环境中实现了 get_relations、get_neighbors、count 等七个工具。"

下面对比 ALFWorldDB 的原始动作 vs. AGENTRL 统一格式:

原始 ALFWorld 动作(自由文本):

复制代码
> take soapbar from sinkbasin
> go to cabinet 1

原始 DB 动作(自由 SQL):

复制代码
SELECT director FROM movies WHERE title = 'Inception';

AGENTRL 统一后格式(JSON Function Call):

ALFWorld

json 复制代码
{"name": "take_action", "arguments": {"object": "soapbar 1", "from": "sinkbasin 1"}}
{"name": "go_to", "arguments": {"target": "cabinet 1"}}

DB

json 复制代码
{"name": "execute_sql", "arguments": {"query": "SELECT director FROM movies WHERE title = 'Inception';"}}

关键点:所有动作均由 LLM 的 tool_choice="required" 机制强制输出结构化 JSON,禁止自由文本 。这使得 RL 策略更新可聚焦于合法动作子空间,大幅提升采样效率。


3. Cross-Policy Sampling 实例:KG 任务中 GLM-4 与 Llama-8B 的协同探索

论文图 9 提供了真实案例,展示 Cross-Policy Sampling 如何组合两个失败模型的成功路径:

  • 任务Who are actors that both starred in *The Dark Knight* and won an Oscar?

  • GLM-4 单独运行

    • 正确推理出答案应为 "Christian Bale, Heath Ledger";
    • 但拒绝调用工具 ,直接输出 "Final Answer: Christian Bale"(非 Function Call 格式)→ 失败
  • Llama-8B 单独运行

    • 频繁调用 get_neighbors,但参数错误(如 "entity": "Dark Knight Oscar");
    • 陷入无效工具循环 → 失败
  • Cross-Policy Sampling 运行(每步随机选模型):

    • Step 1(GLM-4):get_relations("The Dark Knight") → 正确获取 /film/film/starring
    • Step 2(Llama-8B):get_neighbors("The Dark Knight", "/film/film/starring") → 得到演员列表
    • Step 3(GLM-4):调用 count 筛选 Oscar 获奖者;
    • Step 4(Llama-8B):提交 submit_answer("#3")成功

"Cross sampling expands coverage of LG while preserving validity"(附录 C)

此例说明:多样性来自策略组合,而非单模型能力。即使单个策略有缺陷,交叉采样仍可拼出完整解路径。


4. Task Advantage Normalization 实例:ALFWorld 与 WebShop 的梯度对齐

假设一个 batch 包含以下 token-level 优势估计:

  • ALFWorld(任务难度高,奖励稀疏):

    • 优势值:[-0.1, -0.05, 0.02, ..., 1.2] → 均值 μ₁ = 0.03,标准差 σ₁ = 0.3
  • WebShop(任务较简单,奖励密集):

    • 优势值:[0.8, 1.0, 0.9, ..., 1.5] → 均值 μ₂ = 1.1,标准差 σ₂ = 0.2

若直接使用原始优势进行 PPO 更新,WebShop 的梯度幅度将远大于 ALFWorld,导致后者几乎不更新。

AGENTRL 执行归一化(公式 1):

  • ALFWorld:(1.2 - 0.03) / 0.3 ≈ 3.9
  • WebShop:(1.5 - 1.1) / 0.2 = 2.0

归一化后,两任务梯度幅度可比,避免高奖励任务主导训练。图 7b 显示:移除该模块后,ALFWorld 训练曲线剧烈震荡,验证其必要性。


5. 训练流程实例:从 Rollout 到 Update 的完整 pipeline

以 Qwen2.5-14B 在 WebShop 上的一步训练为例:

  1. Rollout 引擎(异步):

    • 采样温度 0.8,生成 8 条轨迹;
    • 每条轨迹含 4--12 步,每步为 Function Call;
    • 其中 4 条由当前模型生成,4 条由 stale engine(旧 checkpoint)生成(Cross-Policy);
  2. 环境反馈

    • 若用户指令为 "Find a red shirt under $20",最终点击正确商品 → reward = 1.0;
    • 若超 10 轮未完成 → reward = -0.2;
  3. 训练引擎

    • 收集来自所有任务的轨迹,按任务分组;
    • 对每组计算 token-level advantage(GAE);
    • 执行 Task Advantage Normalization(公式 1);
    • 使用 GRPO 目标 (附录 A)更新策略:
      L = E [ min ⁡ ( ρ A , clip ( ρ , 1 − ϵ , 1 + ϵ ) A ) ] L = \mathbb{E}\left[ \min\left( \rho A, \text{clip}(\rho, 1-\epsilon, 1+\epsilon) A \right) \right] L=E[min(ρA,clip(ρ,1−ϵ,1+ϵ)A)]
  4. 参数同步

    • 更新完成后,将新模型推送至部分 rollout 引擎;
    • stale 引擎延迟 K 步更新(K=3),维持多样性。

第三章:AGENTRL 方法的实例详解

本节在第二章方法论基础上,通过具体实例展示 AGENTRL 如何构造新型训练数据、如何通过 Function Call 格式对齐异构任务、如何执行 Cross-Policy Sampling 与 Task Advantage Normalization,并辅以训练过程中的真实轨迹,以帮助专业工程师直观理解其技术细节。


1. 数据构造实例:Self-Instruct 合成 KG 任务训练样本

论文在附录 D.2 中提到:

"对于 OS、KG、DB 等任务......我们调用 o3 与 Claude-Sonnet-4 API 生成高质量样本。"

KG 任务 (知识图谱问答)为例,原始 AGENTBENCH 仅提供测试集,缺乏训练样本。AGENTRL 通过 Self-Instruct 链式合成构建训练数据,流程如下:

  1. 种子提示(Prompt Seed):

    复制代码
    You are an agent capable of querying a large knowledge base (e.g., Freebase). Given the question "Who is the director of *Inception*?", output a sequence of valid function calls that retrieves the answer step by step.
  2. API 调用生成轨迹(借助 Claude-Sonnet-4):

    • 模型输出:

      json 复制代码
      {"name": "get_relations", "arguments": {"entity": "Inception"}}
      → 返回: ["/film/film/directed_by", "/film/film/written_by"]
      {"name": "get_neighbors", "arguments": {"entity": "Inception", "relation": "/film/film/directed_by"}}
      → 返回: ["Christopher Nolan"]
      {"name": "submit_answer", "arguments": {"answer": "#1"}}
  3. 过滤与格式对齐

    • 仅保留最终答案正确调用序列合法的轨迹;

    • 将输出统一为 OpenAI Function Call 格式 ,封装为 RL 样本:

      python 复制代码
      {
        "instruction": "Who is the director of Inception?",
        "trajectory": [
          {"role": "assistant", "function_call": {"name": "get_relations", "arguments": {"entity": "Inception"}}},
          {"role": "environment", "content": "[\"/film/film/directed_by\", ...]"},
          {"role": "assistant", "function_call": {"name": "get_neighbors", ...}},
          ...
        ],
        "reward": 1.0
      }

【我认为】该方法虽高效,但依赖闭源 API 构造训练数据,存在可复现性风险。理想做法应是构建开源蒸馏 pipeline(如用 70B 模型生成 7B 训练数据),但作者因工程效率选择了 API 路线。


2. Function Call 格式统一:跨任务动作空间对齐示例

论文在附录 D.3 强调:

"我们将五个环境重构为 Function-Call Based 框架......例如 KG 环境中实现了 get_relations、get_neighbors、count 等七个工具。"

下面对比 ALFWorldDB 的原始动作 vs. AGENTRL 统一格式:

原始 ALFWorld 动作(自由文本):

复制代码
> take soapbar from sinkbasin
> go to cabinet 1

原始 DB 动作(自由 SQL):

复制代码
SELECT director FROM movies WHERE title = 'Inception';

AGENTRL 统一后格式(JSON Function Call):

ALFWorld

json 复制代码
{"name": "take_action", "arguments": {"object": "soapbar 1", "from": "sinkbasin 1"}}
{"name": "go_to", "arguments": {"target": "cabinet 1"}}

DB

json 复制代码
{"name": "execute_sql", "arguments": {"query": "SELECT director FROM movies WHERE title = 'Inception';"}}

关键点:所有动作均由 LLM 的 tool_choice="required" 机制强制输出结构化 JSON,禁止自由文本 。这使得 RL 策略更新可聚焦于合法动作子空间,大幅提升采样效率。


3. Cross-Policy Sampling 实例:KG 任务中 GLM-4 与 Llama-8B 的协同探索

论文图 9 提供了真实案例,展示 Cross-Policy Sampling 如何组合两个失败模型的成功路径:

  • 任务Who are actors that both starred in *The Dark Knight* and won an Oscar?

  • GLM-4 单独运行

    • 正确推理出答案应为 "Christian Bale, Heath Ledger";
    • 但拒绝调用工具 ,直接输出 "Final Answer: Christian Bale"(非 Function Call 格式)→ 失败
  • Llama-8B 单独运行

    • 频繁调用 get_neighbors,但参数错误(如 "entity": "Dark Knight Oscar");
    • 陷入无效工具循环 → 失败
  • Cross-Policy Sampling 运行(每步随机选模型):

    • Step 1(GLM-4):get_relations("The Dark Knight") → 正确获取 /film/film/starring
    • Step 2(Llama-8B):get_neighbors("The Dark Knight", "/film/film/starring") → 得到演员列表
    • Step 3(GLM-4):调用 count 筛选 Oscar 获奖者;
    • Step 4(Llama-8B):提交 submit_answer("#3")成功

"Cross sampling expands coverage of LG while preserving validity"(附录 C)

此例说明:多样性来自策略组合,而非单模型能力。即使单个策略有缺陷,交叉采样仍可拼出完整解路径。


4. Task Advantage Normalization 实例:ALFWorld 与 WebShop 的梯度对齐

假设一个 batch 包含以下 token-level 优势估计:

  • ALFWorld(任务难度高,奖励稀疏):

    • 优势值:[-0.1, -0.05, 0.02, ..., 1.2] → 均值 μ₁ = 0.03,标准差 σ₁ = 0.3
  • WebShop(任务较简单,奖励密集):

    • 优势值:[0.8, 1.0, 0.9, ..., 1.5] → 均值 μ₂ = 1.1,标准差 σ₂ = 0.2

若直接使用原始优势进行 PPO 更新,WebShop 的梯度幅度将远大于 ALFWorld,导致后者几乎不更新。

AGENTRL 执行归一化(公式 1):

  • ALFWorld:(1.2 - 0.03) / 0.3 ≈ 3.9
  • WebShop:(1.5 - 1.1) / 0.2 = 2.0

归一化后,两任务梯度幅度可比,避免高奖励任务主导训练。图 7b 显示:移除该模块后,ALFWorld 训练曲线剧烈震荡,验证其必要性。


5. 训练流程实例:从 Rollout 到 Update 的完整 pipeline

以 Qwen2.5-14B 在 WebShop 上的一步训练为例:

  1. Rollout 引擎(异步):

    • 采样温度 0.8,生成 8 条轨迹;
    • 每条轨迹含 4--12 步,每步为 Function Call;
    • 其中 4 条由当前模型生成,4 条由 stale engine(旧 checkpoint)生成(Cross-Policy);
  2. 环境反馈

    • 若用户指令为 "Find a red shirt under $20",最终点击正确商品 → reward = 1.0;
    • 若超 10 轮未完成 → reward = -0.2;
  3. 训练引擎

    • 收集来自所有任务的轨迹,按任务分组;
    • 对每组计算 token-level advantage(GAE);
    • 执行 Task Advantage Normalization(公式 1);
    • 使用 GRPO 目标 (附录 A)更新策略:
      L = E [ min ⁡ ( ρ A , clip ( ρ , 1 − ϵ , 1 + ϵ ) A ) ] L = \mathbb{E}\left[ \min\left( \rho A, \text{clip}(\rho, 1-\epsilon, 1+\epsilon) A \right) \right] L=E[min(ρA,clip(ρ,1−ϵ,1+ϵ)A)]

AGENTRL 首先对每组(例如 8 条)轨迹计算 group-relative reward(如 GRPO 中的归一化奖励),然后将该轨迹级奖励通过 GAE(Generalized Advantage Estimation)或简化方式(如直接复制)分配给该轨迹中每一个生成 token。

  1. 参数同步
    • 更新完成后,将新模型推送至部分 rollout 引擎;
    • stale 引擎延迟 K 步更新(K=3),维持多样性。

在多回合(multi-turn)强化学习中,智能体策略 π θ会随着训练不断优化,但同时也趋于"过早收敛"(premature convergence)------即反复采样相似甚至相同的轨迹,导致探索能力下降。更严重的是,若所有 rollout 都由最新策略生成,会加剧 模型塌缩(model collapse)现象(Shumailov et al., 2024):模型在自我生成数据上反复训练,能力退化、方差缩小。

AG ENTRL 的 rollout 阶段,并非所有 rollout 引擎都使用最新的策略模型。一部分引擎被标记为 "stale",它们的模型参数每隔 K=3 次训练更新才同步一次,而不是每次都更新。这样一来,在生成轨迹时,有些动作来自当前策略,有些来自稍旧的策略,二者行为略有不同,从而在同一条轨迹中组合出更丰富的探索路径,避免所有 rollout 都陷入相似甚至相同的动作序列,有效提升探索多样性。


第四章:AGENTRL 的实验发现与深度分析

本章系统总结论文《AGENTRL》的实验发现,涵盖主结果对比多任务 vs. 单任务训练效果泛化能力验证消融研究失败模式分析。所有数据与结论均基于原文内容,面向专业工程师进行精准还原与技术解读。


1. 主实验结果:超越闭源大模型

1.1 整体性能对比

论文在 AGENTBENCH-FC 基准上对五个任务(ALFWorld、DB、KG、OS、WebShop)评估 AGENTRL 训练的开源模型 vs. 多个闭源模型。关键发现如下:

"所有 AGENTRL 训练模型(从 3B 到 32B)一致优于 GPT-5、Claude-Sonnet-4 和 DeepSeek-R1。"(Section 4.1)

具体数据(表 3)显示:

模型 ALFWorld DB KG OS WebShop 平均成功率
GPT-5 65.4 63.2 64.1 34.5 33.7 52.2%
Claude-Sonnet-4 73.6 70.1 63.4 45.3 34.6 57.4%
AGENTRL (Qwen2.5-32B) 94.5 70.4 77.0 51.7 58.6 70.4%

尤其在 ALFWorld 上,AGENTRL 提升 +62.4%(图 1a),表明 RL 对长程规划与工具调用的显著增益。

1.2 训练效率与吞吐

论文图 4 展示了异步架构的吞吐优势:

"在 14B 模型上,AGENTRL 达到 56K tokens/s(64 GPU),而同步基线仅 29K。"(Section 3.1)

吞吐近 2× 提升,直接支持大规模多回合 RL 训练。

【我认为】该吞吐优势在更大模型(如 70B)上可能更显著,因异步调度可缓解长序列生成的尾延迟问题。作者未测试 72B 模型 RL 训练,是一个实验缺口。


2. 多任务训练 vs. 单任务训练:通用性与性能无损

2.1 关键发现

论文表 4 对比了五组单任务模型(每个只在单一任务上训练)与一个五任务联合模型的性能:

"单任务模型在非训练任务上几乎完全失效(如 AGENTRL-ALFWorld 在 DB 任务上仅 49.7%),而多任务模型在所有任务上均接近各自单任务最优。"(Section 4.1)

具体结果:

方法 ALFWorld DB KG OS WebShop 平均
Best of five single-task models 89.7 73.9 72.2 43.1 60.3 67.8%
AGENTRL (one multi-task model) 91.5 72.2 72.8 43.6 58.5 67.7%

两者性能几乎无损(-0.1% ),证明多任务联合训练未引入显著负迁移

"这一结果表明,多任务训练能在不牺牲峰值性能的前提下,实现通用性。"(Section 4.1)

2.2 数据均衡策略

为避免任务间采样偏差,作者采用数据复制+轮询采样

"我们复制较小数据集,使每个任务在 batch 中出现频率一致......通过轮询方式交错采样。"(Section 4)

此策略确保梯度更新公平,是多任务稳定的关键工程细节。

【我认为】轮询采样虽简单有效,但未考虑任务难度差异。更优策略可能是动态课程采样(如按任务 loss 自适应调整采样权重),作者未探索此方向。


3. 泛化能力:在未见任务 BFCL-v3 上的表现

论文在 BFCL-v3(Berkeley Function Calling Leaderboard v3)上测试泛化能力:

"AGENTRL 模型在多轮任务上提升 +1.9%,整体提升 +3.0%。"(表 5)

模型 single-turn multi-turn overall
Qwen2.5-32B base 86.0 77.4 16.2
AGENTRL 85.8(↓0.2) 79.3(↑1.9) 19.2(↑3.0)

"这表明 RL 训练增强了函数调用的泛化能力,尤其在多回合场景。"(Section 4.1)

值得注意的是,单轮任务性能略有下降,可能因 RL 过度优化多回合探索策略,牺牲了单步准确性。

【我认为】这提示任务目标需对齐评估指标。若目标包含单轮能力,应引入混合奖励或蒸馏回退机制。


4. 消融研究:算法组件的贡献

4.1 Cross-Policy Sampling 的效果

表 6 与图 7a 显示:

"移除 Cross-Policy Sampling 后,平均性能下降 4.3%,KG 任务下降 12.0%。"(表 6)

图 7a(KG 训练曲线)表明:无交叉采样模型早期收敛更快但峰值更低,说明探索不足。

"Cross-policy sampling 能探索更多开放环境中的可能性状态,从而扩展模型能力边界。"(Section 4.2)

4.2 Task Advantage Normalization 的效果

同样在表 6 中,移除该模块导致:

  • ALFWorld:45.1% → 38.0%(↓7.1%)
  • 训练曲线剧烈震荡(图 7b)

"不同任务学习速率差异导致训练不稳定......归一化有效缓解任务干扰。"(Section 4.2)

数学上,该方法确保每个任务的优势分布满足:
A ~ i ∼ N ( 0 , 1 ) \tilde{A}_i \sim \mathcal{N}(0, 1) A~i∼N(0,1)

从而对齐梯度尺度。

【我认为】该归一化在小批量场景下可能受噪声影响(如 KG 样本少),可引入 EMA(指数移动平均) 平滑 μ i , σ i \mu_i, \sigma_i μi,σi,作者未提及。


5. 失败模式分析:RL 如何修正基线模型缺陷

5.1 ALFWorld 中的行为对比(表 7)

模型 "完成任务"率 "达到回合上限"率
Qwen2.5-14B(基线) 0.070 0.68
AGENTRL(RL) 0.926 0.074

"基线模型反复执行无效动作(如 look),而不调用 take_action 工具。"(附录 E.5.3)

而 RL 模型学会:

  • 优先搜索 countertop(而非盲目尝试 cabinet)
  • 正确使用 take → open → put 的动作序列

5.2 Cross-Policy Sampling 成功案例(图 9)

在 KG 任务中:

  • GLM-4 :逻辑正确但拒绝调用工具,直接输出答案 → 失败
  • Llama-8B :频繁调用工具但参数错误 → 陷入循环
  • Cross-Policy 组合 :GLM-4 规划路径 + Llama-8B 强制工具调用 → 成功

"该策略通过组合不同模型优势,拼出完整解路径。"(附录 E.5.1)

【我认为】这是隐式集成探索 的典范,但依赖于 rollout 引擎的异构性。若所有引擎来自同一 checkpoint(仅 stale),多样性可能受限。未来可引入轻量蒸馏模型池增强多样性。


6. 扩展发现:训练长度与收敛性

论文图 1b 显示:

"AGENTRL 在 3M 样本内收敛至 70.4% 平均成功率,起始点(w/o SFT)仅 37.2%。"
"训练超过 1000 步,在多任务混合设置下实现稳定收敛。"(附录 E.2)

这表明 RL 优化效率高,且无需预训练 SFT 阶段(Qwen 系列直接 RL)。

GLM-4-9B 需少量 SFT 冷启动,因其原生不支持 Function Call 格式。

【我认为】这暴露了模型架构与训练范式对齐的重要性 。理想框架应支持格式无关 RL,通过 adapter 或 prefix tuning 适配不同模型,而非强制统一输出格式。


综上,AGENTRL 的实验验证了其在性能效率通用性泛化能力上的全面优势,同时通过消融与案例分析揭示了其算法设计的核心价值。这些发现为构建可扩展、高可靠性的通用 LLM 智能体提供了坚实实证基础。

相关推荐
百***46802 小时前
IoT DC3 是一个基于 Spring Cloud 的开源的、分布式的物联网(IoT)平台本地部署步骤
物联网·spring cloud·开源
万岳科技程序员小金2 小时前
音视频课程上传、加密与播放技术详解:知识付费系统源码开发实践
开源·知识付费小程序·知识付费系统源码·知识付费app开发·开源源码
炸裂狸花猫5 小时前
开源CI&CD工具-Drone
ci/cd·云原生·容器·kubernetes·开源·drone
程思扬5 小时前
开源 + 实时 + 无网络限制:Excalidraw 是流程图协作新选择
网络·人工智能·阿里云·ai·开源·流程图
zhangfeng11335 小时前
学习文本大模型的学习路径,各种大模型对比和分类以及各个大模型对硬件的要求,开源大模型有哪些
学习·分类·开源
❀͜͡傀儡师5 小时前
docker部署开源监控软件hertzbeat
docker·容器·开源·hertzbeat
想用offer打牌6 小时前
修复seata的HikariCP中加载驱动程序类的问题
后端·架构·开源
酷柚易汛智推官6 小时前
阿里“千问”破局C端AI:开源基石与B端势能的双重革命
人工智能·开源·酷柚易汛
开发者导航7 小时前
【开发者导航】轻量可微调且开源的大语言模型家族:LLaMA
语言模型·开源·llama