【开源-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 框架,发现:
- 无一框架同时支持:多回合 + 多任务 + 完全异步 + 交互式环境 + 异构环境。
- 即使是最先进的 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)引入外部高质量数据集增强多样性。”
具体实施为:
- ALFWorld 与 WebShop:直接使用官方训练集(原文:“For environments like AlfWorld and WebShop… we directly incorporated these official datasets”);
- 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”);
- 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,如:
{"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 链式合成构建训练数据,流程如下:
-
种子提示(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. -
API 调用生成轨迹(借助 Claude-Sonnet-4):
- 模型输出:
{"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"}}
- 模型输出:
-
过滤与格式对齐:
- 仅保留最终答案正确且调用序列合法的轨迹;
- 将输出统一为 OpenAI Function Call 格式,封装为 RL 样本:
{"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 等七个工具。”
下面对比 ALFWorld 与 DB 的原始动作 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:
{"name": "take_action", "arguments": {"object": "soapbar 1", "from": "sinkbasin 1"}}
{"name": "go_to", "arguments": {"target": "cabinet 1"}}
DB:
{"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")→ 成功
- Step 1(GLM-4):
“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 上的一步训练为例:
-
Rollout 引擎(异步):
- 采样温度 0.8,生成 8 条轨迹;
- 每条轨迹含 4–12 步,每步为 Function Call;
- 其中 4 条由当前模型生成,4 条由 stale engine(旧 checkpoint)生成(Cross-Policy);
-
环境反馈:
- 若用户指令为 “Find a red shirt under $20”,最终点击正确商品 → reward = 1.0;
- 若超 10 轮未完成 → reward = -0.2;
-
训练引擎:
- 收集来自所有任务的轨迹,按任务分组;
- 对每组计算 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)]
-
参数同步:
- 更新完成后,将新模型推送至部分 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 链式合成构建训练数据,流程如下:
-
种子提示(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. -
API 调用生成轨迹(借助 Claude-Sonnet-4):
- 模型输出:
{"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"}}
- 模型输出:
-
过滤与格式对齐:
- 仅保留最终答案正确且调用序列合法的轨迹;
- 将输出统一为 OpenAI Function Call 格式,封装为 RL 样本:
{"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 等七个工具。”
下面对比 ALFWorld 与 DB 的原始动作 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:
{"name": "take_action", "arguments": {"object": "soapbar 1", "from": "sinkbasin 1"}}
{"name": "go_to", "arguments": {"target": "cabinet 1"}}
DB:
{"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")→ 成功
- Step 1(GLM-4):
“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 上的一步训练为例:
-
Rollout 引擎(异步):
- 采样温度 0.8,生成 8 条轨迹;
- 每条轨迹含 4–12 步,每步为 Function Call;
- 其中 4 条由当前模型生成,4 条由 stale engine(旧 checkpoint)生成(Cross-Policy);
-
环境反馈:
- 若用户指令为 “Find a red shirt under $20”,最终点击正确商品 → reward = 1.0;
- 若超 10 轮未完成 → reward = -0.2;
-
训练引擎:
- 收集来自所有任务的轨迹,按任务分组;
- 对每组计算 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。
- 参数同步:
- 更新完成后,将新模型推送至部分 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 智能体提供了坚实实证基础。
