Paper

Before They Can Solve:不跑一次智能体,就能预测它训练后有多强

4 min read ·

每个准备做智能体后训练的团队都面对过同一道送命题:选哪个基座模型? 翻排行榜,排出来的候选训练完表现平平;听社区口碑,换个仓库就翻车。arXiv 2610.10478(10 月 7 日提交)《Before They Can Solve: Predicting Post-Training Coding-Agent Performance from Base Models》把这个长期靠直觉的决策变成了可计算的问题,并且给出了 0.964 秩相关的答案。

一、为什么现有评估两头堵死

评估一个基座「值不值得训练」,直觉做法是让它直接跑任务,但这条路有两个方向都走不通:

太智能体的评估跑不动。端到端 pass@K 要求基座自己完成多轮工具调用直到任务通过。问题是许多基座连一次格式正确的工具调用都产生不了——不是不会解题,是连「开口说话」的格式都不对。全零的结果毫无区分度,而同样的基座经过一轮 RL 后可能表现天差地别。

不够智能体的评估测不准。退化方案是把多步任务压成「给定 prompt 产出单个补丁」,绕开工具调用失败。但它同时绕开了真正要测的能力:在仓库演化中维护连贯的多步状态。论文用数据钉死了这一点:十个模型对上,现有基准与训练后 SWE-bench Verified pass@1 的 Spearman 秩相关从 RepoBench XFirst 的 0.830 一路烂到 HumanEval 的 -0.394——负相关意味着在某些基准上排名越高,训练后反而越差。

二、核心洞察:成功轨迹是基座潜力的「前瞻信号」

论文的出发点非常聪明:不要问「基座现在能不能解题」,而问「基座对解题路径的支持度有多高」。已经训练好的智能体留下一批成功轨迹,每条轨迹都是一次「基座潜力被兑现」的记录。

具体做法是回放:逐条重放训练后智能体的成功轨迹,每执行一个改码步骤就重跑测试,找到决定性步骤——第一个让仓库从失败翻转为通过的步骤。这一步被验证器认证:在给定上下文下,这个动作确实解决了任务。它就是整条轨迹里信息密度最高的瞬间。

这个定位过程还有一个重要的副产品:被跳过的步骤同样携带信息。一条轨迹可能有几十步导航、读文件、试错,但只有一步真正把测试从红翻绿——把它与其余步骤区分开,等于把「叙事」和「贡献」剥离开。传统评估把所有步骤一视同仁地平均,信号正好被大量低信息步骤稀释;这是全步 BPB 与决定性步 BPB 之间那 0.05 相关性差距的来源。

三、三道零冷启动的筛选题

锚定决定性步骤后,三道筛选全部不需要基座驱动智能体框架,破解了冷启动问题:

  1. 决定性动作 BPB(bits per byte):测基座对认证动作的概率质量。基座见过类似的操作吗?对正确路径的支持度有多高?
  2. Patch 多选题:把认证动作与同一验证器否决过的替代项放在一起,让基座选择。测的是判别力而非生成力。
  3. 前缀条件 pass@K:给定轨迹前缀,看基座能否生成任何被测试接受的续写,给功能正确的生成记分。

第三道尤其有意思——它保留了 pass@K 的宽容性(多采几条总有一条对),但把采样条件从「冷启动」改成「站在成功轨迹的前缀上」,等于把多步难题拆成了基座答得动的单步题,却不丢状态维护的信息。

四、数字:0.964 意味着什么

十个公开基座-训练后模型对上的结果:

  • 全步平均 BPB 的秩相关已是 0.915;只看决定性步骤后升到 0.964;
  • 三道筛选彼此独立构造,排名高度一致,互为稳健性检查;
  • 论文展示了方法纠正全步 BPB 排序错误的能力(例如把 DeepSeek V4 Flash 排到 Nemotron Ultra 与 Kimi K2 之前——与训练后成绩一致)。

0.964 的秩相关放在「预测一轮昂贵训练的最终产出」这个语境里,已经是可以直接进决策流程的精度。对比现有基准最好 0.830、最差 -0.394 的散乱表现,方法论的差距一目了然。

五、工程启示

对大多数团队,这篇论文的价值不在复现细节,而在三个可迁移的原则:

  1. 评估要锚定信息密度最高的时刻。全轨迹平均稀释信号,决定性步骤浓缩信号——这个原则适用于任何带验证器的任务域,不止代码。
  2. 成功轨迹是最便宜的前瞻信号。你已经花钱买过一轮训练,那批轨迹对挑选下一个基座几乎是免费的测试集。叠加在前缀上的 pass@K 采样成本,相比让每个候选基座完整跑一遍智能体框架,低了不止一个量级——后者还要求你为每个基座调一套能跑通的 harness,这本身就是无底洞。
  3. 冷启动不是评估的必要条件。「模型能不能驱动整个框架」和「模型离能不能解题有多近」是两个问题,后者才决定训练投资回报。

论文的方法只需要一个基准的成功轨迹加它的验证器,作者明确指出这可以推广:未来的智能体编码基准都可以顺手改造成基座评估。当基座选择的试错成本从「一轮 RL」降到「一次回放」,整个智能体后训练的迭代节奏都会被改写——这可能是这篇论文比 0.964 这个数字更重要的地方。

Frequently asked questions

这篇论文要解决的核心痛点是什么?
智能体后训练非常昂贵,而选哪个基座 checkpoint 主要靠拍脑袋。直接用端到端 pass@K 评估基座行不通:许多基座连一次格式正确的工具调用都产生不了,测出来全零但训练后表现差异巨大;退化成单步补丁任务又测不到多步状态维护能力。论文给出了介于两者之间的第三条路。
三道筛选题分别测什么?
都锚定在「决定性步骤」上——回放成功轨迹、每步改码后重跑测试,找到第一个让仓库从失败变通过的步骤。其上构造:一、决定性动作 BPB,测基座对该动作的概率质量;二、Patch 多选题,让基座在该动作与被验证器否决的替代项之间做选择;三、前缀条件 pass@K,看基座在给定前缀下能否生成任何通过测试的续写。
效果数据怎么样?
十个公开的基座-训练后模型对上,三道筛选的排名与训练后 SWE-bench Verified pass@1 高度一致。对照很鲜明:现有基准的相关性极其混乱,RepoBench XFirst 只有 0.830,HumanEval 甚至出现 -0.394 的负相关;而全步平均的 BPB 从 0.915 提到只看决定性步骤的 0.964。论文还展示了它能纠正全步 BPB 排错的两对 checkpoint。
这套方法对工程团队有什么实际价值?
最直接的用途是省掉试错式后训练:评估一组候选基座只需要目标基准的成功轨迹加验证器,不需要让每个基座冷启动跑一遍智能体框架,成本下降几个量级。它也能反过来解释失败——如果某基座在决定性动作上概率质量极低,说明瓶颈在基础能力而非训练配方,换数据不如换基座。
方法有什么局限?
它依赖「已有的成功轨迹」作为前瞻信号,所以只能评估与已验证任务同分布或相近的能力,对全新任务类型没有先验轨迹可用。决定性步骤的定位依赖验证器质量,测试覆盖弱的仓库可能标错步骤。此外结论建立在十个模型对的开源生态上,闭源 API 模型不适用这套回放方法。
// next.txt ›

Some outbound links in this post are affiliate links — see disclosure.