Before They Can Solve: Predicting Post-Training Coding-Agent Performance from Base Models
Tan Yu, Alexander Bukharin, Khushi Bhardwaj, Jennifer Williams, Zirui Liu, Jonathan Lingjie Li, Soumye Singhal, Joseph Jennings, Sanjeev Satheesh, Yash Jain, Ashish Vaswani, Venkat Krishna Srinivasan, Matthew Papakipos, Hyunwoo Kim, Jian Zhang, Oleksii Kuchaiev, Markus Kliegl, Mostofa Patwary, Mohammad Shoeybi, Bryan Catanzaro, Jonathan Cohen, Jiantao Jiao
cs.AI, cs.SE
2026-10-08
在成功 agent 轨迹的决定性步骤上用三个探针评基座模型,对十对模型的后训练 SWE-bench 排名相关最高 0.964,最好的静态基准只有 0.830。
做一个编程 Agent,最贵的决定发生在最早:选哪个基座 checkpoint 进后训练。等 SFT 和 RL 跑完才发现选错,卡时已经烧掉。现有评测在这个决策点上两头失灵。
端到端基准(SWE-bench Verified 这类)把基座模型放进工具调用环境直接跑,论文测了六个 checkpoint,五个 pass@1 为 0.0,唯一非零的还把排名带偏,那个模型后训练后在六个里只排第四。基座模型连稳定输出合规 tool call 都做不到,基准在地板上把它们全部 tied。另一头,HumanEval、MBPP 这类单轮基准能跑,预测力却散乱:十对公开基座/后训练模型上,与后训练 SWE-bench Verified pass@1 的 Spearman ρ 从 RepoBench XFirst 的 0.830 散到 HumanEval 的 -0.394;MBPP 在十个模型上只拉开 67.2–86.0,下游目标却差了 40 多分。
出发点是 coverage 原则:近年的多项研究发现,RLVR 主要放大基座模型本来就能采到的解,而不是创造新解。既然后训练是在基座分布里做选择,该量的就是基座给「成功 Agent 行为」留了多少概率质量。
在哪里量,让任务自己的 verifier 决定。先用前沿后训练模型(GPT-5.6-Sol、Opus5、Kimi-K3,mini-swe-agent 框架)在 DeepSWE、SWE-Pro、SWE-bench Verified 上收集成功轨迹,然后:
工程上最贵的资源是 verifier 执行,找决定性步骤用二分把每条轨迹的验证次数压到对数级;前两个探针是静态的,每个 item 只要一次 forward。
十个公开基座 checkpoint(Nemotron-3 三档、Qwen-3.5-35B、DeepSeek-V4 两档、Kimi-K2、GLM-4.5-Air、腾讯 Hy3、Gemma-4-26B),对照各自后训练版本在 SWE-bench Verified 的 pass@1(38.8 到 80.6):
| 探针(DeepSWE 轨迹构建) | SWE-bench Verified ρ | Multilingual ρ | Terminal-Bench 2.1 ρ |
| Decisive-Action BPB | 0.964 | 0.976 | 0.833 |
| Patch MCQ | 0.867 | 0.927 | 0.796 |
| Prefix pass@K(K=32) | 0.951 | 0.945 | 0.930 |
静态基准最好只到 RepoBench XFirst 的 0.830(CRUXEval-O 0.758,MBPP 0.091,HumanEval -0.394)。换轨迹来源也不敏感:用 SWE-bench Verified 自己的轨迹构建,三个探针仍有 0.915、0.903、0.906,跨域的 DeepSWE 来源反而更高,说明不是同基准泄漏撑起来的。
消融坐实了设计选择:BPB 摊到所有步骤,ρ 从 0.964 掉到 0.915,还把 DeepSeek V4 Flash 与 Nemotron Ultra、Kimi K2 与 Qwen 3.5 35B 两对模型排反。Patch MCQ 若对选项独立算 BPB 取最小,ρ 从 0.867 掉到 0.665。pass@K 的预算 K=16 基本吃满(0.952,K=32 为 0.951)。
控制变量的 SFT 实验:三个基座用同一配方(1000 步、16.8B token)训练,后训练成绩 28.5、53.1、61.2,三个探针给出的排序与之一致。
对基座选型团队,静态探针每个 item 一次 forward、不碰环境,就能拿到与后训练成绩高度一致的排序,是能直接落地的筛选器。框架本身更有价值:只要有成功轨迹加可执行 verifier,任何 agentic 编码基准(包括未来的)都能反过来当基座模型评测用。它把「后训练潜力」从只能事后验证的东西变成训练中可监测的信号,和用 pretraining loss 选数据是同一类思路。
也要诚实:这是十个点上的相关性结果,是排序工具,不是校准的预测器。它告诉你哪个 checkpoint 更值得投入,不告诉你投入后能到多少分。
论文自认:只有十个 checkpoint、没有置信区间,相关系数是描述性点估计;下游成绩来自各厂不同的后训练配方和 harness;控制变量的 SFT 实验只有三个点,换轨迹来源后部分探针一致性变弱。
迁移不全面:对 Terminal-Bench 2.1,两个静态探针掉到 0.833 和 0.796。Kimi K2 和 Gemma 4 在两套基准上的排名本来就分裂,探针站在了 SWE 一边;覆盖命令行任务大概需要命令行轨迹,论文只列为方向。
读下来另有几处存疑:golden action 与干扰项采样自特定前沿模型,决定性步骤认证了「什么动作有效」,但前缀本身带着这些模型的口吻,静态探针量的可能有一部分是对特定风格的似然而非解题能力;超出上下文上限的长前缀被丢弃,而最长的前缀对应探索最充分的实例,存在选择效应;Patch MCQ 绝对准确率不高(十模型均值 0.411 到 0.504,几率 0.250),排序够用,单题可解释性一般。