Multiscale Policy Optimization for Long-Horizon LLM Agents (MPO)
报告的主要结果(均为原文自报,非本站复现)
| 指标(原文自报,百分比) | Qwen3-4B-Thinking:最强非 MPO 基线 → MPO | Qwen3-30B-A3B-Instruct:最强非 MPO 基线 → MPO |
|---|---|---|
| BrowseComp-Plus pass@1 | 43.75(SAO)→ 48.08 | 46.73(VAPO)→ 50.32 |
| GAIA pass@1 | 35.62(SAO)→ 39.47 | 39.62(SAO)→ 43.42 |
| HLE pass@1 | 9.26(GSPO)→ 9.92 | 9.91(SAO)→ 10.03 |
| Claw-Eval pass^3 | 50.78(PPO)→ 51.73 | 57.23(SAO)→ 58.35 |
| Automation Bench pass@1 | 12.06(SAO)→ 13.33 | 14.20(SAO)→ 15.00 |
原文称 MPO 在两个尺度上的 9 项指标全部最高。4B 上 pass@32:BrowseComp-Plus 75.90、GAIA 69.90、HLE 34.00,分别比 GRPO 与 PPO 中较强者高 3.61 / 5.82 / 5.80 分。
通俗解释
想象一个客服机器人要解决一个复杂问题:它先查订单、再查物流、再回复客户,一共说了好几句话(每句话就是一「轮」),最后只有一个总分——问题解决了没有。
训练时最难的是「功劳怎么分」。老办法有两类:一类(GRPO 等)给整段对话里的每个词发同样的分数,太粗;另一类(PPO、VAPO 等)给每个词单独估分,又太碎,而且忽略了「一轮」才是真正和环境交互的单位。
MPO 的做法是「两级分账」:先看每一轮对最终结果的贡献,把总功劳按轮分下去;每一轮内部,再让个别关键的词多拿一点、不重要的少拿一点,但这一轮的平均功劳保持不变。更新模型时,也用「整轮话的概率变了多少」来限幅,而不是逐词限幅。论文用一次搜索智能体的训练数据观察到:评分员(critic)给出的价值估计主要在「轮与轮之间」变化,这就是它这样设计的依据。
专业解释
MPO 把一个完整的 assistant 输出 $a_t$(一轮:搜索 query、工具调用、最终回答)视作 macro action,在不改变策略参数化(逐 token 自回归)的前提下,在两个尺度上分别处理 credit assignment 与 importance correction。
动机来自 critic 的统计结构:在一次 search-agent 训练的 8 个 checkpoint batch 上,共 2,048 条轨迹、16,323 个 turn,轮间均值差异占 critic token 加权轨迹内价值方差的中位数 89.5%;93.8% 的轨迹轮间方差大于轮内方差。因此长程信用应在轮尺度上传播,轮内只做局部再分配。
方法由两部分组成:(1) MAE(Multiscale Advantage Estimation):在 macro 时间轴上做 turn-level GAE,再用「保持轮均值不变」的中心化局部修正在 token 间分配;该分配被推导为一个带均值约束的最小二乘投影的唯一解;(2) turn-level importance sampling:用整轮概率比 $\rho_t=\prod_i\rho_{t,i}$ 做前向加权与 clip,同时通过 stop-gradient 构造保留每个 token 自己的 MAE 优势。
理论部分:沿用 TRPO 的 surrogate + distribution-shift 分析,给出 turn 级单调改进下界;并证明用 token surrogate 替代 turn surrogate 会引入额外的「轮内分布漂移」惩罚项,在相同 KL 预算下 token 方案的惩罚多出 $(T+1)(L_{\max}-1)\Delta$ 量级。critic 采用 $\lambda_{\text{critic}}=1$(沿用 VAPO 的 decoupled GAE),直接回归终端回报 $R(\tau)$。
详细算法
1. 问题设定
交互轨迹 $\tau=(o_0,a_0,o_1,a_1,\ldots,o_T,a_T)$,其中 $o_0$ 为任务 prompt,$a_t$ 为第 $t$ 轮 assistant 输出(工具调用或最终回答),$o_{t+1}$ 为环境反馈。每个输出是 token 序列 $a_t=(a_{t,1},\ldots,a_{t,L_t})$。历史 $h_t=(o_0,a_0,\ldots,o_t)$,token 前缀 $h_{t,i}=(h_t,a_{t,<i})$。
策略自回归分解:$\pi_\theta(a_t\mid h_t)=\prod_{i=1}^{L_t}\pi_\theta(a_{t,i}\mid h_{t,i})$。只有终端奖励 $R(\tau)$,且仅最后一个 token 获得:$r_{t,i}=R(\tau)$ 当 $t=T,i=L_T$,其余为 0。目标 $\mathcal J(\theta)=\mathbb E_{\tau\sim p_\theta}[R(\tau)]$。环境 token 进入历史但不是策略动作。
2. 关键公式
价值边界与 TD 残差(critic $V_{t,i}=V(h_{t,i})$,rollout 时固定;$\gamma=1$):
$$V_{t,L_t+1}:=V_{t+1,1},\quad V_{T+1,1}:=0,\qquad \delta_{t,i}=r_{t,i}+V_{t,i+1}-V_{t,i}$$
轮级 GAE(轮内 TD 残差求和后,内部 critic 预测相互抵消):
$$\delta^{\text{turn}}_t=\sum_{i=1}^{L_t}\delta_{t,i}=\mathbf 1\{t=T\}R(\tau)+V_{t+1,1}-V_{t,1},\qquad A^{\text{turn}}_t=\delta^{\text{turn}}_t+\lambda A^{\text{turn}}_{t+1}$$
轮内局部 trace(只在本轮内截断):
$$A^{\text{intra}}_{t,i}=\sum_{j=i}^{L_t}\lambda_{\text{intra}}^{\,j-i}\,\delta_{t,j}$$
MAE:带均值约束的最小二乘投影 $\min_{\mathbf w}\tfrac12\|\mathbf w-\beta\mathbf A^{\text{intra}}_t\|_2^2$,约束 $\tfrac1{L_t}\sum_i w_i=A^{\text{turn}}_t$,其唯一解:
$$A^{\text{MAE}}_{t,i}=A^{\text{turn}}_t+\beta\big(A^{\text{intra}}_{t,i}-\overline{A}^{\text{intra}}_t\big),\qquad \overline A^{\text{intra}}_t=\tfrac1{L_t}\textstyle\sum_i A^{\text{intra}}_{t,i}$$
整轮重要性比与 stop-gradient 构造:
$$\rho_{t,i}=\frac{\pi_\theta(a_{t,i}\mid h_{t,i})}{\pi(a_{t,i}\mid h_{t,i})},\quad \rho_t=\prod_{i}\rho_{t,i},\quad \tilde\rho_{t,i}=\rho_{t,i}\cdot\mathrm{sg}\Big[\prod_{j\ne i}\rho_{t,j}\Big]$$
前向值 $\tilde\rho_{t,i}=\rho_t$,梯度 $\nabla\tilde\rho_{t,i}=\rho_t\nabla\log\pi_\theta(a_{t,i}\mid h_{t,i})$。
MPO 目标($\widehat A$ 为在 batch 内对所有有效 assistant token 归一化后的 MAE 优势,更新期间固定):
$$\mathcal L_{\text{MPO}}(\theta)=\widehat{\mathbb E}_{t,i}\Big[\min\big(\tilde\rho_{t,i}\widehat A^{\text{MAE}}_{t,i},\ \mathrm{clip}(\tilde\rho_{t,i},1-\epsilon,1+\epsilon)\widehat A^{\text{MAE}}_{t,i}\big)\Big]$$
理论:turn 级改进下界($A_{\max}$ 为优势上界,$\alpha_M$ 为各历史处整轮输出分布的最大 TV 距离):
$$\mathcal J(\pi')-\mathcal J(\pi)\ \ge\ \mathcal S_M-2A_{\max}T(T+1)\alpha_M^2$$
3. 逐步伪代码
输入: 策略 π_θ, critic V_φ, 任务集 D, 超参 λ, λ_intra, β, ε
(论文消融中最佳: λ=0.80, λ_intra=0.95, β=1.0; critic 的 λ_critic=1)
repeat 每个训练迭代:
# 1. Rollout
对每个任务采样轨迹 τ=(o0,a0,...,oT,aT); 记录每个 assistant token 的 log π_old 与终端奖励 R(τ)
# 2. 取旧策略下的 critic 值 (估计优势期间固定)
V[t,i] = V_φ(h_{t,i}); V[t,L_t+1] := V[t+1,1]; V[T+1,1] := 0
# 3. token 级 TD 残差
δ[t,i] = r[t,i] + V[t,i+1] - V[t,i] # r 仅在轨迹最后一个 token 为 R(τ)
# 4. 轮级 GAE (跨轮传播信用)
A_turn[T+1] = 0
for t = T downto 0:
δ_turn[t] = Σ_i δ[t,i]
A_turn[t] = δ_turn[t] + λ * A_turn[t+1]
# 5. 轮内再分配 (均值保持)
for 每一轮 t:
A_intra[t, L_t+1] = 0
for i = L_t downto 1:
A_intra[t,i] = δ[t,i] + λ_intra * A_intra[t,i+1]
Ā = mean_i A_intra[t,i]
A_MAE[t,i] = A_turn[t] + β * (A_intra[t,i] - Ā)
# 6. batch 内对所有有效 assistant token 归一化 -> Â, 更新期间固定
# 7. 策略更新 (整轮重要性比 + stop-gradient)
ρ[t,i] = π_θ(a_{t,i}|h_{t,i}) / π_old(a_{t,i}|h_{t,i})
ρ̃[t,i] = ρ[t,i] * stopgrad( Π_{j≠i} ρ[t,j] ) # 前向值 = 整轮比 ρ_t
L = mean_{t,i} min( ρ̃·Â , clip(ρ̃, 1-ε, 1+ε)·Â )
θ <- θ + lr * ∇_θ L
# 8. critic 更新: 以 λ_critic=1 直接回归终端回报 R(τ)
4. 训练 / 推理流程
训练:在三类智能体环境中分别训练——Search、Claw-Eval、Automation Bench;步数分别为 300 / 300 / 200。基座为 Qwen3-4B-Thinking 与 Qwen3-30B-A3B-Instruct。对比 Base、GRPO、GSPO、PPO、VAPO、SAO,另设「MPO w/ token IS」(保留 MAE,但把整轮比换回 token 比)以隔离更新目标的作用。
评测协议:每次训练取最佳 checkpoint,离线评测 5 次取均值。Search 以 BrowseComp-Plus、GAIA、HLE 报告 pass@1 / pass@3(训练后模型用每题 32 条独立 rollout 估计);Claw-Eval 报告 pass@3 与 pass^3;Automation Bench 报告 pass@1。
推理:推理时就是普通的智能体推理,MPO 只改变训练,不引入额外推理开销。
与既有方法对比
- GRPO / GSPO / DAPO(critic-free):每条序列一个共享的组内相对优势,不区分轮与 token 的贡献。MPO 引入 critic,换来跨轮与轮内的细粒度信用。
- PPO / VAPO / SAO(token 级 critic):把每个 token 当作动作,不显式区分「轮内生成」与「轮间环境交互」。MPO 的 $\lambda$(每轮衰减一次)与 $\lambda_{\text{intra}}$(每 token 衰减一次)分开设置,因为两者的物理时间尺度差很多:$1/(1-\lambda)$ 在 $\lambda=0.8$ 时约 5 轮,而 $\lambda_{\text{intra}}=0.95$ 时约 20 个 token。
- 消融证据:把整轮比换成 token 比,所有报告分数都下降(4B 上 Search pass@1 下降 2.36 / 3.12 / 1.03 分);即便不用整轮比,MAE 本身在 6 项 Search 指标上都优于 PPO。$\beta=0$(只有轮级 GAE)仍优于 PPO,但比 $\beta=1$ 低 6.28 / 5.27 / 2.04 分。
优势
- 把「轮」作为一等公民:信用传播、重要性比、clip 都在同一个尺度上对齐,理论上有 turn 级改进下界,并能定量说明 token 代理的额外惩罚来源。
- 只用一个 critic 就完成两级信用分配(约束最小二乘投影,有闭式解),实现改动集中在优势估计与比值构造两处。
- 消融设计干净:分别拆开了轮级 GAE、轮内修正、整轮 IS,并扫描 $\lambda,\lambda_{\rm intra},\beta$,看得到每个部件的边际贡献。
- 增益在 4B 稠密和 30B-A3B MoE 两个规模、三类任务上方向一致;pass@k 随采样预算增大仍保持领先。
劣势 / 局限
- 需要训练 critic,显存与算力开销高于 GRPO 类 critic-free 方法;论文未报告相对 GRPO 的单位算力收益(待确认)。
- 评测只覆盖 Search / Claw-Eval / Automation Bench 三类任务与 Qwen3 两个规模;论文没有单独的局限节。
- HLE 上增益仅 0.12 ~ 0.66 分,且评测取「最佳 checkpoint」后 5 次评测均值,论文未见置信区间或多训练种子方差(待确认)。
- 整轮重要性比是 token 比的乘积,轮很长时数值方差可能很大——这是编者推断,论文未讨论。
- 最优超参($\lambda=0.80,\lambda_{\rm intra}=0.95,\beta=1.0$)来自消融扫描,迁移到新任务时需要重新调。
与工业 AI 的关系(作者判断,非论文结论)
设备运维 / 产线诊断智能体本质上是多轮工具调用:查历史工单、读 PLC 点位、调用诊断模型、给出处置建议,且奖励稀疏(最终是否排除故障)。MPO 的「按轮分功劳」可直接借鉴来训练这类长任务智能体;但需要可反复交互的仿真或数字孪生环境,现场实操不能拿来试错。短期更现实的用法是离线仿真内训练,并配合只读、受控上线的边界。
待确认事项
- 待确认:MPO 是否有开源代码与权重 依据:HF Papers API 返回中无 githubRepo 字段,论文 HTML 摘要未给仓库链接(2026-10-31)
- 待确认:各基线是否在同等 rollout 预算与相同 critic 规模下比较 依据:已读 6.1 节设置,仅见步数与 rollout 数,未见算力对齐表述(2026-10-31)