跳到主要内容
返回时间线
LMSYS Org来源发表:

软件工程智能体训练不再等最慢一条:异步强化学习把通过率从7.3%提到27.5%

核心概要

在AMD Instinct MI355X上,Qwen3-30B-A3B-Instruct经监督微调后再做全异步智能体强化学习,在SWE-bench Verified的100个分层任务子集上把pass@1从7.3%提升到27.5%,且强化学习任务来自未出现在该基准中的代码库。训练的主要瓶颈不是GPU算力,而是长尾轨迹与CPU沙箱调度:限制轨迹长度让单步时间从850秒降到284秒,改用云沙箱并把并发提到384条后,吞吐从约860条/小时升到约3480条/小时。

Source-provided article image: Training SWE agents with Miles on MI355X: taming long‑tail trajectories and complex sandbox coordination
LMSYS Org

深度剖析

软件工程智能体的强化学习训练不再被最慢的一条轨迹拖住,训练器在攒够已完成轨迹后就更新权重,而不是等整个分组跑完。 此前的同步流程里,同一任务两次尝试的长度可相差2.5倍,而GRPO分组必须等最慢的一次结束才能打分,少数长尾轨迹会拖住整步训练。 在100个分层抽样的SWE-bench Verified任务、每题4次尝试的评测下,该模型的pass@1从7.3%升到27.5%,其中监督微调先把它提到12.8%,智能体强化学习再贡献14.7个百分点。

训练栈把推理与训练拆到不同节点:推理节点跑八个单卡SGLang引擎和负责沙箱的Harbor,训练节点跑Megatron-LM并把新权重推回引擎。 长尾之外,每条轨迹都需要独立沙箱来构建和测试代码,沙箱因此成为关键路径上的CPU集群,智能体等待沙箱时GPU槽位空转。 在288 GB HBM3E的MI355X上,把沙箱迁到E2B云微虚拟机后,384条轨迹并发时引擎队列为空、KV缓存占用至多23%,云沙箱启动中位数1.9秒,而本地Docker在负载下为11.7秒。

限制轨迹长度和引擎侧上下文上限,把长尾和KV缓存抖动从训练流程里移出去。 不设上下文上限时,少数生成膨胀到113K至186K token,约10条就填满引擎的1.5M token KV缓存,同引擎其余99个请求拿不到token直至超时。 在同一块8卡推理节点上收紧长度上限后,训练步时间从850秒降到284秒,约3倍加速,且对成功轨迹没有影响。

启示与展望

结果来自Qwen3-30B-A3B-Instruct在AMD Instinct MI355X上的训练与评测,评测集是SWE-bench Verified的100个分层抽样任务、每题4次尝试;吞吐与步时间分别来自不同的硬件对比,而非同一次固定硬件的运行。

作者报告训练运行145步并经历三次从检查点重启,曲线没有漂移或发散;同时指出3.1%的轨迹以基础设施错误结束,这类错误与错误修复一样记0分,需要记录并过滤。