速览
- 仅基于结果奖励的强化学习靠对比来学习。一组 rollout 若全部成功或全部失败,梯度为零。
- 在多轮智能体中,每个“思考—行动—观察”轮次都是天然的存档点。从合适的存档点重放,就能把一个终局奖励变成一次受控的并排对比。
- TRACE 用一个小型可学习预测器,把固定预算花在最可能分化出成功与失败的 prompt 和前缀上。同样的预算,更多的信号:在 Qwen3-14B 多跳问答上比 GRPO 最高提升 2.8 个点;在数学任务上,有效训练组的占比提升到原来的两倍以上。
八次 rollout,零信号
大多数可扩展的大模型强化学习流水线只奖励最终结果:答案要么对,要么不对。GRPO 类训练靠对比从中榨取学习信号:对同一个 prompt 采样一组 rollout,每条打 1 分或 0 分,再把策略推向高于组平均的那些 rollout。
这套机制运转良好,直到整组意见一致。如果八条 rollout 全部成功,每条的优势都恰好为零;全部失败时也一样。你为八条冗长的、调用工具的轨迹付了费,换来的梯度却是零。试试下面的演示:把成功率推向任意一端,看信号如何消失。
一组 rollout 什么时候才真正有用?
每个圆圈是一条 rollout,下方数字是它的组内相对优势:(奖励 − 均值)÷ 标准差。
还有第二个更隐蔽的问题。在多轮智能体中,一个终局奖励会被盖到轨迹的每一轮上。一个搜索智能体发出了三个精准的查询、却在最后作答时失手,它拿到的 0 分和第一步就走错的智能体完全一样。奖励只告诉你某处失败了,却没告诉你哪里。
已有的 prompt 选择与 rollout 分配方法在 prompt 层面解决第一个问题:跳过太简单或太难的 prompt,把更多 rollout 留给有潜力的 prompt。但一旦选定了 prompt,每条 rollout 仍被当作不可分割的整条轨迹来采样。TRACE 往下又深入了一层。
你的 rollout 其实是一棵树
ReAct 风格的智能体按轮次工作:思考、行动(搜索、运行代码、调用 API)、读取观察。每个完成的轮次都是一个干净且有语义的存档点。读取存档,固定历史,重新采样一个新的未来。如果重放的结局与原来不同,你就得到了一次受控实验:相同的过去,不同的续写,相反的结果。这就是无需手工设计过程奖励的局部信用分配。
难点在于选择重放哪些存档点。有些已经注定失败:搜索只返回了无关内容,智能体无路可走。有些已经稳操胜券:答案已经到手。在这些地方重放,只是多买几份已知结局的副本。真正有价值的是那些悬于刀锋的状态,接下来几步决策仍将决定结果。
这样看来,整个 rollout 预算就是一份建树预算。prompt 是深度为零的锚点,访问过的前缀是更深的锚点,每一次采样决策都是在选择让哪个锚点获得更多后代。
同一条规则,两个尺度
TRACE 的分配原则一句话就能说清:把预算交给那些后代最可能同时包含成功与失败的锚点。这条规则用了两次。
在 prompt 层面
如果预测器估计 prompt x 的成功概率为 v,那么 m 条全新 rollout 构成混合组的概率为
TRACE 为每个候选 prompt 选择一个数量 m ∈ {0, 2, 3, …},使总数等于根预算。0 表示跳过该 prompt;2 及以上表示保留,并决定它获得多少条 rollout。一个旋钮同时取代了 prompt 筛选和 rollout 数量分配。
在前缀层面
对于一个前缀,我们已经知道原 rollout 的结局:奖励 r。设 q 为一次全新续写重复该结局的预测概率,那么 k 次重放中至少出现一次反转的概率为
每个被选中的 prompt 获得与其 rollout 数成正比的局部续写预算,并分摊到它访问过的各个前缀上。两个问题都可以用一个小型动态规划精确求解,其开销与生成相比可以忽略不计。
亲手试试这个分配器。六个 prompt,一份预算。均匀采样把 rollout 平均分配;TRACE 则求解上面的根分配问题。
你有一份 rollout 预算,该花在哪里?
示意用的 prompt,预测成功率为虚构数值。每个小方块代表一条 rollout。
| Prompt | 预测成功率 | 均匀 | TRACE |
|---|
看看最优解做了什么。预算紧张时,全部预算都流向中间段的 prompt,两头偏斜的被跳过。随着预算增加,接近五五开的 prompt 很快饱和(五条 rollout 已能让它们以超过 90% 的概率形成混合组),于是新增的 rollout 流向成功率 90% 和 15% 的 prompt,在那里每多一条仍能换来实打实的对比。99% 的 prompt 永远不值得投入,而 2% 的 prompt 只有在滑块接近顶端、侥幸成功变得可能时才能分到 rollout。
为什么关键在中间地带
想象体育直播里的实时胜率仪表。比赛早期它在 50% 附近徘徊,每一次进攻都让它大幅摆动;到了一边倒的尾声,它停在 98% 几乎纹丝不动。随着 rollout 一轮轮展开,策略完成任务的概率也是这样变化的,论文用三个结论把这一点刻画得很精确。
历史越多,预测越准。随着观察到的轮次增加,预测一组续写的得分只会更容易:可达到的最优平方误差不会随深度增加。因此对前缀打分所掌握的信息至少和对 prompt 打分一样多。在 Qwen3-8B HotpotQA 上,预测器的组成功率误差到第四轮时降到 prompt 层面的约三分之一。
不确定性就是剩余的对比潜力。把成功概率 V 看作那块实时仪表。从任意前缀出发,直到 rollout 结束,仪表读数的期望累计平方变动恰好等于
因此 V(1 − V) 不只是一个静态的不确定性分数:它衡量的是该前缀之下结局还能摆动多少。实证结果与此一致:许多 prompt 和前缀的成功率集中在 0% 或 100% 附近,而按这一对比量给锚点排序,只用一小部分预算就能覆盖大部分可用的成对对比。
对比才能激活梯度。在二值奖励下,除非某个锚点的后代同时包含成功与失败,否则成对式和组相对式的更新在它之下都会消失。于是期望平方梯度可以分解为“激活概率 × 梯度尺度”。在论文的归一化假设下,最大化激活概率(这正是 TRACE 两个目标所做的)在每个阶段得到的期望梯度能量都不低于均匀分配。
让 0.6B 模型告诉 14B 模型该往哪看
上面每个公式都需要在采样之前,对一个 prompt 或一段部分轨迹给出成功率估计。TRACE 用一个共享预测器同时完成两件事:一个 Qwen3-0.6B 评论家(critic)模型,读取序列化后的 prompt 与交互历史,输出 0 到 1 之间的分数。
它利用 TRACE 收集的树在线训练。每个节点的目标值是其下方叶子的成功率,自底向上计算,预测器在每一步之后对这些目标做回归。训练以 prompt 层面的样本为主,前缀样本只占每个预测器批次的 6%。即便如此,它在前缀层面与真实结果的秩相关仍保持为正,说明它学到的是依赖历史的难度感知,而不是记住了 prompt 本身。
而且它很便宜。在 HotpotQA 上,预测器的打分与更新合计只占约 3% 的墙钟时间:
一个训练步如何运行
- 为候选池打分。预测器为每个候选 prompt 估计成功率。
- 分配根 rollout。求解带预算约束的根分配问题:大多数候选分到零,被选中的 prompt 获得两条或更多条完整 rollout。
- 立即局部展开。某个 prompt 的 rollout 一返回,就为它访问过的前缀打分,并在那里花掉它的续写预算,无需等待批次中最慢的 prompt。
- 更新预测器。在完成的树上自底向上计算成功率目标,做一步回归。
- 更新策略。把树交给任意支持树结构的优化器。论文在数学和问答上使用 TreeRPO,在函数调用上使用 Tree-GRPO。
第 3 步按 prompt 独立展开,是刻意照顾系统效率的设计。完全全局的前缀分配器必须等批次中所有 prompt 都完成;TRACE 只需要一个 prompt 的 rollout,而它们本来就在同一个 worker 上。
同等预算下的结果
评测覆盖三类智能体场景:带 Python 解释器的数学推理(在 DeepScaleR 上训练)、带本地维基百科检索器的多跳问答(在 HotpotQA 上训练),以及多轮函数调用(BFCL v4)。基线包括 GRPO、PCL(预测式 prompt 选择)和 TreePO;TreePO 与 TRACE 使用相同的树状 rollout 和树感知更新,但随机分叉。所有方法采用相同的 rollout 预算核算,因此差异来自样本花在哪里,而不是样本有多少。
相对 GRPO 的准确率提升
条形表示训练结束时高于 GRPO 的点数;左侧标注绝对分数。
TRACE 在所有场景、两种 Qwen 规模下都取得了最佳平均成绩,而且在轨迹最长、最适合分叉的场景中差距最大:多跳问答和函数调用。与 TreePO 的对比最能说明问题:两者都建树、使用相同的优化器,唯一区别是分叉落在随机前缀还是预测出的前缀上。在 Llama-3.2-3B-Instruct 上也是同样的规律,TRACE 比 GRPO 高 3.8 个点,比随机分叉高 3.1 个点。
真正有学习价值的组多了很多
最明显的效果体现在有效比例上:一个批次中,rollout 树同时以成功和失败收尾的 prompt 所占的比例。在 DeepScaleR 数学任务上:
两个阶段各有贡献
在 Qwen3-8B HotpotQA 上把每个学习式分配器分别换成均匀分配,可以看到收益是叠加的:根分配挑出可能分化的 prompt,前缀分配把重放花在仍能揭示对比的地方。
| Prompt 阶段 | 前缀阶段 | 平均准确率 | 有效比例 |
|---|---|---|---|
| 均匀 | 均匀 | 49.5 | 42.8% |
| 自适应 | 均匀 | 49.8 | 49.1% |
| 均匀 | 自适应 | 50.0 | 47.3% |
| 自适应 | 自适应 | 50.6 | 52.3% |
预算的形状与大小同样重要
一次轨迹中途的重放大约相当于半条完整 rollout 的开销,因此 M 条根 rollout、每条根 N 次续写的配置,总开销约为 M(1 + N/2) 条轨迹。在每个预算下 TRACE 都胜过随机分叉,有效比例每次都提升约十个点。
| 预算 | 根数 M,重放数 N | TreePO 准确率 / 有效比例 | TRACE 准确率 / 有效比例 |
|---|---|---|---|
| 1024 | 512, 2 | 48.8 / 32.2% | 49.7 / 42.4% |
| 2048 | 512, 6 | 49.4 / 37.7% | 50.3 / 47.8% |
| 2048 | 1024, 2 | 49.5 / 42.8% | 50.6 / 52.3% |
在同为 2048 的预算下,更宽的根覆盖胜过从更少的根做更深的重放。瓶颈不在 rollout 的原始数量,而在于它们能否到达奖励可能出现分歧的状态。
预算最终流向了哪里
观察 TRACE 在 BFCL 函数调用上的分配(这里一个回合可以长达数十轮),它的行为就变得很具体。在 prompt 层面它相当挑剔:Qwen3-8B 约有 71% 的候选 prompt 被跳过,Qwen3-14B 约为 65%,被选中的 prompt 通常获得五到七条 rollout。重要的是,参与训练的不同 prompt 数量从未超过固定规模的基线,所以收益并非来自看到了更多数据。
在前缀层面,重放分布在整条轨迹上。最早的几轮拿到最大的单项份额,但仍有可观的预算到达第 15 轮这样深的前缀。第二阶段并不是悄悄充当额外的根采样,而是在长交互的各处寻找决策点。
局限与展望
TRACE 面向结果可验证的任务;对于没有明确终局检验的场景,需要重新思考混合结果这一目标。这里的预测器有意保持简单,更准确的预测器应能更好地安排预算,尤其是它要拟合的目标会随策略改进而漂移,这天然适合引入持续学习技术。实验涵盖数学、多跳问答和函数调用,模型为 Qwen3-8B、Qwen3-14B 和 Llama-3.2-3B,更长程、非平稳的智能体环境留待未来研究。
更大的启示是一种视角的转换。对于智能体强化学习,采样问题不只是抽多少条独立 rollout,而是在 rollout 树的哪里分叉。
引用本文
@article{zou2026trace,
title = {TRACE: A Unified Rollout Budget Allocation Framework for
Efficient Agentic Reinforcement Learning},
author = {Zou, Heming and Wang, Qi and Qu, Yun and Jiang, Yuhang and
Cai, Lizhou and Mao, Yixiu and Peng, Ru and Xu, Xin and
Liu, Weijie and Yang, Kai and Yang, Saiyong and Ji, Xiangyang},
journal = {arXiv preprint arXiv:2606.11119},
year = {2026}
}