多轮工具调用的轨迹很长,轨迹级 RL 只在终点记一次账。ARPO 先量出「工具返回后的 10–50 个 token 熵会陡升」,再用 P = α + β·ΔH 在超过阈值时从当前步分支采样;10 个推理任务上三个骨干的 Avg 都高于 GRPO/DAPO/Reinforce++,深度搜索也高于 GRPO。代价是新增 α、β、τ 三个超参,「一半工具调用」只在 Qwen2.5-7B 与 GRPO 的对比曲线上验证。
多轮工具调用把一条轨迹拉得很长,轨迹级 RL 以完整轨迹为采样单位,奖励在末端才出现,中间每个工具调用步没有单独的信用分配。作者先测到:工具返回后的 10–50 个 token 内,生成熵会陡升,搜索反馈比 Python 反馈更明显。
ARPO 把「熵变化」变成分支条件:每步工具调用后多生成 k 个 token,算 ΔH 与 P = α + β·ΔH;P 超过阈值 τ 就在该步展开 Z 条 partial rollout,把预算从「多走几条全程」改成「在关键岔路多试几种」。分支后的共享前缀与独立分支用 GRPO 的重要性采样比率做软优势归因。
结果:Table 1 的 10 个推理任务上,ARPO 在 Qwen2.5-3B、Llama3.1-8B、Qwen2.5-7B 三个骨干的 Avg 都最高;Table 2 的 deep search 上,Qwen3-8B/14B 的 GAIA Avg 都比 GRPO 高 6.8 个百分点。Figure 7 只在 Qwen2.5-7B 上比较 GRPO 的训练工具调用数;§4.6 正文称 ARPO 用一半工具调用达到更高准确率。
读完这节你应该知道:为什么多轮工具调用不能简单套用单轮 RL 的采样与记账方式。
Agentic RL 的目标仍是最大化带 KL 约束的期望奖励:maxπθ E[rφ(x, y)] − β·DKL(πθ ‖ πref)(Eq. 1)。区别在于 y 不再是一段一次性生成的回答,而是「思考 → 调用搜索/Python → 读返回 → 再思考」的多轮轨迹。轨迹级算法(GRPO、DAPO、Reinforce++)以完整轨迹为采样单位,奖励只在末端出现;中间哪一步工具调用值得多探索,算法本身没有信号。
论文 §2.2 先做了测量:对搜索型与 Python 型两种 agent,逐 token 统计生成熵。Figure 2 的三条观察是——(1) 每次工具调用后的前 10–50 个 token,熵会陡升;(2) 早期推理阶段熵也会上升,但仍低于收到工具反馈之后;(3) 搜索反馈带来的不确定性大于 Python 反馈。作者把原因归为外部反馈与模型内部推理之间的分布偏移:搜索结果是一大段自然语言,Python 返回的是确定性数字。
工具调用后,下一段生成的概率分布明显变平;这是「模型正在整合新信息」的直接读数。Figure 2
搜索返回长文本,熵波动更大;Python 返回数字,熵波动更小。两者不能用同一个固定分支预算。Figure 2
整条轨迹只有一个末端奖励;工具调用步没有独立的优势估计,探索只能靠「多采样整条轨迹」碰运气。§1
读完这节你应该知道:ARPO 之前的两种主流做法各自卡在哪里,以及论文的对比边界。
Tool-integrated reasoning 通过提示让模型在推理中调用工具,不做 RL。Table 1 里它在 Qwen 两个骨干上反而低于直接推理:Qwen2.5-3B 从 26.1 降到 25.1,Qwen2.5-7B 从 32.0 降到 31.0;但 Llama3.1-8B 从 28.8 升到 36.3。论文 §4.5 的概括是「limited and even lower than direct reasoning」,Table 1 并不支持这句话在 Llama 上也成立。
Table 1 · Avg 列
GRPO、DAPO、Reinforce++ 都以完整轨迹为样本。Table 1 的 Avg 显示它们能把 Qwen2.5-3B 从 26.1 拉到 49.7–50.6、把 Llama3.1-8B 从 28.8 拉到 50.4–51.1、把 Qwen2.5-7B 从 32.0 拉到 54.8–56.5;但论文指出 DAPO 在单轮推理更强,在多轮工具调用、尤其知识密集型任务上反而掉队。mid-trajectory 的工具调用步仍没有独立的探索信号。
Table 1 · Avg 列;§4.5
还有一类相关工作是 entropy-based RL:把 token 熵用于探索或作为训练信号。ARPO 的差别不是「第一次用熵」,而是把熵变化绑定到工具调用后的步级分支,并让分支产生的共享前缀/独立路径进入同一个 GRPO 目标。论文在 §2.2 先测 agentic 场景的熵分布,再在 §3.1 把它写成分支概率;这条「先测量、再定规则」的链路是页面的重点。
读完这节你应该知道:熵怎么算、分支概率怎么定、预算怎么收口,以及共享前缀为什么不需要额外的硬编码优势。
对第 t 步、词表大小 V,token 级生成熵定义为:
Ht = − Σj=1V pt,j log pt,j每步工具调用后,模型先额外生成 k 个 token,得到 Ht,再与初始熵 Hinitial 比较:
ΔHt = Normalize(Ht − Hinitial)Pt = α + β·ΔHt;若 Pt > τ 则 Branch(Z),否则 Continue四个步骤按 §3.1 的顺序是:(1) 初始化——用 N 条全局轨迹占住预算,剩余 M−N 条留给 partial sampling,并记录每条轨迹前 k 个 token 的初始熵;(2) 监控——每次工具调用后生成 k 个 token,算 ΔH;(3) 分支——P 超过 τ 就展开 Z 条 partial rollout,否则沿当前轨迹继续;(4) 终止——分叉总数达到 M−N 就停止分支,若所有路径提前结束,则补足到 M−N 条(即再补 M−N−Z 条)。
分支会产生两种 token:分支前的共享前缀、分支后的独立路径。硬分配(Hard Advantage Estimation)显式给共享前缀一个平均优势 Âsharedi,t = (1/d) Σdi=1 Âi,t;软分配(Soft Advantage Estimation)不显式改写优势,而是利用 GRPO 的重要性采样比率:
ri,t(θ) = πθ(yi,t | x, yi,<t) / πref(yi,t | x, yi,<t)论文的解释是:共享前缀的 token 在 GRPO 组内被同一个平均优势驱动,天然接近硬分配里的 Âshared;独立 token 则保留各自的优势。Figure 5 的对比显示 soft 设置训练中奖励更高、更稳,因此 ARPO 默认用 soft。注意这是论文在自身实验设置下的选择,不是「soft 一定优于 hard」的普遍结论。
示意:M=16、N=8(Appendix C.2 的配置),剩余 8 条预算留给 partial sampling;α=0.5、β=0.2、τ=0.5 取自 Appendix C.2/C.4;Z 的实际取值由论文实验配置决定,这里不把它写成固定默认值。
ΔH=+0.40 是交互示意值,对应 Figure 8 左图内最优的 entropy value 0.4;论文默认的 entropy weight 是 0.2(Appendix C.2/C.4),两者不是同一个量。
组 1(默认):α=0.50,β=0.20,ΔH=0.40,τ=0.50。P = 0.50 + 0.20×0.40 = 0.50 + 0.08 = 0.58;0.58 > 0.50 → Branch(Z)。
组 2(切换「熵没有变化」):α=0.50,β=0.20,ΔH=0.00,τ=0.50。P = 0.50 + 0.20×0.00 = 0.50;0.50 > 0.50 为假 → Continue。边界是严格大于,等于阈值不分支。
若把 ΔH 拉到 −0.20,P = 0.50 − 0.04 = 0.46,同样 Continue。µ 是 GRPO 内层迭代数(Algorithm 1 第 28 行);Z 的取值不在这个示意里;这里只验证 Eq. 5 的算术。
读完这节你应该知道:复现这套实验需要哪些数据、卡数和训练轮次,以及哪些开销被论文排除在 loss 之外。
框架 LlamaFactory,骨干 Qwen2.5-3B-Instruct;学习率 7×10−6,batch size 128,weight decay 0.1,训练 3 个 epoch;BF16,最大输入 4096 token,DeepSpeed ZeRO-3 + FlashAttention2。数据来自 Tool-Star 的 54K 样本,再加 STILL 的 0.8K 数学数据。
§4.3 · 54K + 0.8K 数据;训练超参见 Appendix C.1
基于 VERL;所有工具调用结果从 loss 中排除,避免模型偏向工具输出。总训练 batch 128,PPO mini-batch 16,global rollout 16,initial sampling 8;reasoning 每个交互响应上限 4096 token,deep search 扩到 8192。熵权重 0.2、α 0.5、τ 0.5,GRPO 的 KL 系数设为 0。
Appendix C.2;Appendix C.4
训练轮次与卡数:deep reasoning 跑 2 个 epoch,7B 模型用 8 张 H800;deep search 因只有 1K 样本,跑 5 个 epoch,8B 沿用同样参数,14B 用 16 张 H800。RL 数据方面,deep reasoning 用 Tool-Star 的 10K 样本,deep search 只用 1K 混合难搜索样本。
奖励是分层设计(Eq. 8):格式正确且 Acc. > 0 时,R = max(Acc. + rM, Acc.);格式正确但 Acc. = 0 时 R = 0;格式错误时 R = −1。若同时出现 <search> 与 <python>,额外给 rM = 0.1。
R = max(Acc. + rM, Acc.) if Format Good & Acc.>0;0 if Format Good & Acc.=0;−1 otherwise复杂度方面,论文称在 global expansion size 与每条轨迹 token 数都为 n 的假设下,ARPO 把每次 rollout 的复杂度从轨迹级 RL 的 O(n2) 降到 O(n log n) 到 O(n2) 之间;脚注明确说这个估计没有计入 token 级熵计算的小开销。这个上界依赖分支结构,不能直接外推到所有 M、N、Z 组合。推断(依据:§3.1 的 O(n log n)–O(n2) 上界建立在 global expansion size 与每条轨迹 token 数都为 n 的假设上)
读完这节你应该知道:熵信号在流程中的位置,以及「分支」和「预算」如何收口。
读完这节你应该知道:提升具体落在哪些格子、哪些格子没有提升,以及「一半工具调用」到底比较了什么。
柱高按固定上限 60 分满格,三个骨干共用同一刻度;柱下数字为 Table 1 的 Avg 原值。切换标签只换数据,不改刻度。
| Method | AIME24 | AIME25 | MATH500 | GSM8K | MATH | WebWalker | HQA | 2Wiki. | MuSiQ. | Bamb. | Avg. |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Qwen2.5-3B-Instruct | 10.0 | 6.7 | 63.0 | 75.0 | 71.6 | 0.5 | 9.7 | 9.4 | 3.6 | 11.7 | 26.1 |
| + TIR Prompting | 6.7 | 6.7 | 52.2 | 56.6 | 62.8 | 14.0 | 15.4 | 14.1 | 6.1 | 16.4 | 25.1 |
| + GRPO | 20.0 | 13.3 | 72.0 | 86.0 | 81.0 | 21.0 | 56.5 | 64.5 | 24.7 | 65.2 | 50.4 |
| + Reinforce++ | 16.7 | 13.3 | 70.4 | 85.0 | 80.2 | 19.5 | 55.9 | 62.3 | 27.9 | 65.7 | 49.7 |
| + DAPO | 20.0 | 16.7 | 71.2 | 85.0 | 81.2 | 19.5 | 54.8 | 62.5 | 30.0 | 64.8 | 50.6 |
| + ARPO | 23.3 | 20.0 | 71.4 | 85.0 | 82.5 | 24.5 | 58.5 | 67.4 | 28.7 | 66.8 | 52.8 |
| Llama3.1-8B-Instruct | 3.3 | 0.0 | 43.3 | 81.4 | 60.6 | 3.0 | 24.3 | 24.6 | 10.4 | 40.0 | 28.8 |
| + TIR Prompting | 3.3 | 3.3 | 39.4 | 73.8 | 58.2 | 15.0 | 48.5 | 47.5 | 15.5 | 58.4 | 36.3 |
| + GRPO | 13.3 | 13.3 | 62.4 | 87.4 | 79.2 | 26.5 | 57.8 | 71.8 | 31.0 | 68.2 | 51.1 |
| + Reinforce++ | 13.3 | 16.7 | 61.4 | 87.0 | 77.2 | 27.5 | 57.1 | 71.6 | 29.9 | 69.1 | 51.1 |
| + DAPO | 16.7 | 13.3 | 61.2 | 87.4 | 76.4 | 25.5 | 56.6 | 70.3 | 29.2 | 67.3 | 50.4 |
| + ARPO | 23.3 | 16.7 | 64.6 | 88.0 | 80.2 | 30.5 | 65.4 | 75.5 | 34.8 | 73.8 | 55.3 |
| Qwen2.5-7B-Instruct | 10.0 | 10.0 | 70.6 | 90.2 | 82.0 | 2.0 | 12.2 | 12.6 | 6.6 | 24.0 | 32.0 |
| + TIR Prompting | 6.7 | 10.0 | 68.2 | 64.6 | 78.2 | 15.5 | 14.8 | 18.3 | 9.5 | 23.6 | 31.0 |
| + GRPO | 23.3 | 26.7 | 78.0 | 92.8 | 87.8 | 22.0 | 59.0 | 76.1 | 30.6 | 68.4 | 56.5 |
| + Reinforce++ | 26.7 | 23.3 | 78.0 | 92.2 | 88.8 | 26.0 | 55.1 | 68.9 | 25.2 | 64.9 | 54.9 |
| + DAPO | 20.0 | 23.3 | 80.4 | 91.0 | 88.8 | 24.0 | 57.7 | 68.4 | 28.6 | 65.5 | 54.8 |
| + ARPO | 30.0 | 30.0 | 78.8 | 92.2 | 88.8 | 26.0 | 58.8 | 76.1 | 31.1 | 71.5 | 58.3 |
三个骨干的 Avg 提升分别是:Qwen2.5-3B 52.8 − 50.4 = +2.4 个百分点(相对 GRPO),Llama3.1-8B 55.3 − 51.1 = +4.2,Qwen2.5-7B 58.3 − 56.5 = +1.8;三者平均 +2.8 个百分点。论文 §4.5 自己写的是「average accuracy improvement of 4%」——这是论文对 10 个数据集整体的概括,不能理解为每个骨干都提升 4 个百分点。
| Method | GAIA Lv.1 | Lv.2 | Lv.3 | GAIA Avg. | WebWalker Easy | Med. | Hard | WebWalker Avg. | HLE NS | CE | SF | HLE Avg. | XBench Avg. |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Qwen3-8B | 28.1 | 15.4 | 16.7 | 20.4 | 0.0 | 2.4 | 2.8 | 2.0 | 3.9 | 2.7 | 8.4 | 4.6 | 9.0 |
| + GRPO | 48.7 | 25.0 | 8.3 | 32.0 | 24.4 | 33.3 | 26.8 | 29.0 | 7.9 | 4.0 | 10.5 | 7.8 | 20.0 |
| + ARPO | 53.9 | 32.7 | 16.7 | 38.8 | 26.7 | 33.3 | 29.6 | 30.5 | 7.3 | 6.7 | 15.8 | 8.8 | 25.0 |
| Qwen3-14B | 33.3 | 13.5 | 0.0 | 19.4 | 6.7 | 2.4 | 4.2 | 4.0 | 5.5 | 6.7 | 11.6 | 6.8 | 14.0 |
| + GRPO | 51.3 | 34.6 | 0.0 | 36.9 | 28.9 | 33.3 | 26.8 | 30.0 | 7.9 | 6.7 | 12.6 | 8.6 | 27.0 |
| + ARPO | 56.4 | 40.4 | 16.7 | 43.7 | 31.1 | 42.9 | 31.0 | 36.0 | 10.3 | 10.7 | 13.7 | 10.0 | 32.0 |
逐项对 GRPO:8B 的 GAIA Avg 38.8 − 32.0 = +6.8、WebWalker +1.5、HLE +1.0、XBench +5.0;14B 的 GAIA +6.8、WebWalker +6.0、HLE +1.4、XBench +5.0。HLE 的 NS 子集在 8B 上反而从 7.9 降到 7.3(−0.6),所以「每项都提升」不成立。
8B 从 snippet only 的 23.2 升到同规模 browser 的 26.0(+2.8),再升到 QWQ-32B browser 的 26.6(+0.6);14B 从 24.8 升到 29.9(+5.1),再到 39.4(+9.5)。论文据此说「浏览器代理能力与 deep search 准确率高度相关」。
Table 3 · Avg 列
Qwen3-14B + ARPO 的 Pass@5:GAIA 61.2%、HLE 24.0%、xbench-DR 59%。Figure 6
Figure 7 只比较 Qwen2.5-7B 的训练工具调用数(Total Calls);§4.6 正文称 ARPO 用一半工具调用达到更高准确率。Figure 7
Figure 8 的熵值在 0.4 处最好、1.0 时下降;initial sampling 在 8 处最好、16 时下降;global rollout 越大越好。Figure 8
注意 Figure 6 的 xbench-DR 用的是中文提示,论文脚注 4 明确说这会让 pass@k 高于 Table 2 的英文设置;此外 Figure 6 是 Pass@5、Table 2 是 Pass@1(§4.4),因此 59% 与 Table 2 的 32.0 不能直接比较。Figure 7 的「一半」也只在 Qwen2.5-7B 与 GRPO 的一条训练曲线上成立,不是推理阶段的成本,也没有在 8B/14B 或 deep search 上重复。
读完这节你应该知道:哪些结论可以直接用,哪些必须带上条件,哪些原文自己就没有对齐。
Figure 8 左图的横轴是 Entropy Weight,图内最优值在 0.4;Appendix C.2/C.4 的训练默认 entropy weight 是 0.2。原文没有解释为什么默认不取图内最优值。推断(依据:§4.7 称 Entropy Value,Appendix 称 entropy weight,两处命名不同且没有给出映射)。
initial sampling 也有一处数字对不上:§4.7 说从 0 增到 8 时 global-to-partial 比例从 1:15 变 1:1;按 M=16、N=0 应是 0:16,按 N=1 才是 1:15。原文两处冲突,照录。
Figure 7 只画了 Qwen2.5-7B 的 GRPO vs ARPO 训练工具调用数(Total Calls)曲线;准确率对比来自 Table 1/正文,不在 Figure 7 的纵轴上。论文没有在 8B/14B、deep search、或推理阶段重复这个对比。把「一半」外推到线上 agent 的 API 账单,需要额外实验。
Table 3 显示,同一 14B 策略换成 QWQ-32B browser,Avg 从 29.9 升到 39.4。推断(依据:Table 3 的 browser 规模逐级对比)ARPO 的 deep search 分数不能全部归给策略更新,外部 browser 的能力是共同变量。
数学与知识推理中,QA 任务用 F1,其余用 Qwen2.5-72B-instruct 做 LLM-as-judge;deep search 用 LLM-as-judge。xbench-DR 的 Pass@5 用中文提示,和 Table 2 的英文设置不同。论文没有分析奖励模型被利用(reward hacking)的情况,也没有报告多次运行的方差或置信区间。
理论部分,§3.3 把 Transformer 输出切成 K 个 macro action,推出 Generalized Policy Gradient(GPG)定理,传统 token-level Policy Gradient 是它的一个特例。这个定理保证的是「按 macro action 做策略梯度的形式」,并不保证「熵变化一定对应有用的探索」。推断(依据:GPG 定理只给出梯度分解,Eq. 5 的熵分支是算法设计,不是定理的结论)。因此 α、β、τ 的选择仍然是经验性的。