ARLArena: A Unified Framework for Stable Agentic Reinforcement Learning

Paper: arXiv:2602.21534 Code: WillDreamer/ARL-Arena Code reference: main @ a25a2a22 (2026-05-02)

1. Motivation (研究动机)

Agentic Reinforcement Learning (ARL) 的目标不是只让 LLM 在单轮问题上输出答案,而是让它在 Web navigation、embodied environment、game、deep research 等多步交互任务里持续观察状态、选择动作、接收环境反馈并更新策略。论文指出,现有 LLM RL 在 math/reasoning 上已经证明了 scaling 价值,但迁移到 agentic setting 后会出现更强的不稳定性:invalid actions、稀疏终局 reward、long-horizon credit assignment、以及 agent 与环境互相影响带来的 non-stationary dynamics 会相互叠加。一个早期错误动作可能让后续状态分布完全偏离,从而把 credit-assignment 噪声和 degenerate rollout 放大。

本文要解决的具体问题是:如何在一个可复现、可比较的 agentic RL testbed 中,系统地拆解 policy-gradient 类方法的稳定性来源,并给出一个能跨 ALFWorld、WebShop、Sokoban 等多步交互环境稳定训练的 recipe。作者认为仅报告某个新 PO method 的单点结果不够,因为 ARL collapse 往往来自多个维度共同作用:输出格式错误会污染 reward,token-level clipping 会放大长序列 off-policy drift,episode-level reward 太稀疏会让 advantage 几乎退化,而 dynamic filtering 如果和错误的 advantage/format 机制组合也会损害训练。

研究价值在于:一旦稳定性问题被拆开,Agent post-training 就可以像 reasoning RL 一样形成可复现的基础框架。ARLArena 不是单纯提出 SAMPO,而是先建立标准化 testbed,再把 policy gradient 分解为四个研究维度,最后把诊断结果组合成 SAMPO。对后续工程实践来说,它给出了三个可操作原则:先清理环境和输出格式,再用 sequence-aware clipping 控制长轨迹更新,再加入更细粒度的环境 advantage 与 dynamic filtering。

Figure 1 解读:这张 overview 把论文的逻辑压缩成四部分:先通过 behavior cloning、format penalty、KL regularization、hyperparameter search 构造标准 testbed;再把 policy gradient 拆成 loss aggregation、IS clipping、advantage design、dynamic sampling 四个维度;随后诊断不同维度导致的 training collapse;最后把稳定设计组合成 SAMPO。它说明 ARLArena 的核心不是一个孤立 loss,而是一套从实验环境到 PO 设计的稳定性分析框架。

2. Idea (核心思想)

核心 insight:多轮 Agent RL 的不稳定性不是单一算法缺陷,而是由“轨迹分布偏移 + 稀疏 reward + 格式/动作有效性 + 样本筛选”共同决定;因此应该把 policy-gradient update 拆成可独立控制的四个维度,而不是只比较 GRPO/DAPO/GSPO 等方法的名字。

关键创新可以概括为三点:第一,ARLArena 用统一 policy-gradient 视角把主流 PO 方法映射到 loss aggregation、importance-sampling clipping、trajectory filtering/resampling、advantage design。第二,论文用同一组 agentic tasks 系统测试每个维度对训练曲线、KL、gradient norm、valid-format ratio 的影响。第三,SAMPO 把 sequence-level clipping、fine-grained advantage 和 dynamic filtering 组合起来,形成一个面向长交互轨迹的稳定 PO recipe。

与现有方法的根本差异在于:GRPO 主要使用 token-level ratio clipping 和 group-normalized outcome advantage;DAPO 主要强调 dynamic sampling;GSPO 强调 sequence-level importance ratio;GIGPO 引入环境/step-level advantage。SAMPO 不是只改其中一个维度,而是把 GSPO-style sequence ratio、GIGPO-style local advantage、DAPO-style filtering 组合到同一训练流程中。论文实验显示,单独的 tolerant clipping 方法 SAPO/CISPO 在 ARL 上容易 collapse,而 sequence-level clipping 才是长轨迹稳定性的关键。

3. Method (方法)

3.1 Overall framework: 从 agentic trajectory 到 policy-gradient 分解

在第 轮交互中,agent 接收 prompt/state ,生成 action/response ,环境转移到新状态 ,再构造下一轮 prompt 。完整轨迹写作: ARLArena 把多轮轨迹拆成 single-turn samples 后进行 policy optimization。论文给出的 agentic policy gradient 为: 其中 token-level importance ratio 为: 这个式子自然对应四个可控维度:loss 如何 aggregate, 如何 clip,是否过滤 zero-gradient / degenerate rollout,advantage 是否只用 episode outcome 还是引入局部环境信息。直觉上,ARL 的长轨迹会把 token-level 更新误差累积成 sequence-level distribution shift;如果只盯单 token 的 ratio,很容易看起来每步都“可接受”,但整条轨迹已经偏离旧策略。

3.2 Standardized testbed: 先把训练环境稳定住

作者先构造一个干净 testbed,否则不同 PO 方法的比较会被无效格式、初始策略太差、KL drift 等因素污染。

Behavior Cloning

作者用 Qwen3 系列模型在目标环境中自举生成 multi-turn trajectories,只保留 high-scoring rollouts 作为 SFT/BC 数据。BC 的作用是把策略初始化到合理 behavioral manifold 内,让模型至少知道环境动作格式和基本任务语义。没有这个阶段,后续 RL 很容易把大量无效 action 也当作训练样本。

Format Penalty

Agent response 必须包含显式的 <think>...</think><action>...</action> 结构。如果缺 tag、嵌套错误,或 tag 外有不合法内容,就在最终 reward 中加入固定惩罚 。这个 shaping signal 在早期训练尤其重要,因为它把“动作格式是否可执行”变成密集反馈,降低 invalid rollout 对 policy update 的污染。

Auxiliary KL Loss

为了避免策略过快远离 reference model,论文加入当前策略 与 reference policy 之间的 KL penalty,并采用 Bregman divergence estimator 这个项的作用不是让策略不学习,而是控制 update 的幅度:在 agent 环境中,过快 drift 会让后续状态分布、动作格式和 reward estimator 同时失稳。

每个 PO method 先用默认配置训练,再做 method-specific grid search,直到最后 training steps 的 success-rate variance 低于预设阈值。论文特别指出 IS clipping 相关超参非常敏感,例如 GSPO 的 调到 会提升 ALFWorld,而继续到 会退化。

标准化 testbed 的增量效果(Table 2, ALFWorld):

AlgorithmStrategyTask Score ΔSuccess Rate Δ
GRPO+ Behavior Cloning+2.56+20.71
GRPO+ +0.49+7.34
GRPO+ KL +0.95+18.10
GSPO+0.70+3.36
GSPO-1.16-9.88
DAPOMax_try +0.59+22.15
SAPOTemperature -1.20-9.85
SAPOTemperature -0.70-9.20

3.3 Four policy-gradient dimensions

Loss aggregation

论文比较 sequence-mean-token-mean 与 token-mean: 其中 sequence-mean-token-mean 让每条 response 权重相近,token-mean 让每个 token 权重相近。论文结果显示,在 TIR Math 这种 response length 差异很大的任务中,sequence-level aggregation 会导致明显性能下降,因为长短 reasoning traces 的权重被重新平衡后会引入 response-level length bias。

IS clipping

IS clipping 控制 的变化范围。GRPO 使用 token-level clipping;CISPO/SAPO 使用 tolerant/soft clipping;GSPO 使用 sequence-level importance ratio。论文的诊断结论是:CISPO/SAPO 在 ARL 里会出现快速初期收益和随后 collapse,因为 tolerant clipping 允许 out-of-bound tokens 保留过强梯度,策略会快速偏离 reference,valid-format ratio 和 gradient norm 随之恶化。GSPO 的 sequence-level clipping 更稳定,因为它控制整条 response 的平均 log-ratio。

Trajectory filtering and resampling

Dynamic filtering 过滤 reward 完全相同的 rollout group:如果一个 prompt 下 个采样全对或全错,group advantage 接近无信息,梯度贡献很弱。论文用约束表达: 这表示只保留同组内既有成功又有失败的样本组。它在 math/agentic setting 中可以提高有效 gradient 密度,但如果底层方法本来格式不稳,dynamic filtering 会放大坏分布,因此必须与更可靠的 advantage 和 sequence clipping 配合。

Advantage design

GIGPO/EMPG 代表 advantage design 维度。GIGPO 把 episode-level outcome advantage 与 step/environment-level advantage 结合,缓解只用最终 reward 时的 credit assignment 稀疏;EMPG 则用训练数据中的 uncertainty reshaping advantage。论文发现,环境局部信息更稳定有效:GIGPO 平均分从 GRPO 的 48.08/46.16 附近提升到 49.71,并且 ALFWorld 提升最明显。

3.4 SAMPO: 把稳定性条件组合起来

SAMPO 的目标是同时满足三个必要条件:sequence-aware update 控制长轨迹 drift,fine-grained advantage 提供局部 credit assignment,dynamic filtering 去掉无信息 rollout group。论文公式为: subject to 其中 直觉上,SAMPO 把“更新多大”从 token-level ratio 升级到整条 response 的 geometric mean ratio;把“该往哪里更新”从全局 success/failure 扩展到局部 step advantage;把“哪些样本值得更新”限定为同组内 reward 有差异的样本。三者分别对应长轨迹漂移、稀疏 reward、zero-gradient group 这三个主要失稳来源。

Figure 2 解读:ALFWorld 和 Sokoban 的 success-rate 曲线显示,SAMPO 不只是最终分高,而是训练过程更单调、更少 collapse。这个图支持论文的核心 claim:单个维度的优化可能在某些阶段有效,但稳定 ARL 需要把 sequence-level clipping、advantage design 和 filtering 组合起来。

3.5 Released code mapping and pseudocode

Code reference: main @ a25a2a22 (2026-05-02) — pseudocode and mapping based on this commit

Paper ConceptSource FileKey Class/Function
Agent rollout loop / environment interactionagent_system/multi_turn_rollout/rollout_loop.pydynamic_multi_turn_loop, run_loop branch using filter_groups
Dynamic filteringagent_system/multi_turn_rollout/utils.pyfilter_group_data
GRPO / GIGPO advantagesrecipe/shop_agent/ppo/core_algos.pycompute_grpo_outcome_advantage, compute_gigpo_outcome_advantage
Advantage dispatchrecipe/shop_agent/ppo/ray_trainer.pycompute_advantage, AdvantageEstimator
SAMPO code pathrecipe/shop_agent/ppo/ray_trainer.pySAMPO rewrites to loss_mode="gspo" and adv_estimator=GiGPO
Sequence-level policy lossverl/trainer/ppo/core_algos.pycompute_policy_loss_gspo
SAPO/CISPO comparison lossesverl/trainer/ppo/core_algos.pycompute_policy_loss_sapo, compute_policy_loss_cispo
ALFWorld SAMPO launch configexamples/embody_agent_trainer/Qwen3-4B/train_sampo.shestimator="sampo", KL/clip/filter settings
WebShop SAMPO launch configexamples/shop_agent_trainer/Qwen3_4B/train_sampo.shestimator="sampo", filter_groups.enable=True

论文公式与 released code 实现差异:paper 把 SAMPO 写成一个统一 objective,并在公式中使用 token-mean 风格的归一化;released code 中没有单独的 compute_policy_loss_sampo,而是在 recipe/shop_agent/ppo/ray_trainer.pyalgorithm.adv_estimator == SAMPO 改写为 policy_loss.loss_mode="gspo"adv_estimator=GiGPO。同时,compute_policy_loss_gspoverl/trainer/ppo/core_algos.py 内强制使用 loss_agg_mode="seq-mean-token-mean",dynamic filtering 则通过 launch config 的 algorithm.filter_groups.enable=True 与 rollout loop 的 filter_group_data 实现。因此 code 中的 SAMPO 是“GSPO sequence loss + GIGPO advantage + config-level dynamic filtering”的组合,而不是一个单独 monolithic loss function。

def dynamic_filter_groups(batch, rewards, group_size, target_batch_size, last_try=False, needed=None):
    """Mirror agent_system/multi_turn_rollout/utils.py::filter_group_data."""
    kept_groups, fallback_groups = [], []
    for prompt_id in range(target_batch_size):
        idx = torch.arange(prompt_id * group_size, (prompt_id + 1) * group_size)
        group_rewards = rewards[idx]
        if torch.unique(group_rewards).numel() > 1:
            kept_groups.append(idx)          # informative group: has both success/failure or varied scores
        else:
            fallback_groups.append(idx)      # zero-advantage group under group normalization
 
    if last_try and needed is not None:
        # last attempt may backfill from uniform groups to avoid an undersized batch
        remaining = max(0, needed - sum(len(x) for x in kept_groups))
        kept_groups.extend(fallback_groups[:remaining])
 
    keep = torch.cat(kept_groups) if kept_groups else torch.empty(0, dtype=torch.long)
    return batch.index_select(0, keep), rewards.index_select(0, keep)
def gspo_sequence_loss(old_logp, new_logp, advantages, response_mask, eps_low, eps_high):
    """Mirror verl/trainer/ppo/core_algos.py::compute_policy_loss_gspo."""
    token_log_ratio = (new_logp - old_logp) * response_mask
    seq_len = response_mask.sum(dim=-1).clamp_min(1)
    log_s = token_log_ratio.sum(dim=-1) / seq_len
 
    # code keeps token-level gradients while using detached sequence ratio baseline
    log_ratio = new_logp - new_logp.detach() + log_s.detach().unsqueeze(-1)
    ratio = torch.exp(torch.clamp(log_ratio, max=10.0))
 
    unclipped = -advantages * ratio
    clipped = -advantages * ratio.clamp(1.0 - eps_low, 1.0 + eps_high)
    loss_matrix = torch.maximum(unclipped, clipped)
    return masked_seq_mean_token_mean(loss_matrix, response_mask)
def gigpo_advantage(outcome_rewards, step_rewards, response_mask, uid, traj_uid, anchor_obs, omega=1.0):
    """Mirror recipe/shop_agent/ppo/core_algos.py::compute_gigpo_outcome_advantage."""
    episode_adv = normalize_rewards_by_prompt_and_traj(outcome_rewards, response_mask, uid, traj_uid)
    step_group_uid = build_step_group(anchor_obs, uid)
    step_adv = normalize_rewards_by_anchor_step(step_rewards, response_mask, step_group_uid)
    return episode_adv + omega * step_adv
def sampo_train_step(batch, policy, old_policy, config):
    """Released-code composition: SAMPO -> GSPO loss + GiGPO advantage + dynamic filtering."""
    rollouts = collect_multi_turn_rollouts(policy, batch, n=config.env.rollout.n)
    if config.algorithm.filter_groups.enable:
        rollouts = dynamic_filter_groups(
            rollouts, rollouts.episode_rewards,
            group_size=config.env.rollout.n,
            target_batch_size=config.data.train_batch_size,
        )
    adv = gigpo_advantage(
        rollouts.token_rewards, rollouts.step_rewards, rollouts.response_mask,
        rollouts.uid, rollouts.traj_uid, rollouts.anchor_obs,
        omega=config.algorithm.step_advantage_w,
    )
    loss = gspo_sequence_loss(
        old_logp=rollouts.old_logp,
        new_logp=policy.log_prob(rollouts),
        advantages=adv,
        response_mask=rollouts.response_mask,
        eps_low=config.actor_rollout_ref.actor.clip_ratio_low,
        eps_high=config.actor_rollout_ref.actor.clip_ratio_high,
    )
    loss.backward()
    return loss

4. Experimental Setup (实验设置)

4.1 Tasks / datasets

论文使用四类 agentic tasks:

TaskWhat it evaluatesScale/config reported
ALFWorldText-based embodied household tasks with long sequential decisionstrain prompt number 16, validation batch size 128, max interaction steps 50
WebShopE-commerce interactive search/click/buy tasktrain prompt number 16, validation batch size 128, max interaction steps 15
SokobanGrid-world puzzle requiring sequential movement/planningtrain prompt number 32, validation batch size 128, max interaction steps 15
TIR MathTool-integrated reasoning / math with code interpreter style interactiontrain prompt number 512, validation batch size 128, max interaction steps 5

论文未在主文中给出每个原始数据集的完整样本总量;Appendix 的 hyperparameter table 报告了每轮训练使用的 prompt 数、validation batch size 和 rollout group size。

4.2 Models, hardware, and optimization config

主要实验基于 Qwen3-4B:ALFWorld/WebShop 使用 Qwen3-4B-RFT,Sokoban 使用 Qwen3-4B-VL-Instruct-RFT,TIR Math 使用 Qwen3-4B-Base。扩展实验使用 SFT version of Qwen3-8B。所有实验在 NVIDIA H200/B200 GPU 上运行。代码 launch scripts 中 ALFWorld/WebShop 的实际训练入口分别为 examples/embody_agent_trainer/Qwen3-4B/train_sampo.shexamples/shop_agent_trainer/Qwen3_4B/train_sampo.sh

关键配置(Appendix Table 6 + released launch scripts):

ConfigALFWorldWebShopSokobanTIR Math
Base modelQwen3-4B-RFTQwen3-4B-RFTQwen3-4B-VL-Instruct-RFTQwen3-4B-Base
Max interaction steps5015155
Memory context window2 turns2 turns2 turns8196 tokens
Group rollout size8885
Max prompt length2048409610248196
Max response length5125125124096
Format penalty coefficient0.10.10.10.1
Learning rate
Mini-batch size25612864128
KL coefficient0.010.010.010
Temperature (train / validation)1.0 / 0.61.0 / 0.61.0 / 0.71.0 / 0.6
Total epochs / time200 (~24h)200 (~22h)200 (~12h)17 (~60h)
GPUsNVIDIA H200/B200NVIDIA H200/B200NVIDIA H200/B200NVIDIA H200/B200

4.3 Baselines and metrics

Baselines 按设计维度组织:Base 是 GRPO;loss aggregation 是 ;IS clipping 包括 SAPO、CISPO、GSPO;advantage design 包括 GIGPO、EMPG;dynamic sampling 包括 ;本文方法是 SAMPO。主要指标包括 task score、success rate、TIR Math 的 AIME/AIME25 Pass@4、training curves、off-policy KL、KL loss、gradient norm、valid-format ratio。对于 off-policy staleness,论文还报告 AIME/AIME25 的

5. Experimental Results (实验结果)

5.1 Main results: SAMPO 在三类 agentic tasks 上最稳

Table 3 的 Qwen3-4B 主结果显示,SAMPO 在 ALFWorld、WebShop、Sokoban 上都达到最高分;TIR Math 对 SAMPO 标为不适用,平均分按前三个任务报告。主要数值:

MethodALFWorld Score / SuccessWebShop Score / SuccessSokoban Score / SuccessTIR Math AIME / AIME25Avg
GRPO3.70 / 62.3675.32 / 57.715.51 / 83.9049.96 / 30.7846.16 (48.08 for first three)
4.41 / 72.6164.57 / 51.293.03 / 68.7327.55 / 21.6339.23
SAPO0.80 / 25.1673.85 / 52.10-0.23 / 30.2545.00 / 30.8532.22
CISPO2.16 / 54.4267.96 / 54.71-0.47 / 26.0236.53 / 30.8734.03
GSPO5.19 / 78.6185.29 / 72.485.22 / 82.2251.29 / 37.9552.28
GIGPO4.97 / 81.0967.76 / 56.555.19 / 82.6749.71
EMPG3.32 / 57.9179.16 / 64.324.48 / 79.1648.06
1.95 / 49.5862.43 / 46.175.16 / 82.4054.66 / 38.9742.67
2.49 / 60.5588.10 / 76.826.01 / 86.2053.36
SAMPO7.04 / 92.7288.37 / 77.736.56 / 88.8660.21

结论:SAMPO 相对 GRPO 的平均提升为 ;ALFWorld success 从 62.36 提到 92.72,WebShop success 从 57.71 提到 77.73,Sokoban success 从 83.90 提到 88.86。GSPO 也明显强于 GRPO,说明 sequence-level clipping 是单维度中最关键的稳定因素;但 SAMPO 进一步超过 GSPO,说明 advantage design 和 filtering 的组合仍有增益。

5.2 IS clipping: tolerant clipping 会 collapse,sequence-level clipping 更稳

Figure 3 解读:该图对比 GRPO、GSPO、SAPO、CISPO 以及 sequence-masked 变体在 ALFWorld 上的 success rate、off-policy KL、KL loss、gradient norm 和 valid-format ratio。SAPO/CISPO 初期会有更激进的提升,但随后伴随更大 policy drift、format instability 和 gradient abnormality;sequence-masked 版本能显著缓和 collapse。这证明 ARL 中“ratio 越宽松越好”不成立,长轨迹需要 sequence-level 控制。

Figure 4 解读:该图从 token-level 和 sequence-level 两个角度分析 SAPO 与 。左侧展示超出 clipping range 的 token 比例,并按 negative/positive advantage 分解;右侧按 advantage sign、entropy 和 IS ratio magnitude 划分 rollout groups。sequence masking 的效果是抑制对整条轨迹有害的 ratio outliers,而不是只在单 token 上做局部修补。

Appendix Figure 解读:CISPO 的 sequence-level masking 分析与 SAPO 结论一致:当 out-of-bound ratio 集中在负 advantage 或高 KL 轨迹上时,保留这些 token 的梯度会加速训练崩溃。masking 后的曲线说明,collapse 不是环境偶然噪声,而是 clipping 设计与多轮轨迹偏移之间的系统性问题。

5.3 Stabilizing SAPO/CISPO and off-policy staleness

对 SAPO/CISPO 的稳定化实验(Table 4, ALFWorld):

MethodMetricOriginalKL (0.05)Off-Policy (1024)Seq-Mask
CISPOScore2.161.600.985.25
CISPOSuccess54.4238.4621.5978.88
SAPOScore0.802.403.824.88
SAPOSuccess25.1648.0564.3076.92

提高 KL penalty 或增大 off-policy mini-update batch 并不能稳定解决问题,最佳策略是 sequence-level masking。这也解释了为什么 SAMPO 的 sequence-level update 是核心,而不是简单调大 regularization。

Off-policy staleness(Table 5)显示,过高 staleness 会同时损害 ALFWorld 与 Math:

DegreeALFWorld ScoreALFWorld SuccessAIME k@1AIME k@32AIME25 k@1AIME25 k@32
Low3.5060.8026.9587.3424.6150.00
Medium3.8358.3824.2275.0017.9748.59
High2.3352.7119.5374.9916.4143.85

5.4 Dynamic filtering and format stability

Appendix Figure 解读:该图展示 ALFWorld 和 WebShop 中 GRPO、GIGPO、 的 format-validity ratio。dynamic filtering 如果直接加在 GRPO 上,会在部分环境中损害格式稳定;但与 GIGPO 的细粒度 advantage 组合后, 更能维持 stable format behavior。这支持 SAMPO 的组合式设计。

5.5 Scaling to Qwen3-8B

8B model 的 ALFWorld/WebShop 结果与 4B 趋势一致:SAMPO 继续最强。

MethodALFWorld Score / SuccessWebShop Score / Success
GRPO2.37 / 50.9285.48 / 73.98
1.68 / 49.3191.21 / 83.57
SAPO0.08 / 1.9384.73 / 74.47
CISPO0.80 / 30.8387.80 / 73.74
GSPO5.05 / 79.7091.61 / 83.15
GIGPO4.10 / 80.0389.26 / 78.91
EMPG4.51 / 71.4888.60 / 75.46
0.81 / 38.1186.52 / 76.52
2.49 / 60.2791.92 / 82.42
SAMPO8.98 / 97.7193.43 / 84.02

这说明更大模型并不会自动解决 ARL 的稳定性问题;sequence clipping、advantage design、filtering 的层级重要性在 8B 上仍保持。

5.6 Qualitative case visualizations

Appendix Figure 解读:WebShop API agent 的 Sankey 图用绿色/红色分别表示成功与失败轨迹。它把错误模式从单个 reward 数字展开为 action-transition 分布:失败往往集中在搜索、点击、返回和购买之间的错误转移。

Appendix Figure 解读:该 failure-only 图按 action type 着色,帮助定位 WebShop API agent 的失败动作类别。对 ARL 稳定性而言,这类可视化说明 format/action validity 不只是日志指标,而是会改变整条交互路径的结构。

Appendix Figure 解读:RL-optimized WebShop agent 的 success/failure Sankey 与 API agent 对比,用于观察 RL 后动作转移是否更集中到有效路径。若成功路径更聚焦,说明 policy optimization 不只是提高 final reward,也改变了中间 action distribution。

Appendix Figure 解读:RL failure-only 图展示优化后仍残留的错误动作类型。它可作为后续改进 format penalty、environment-level advantage 或 action constraints 的诊断入口。

Appendix Figure 解读:ALFWorld API agent 的 success/failure Sankey 展示 embodied household tasks 中动作链的分布差异。ALFWorld 的 horizon 更长,因此早期错误 action 更容易级联成失败轨迹,这也是 SAMPO 在 ALFWorld 上收益最大的原因之一。

Appendix Figure 解读:该图把 ALFWorld failure trajectories 按动作类型着色,说明动作有效性、状态转移和长程 credit assignment 的耦合关系。它补充了主实验曲线:valid-format ratio 和 success rate 背后对应的是具体错误动作链,而不只是 scalar metric 波动。

5.7 Limitations and takeaways

论文没有声称 SAMPO 已覆盖所有 agentic domains:TIR Math 中 SAMPO 主表标为不适用,且论文主要在 ALFWorld、WebShop、Sokoban、TIR Math 四类任务验证;更开放的 Web/Research agent、多 agent 协作、真实工具调用成本等仍需要额外实验。代码层面,SAMPO 的 released implementation 是组合式配置路径,而非一个单独 loss class,因此复现实验时必须同时检查 adv_estimator=sampo rewrite、GSPO loss、GIGPO advantage、filter_groups.enable 和具体 launch script 超参。

总体结论:ARLArena 的主要贡献是把 Agentic RL 的“训练不稳定”从经验现象变成可诊断的 policy-gradient 维度问题。最强经验结论是 sequence-level clipping 对长轨迹稳定性最关键,fine-grained advantage 与 dynamic filtering 进一步提高最终表现;SAMPO 的 4B/8B 结果说明这套组合在 agentic setting 中比单维度改动更可靠。