CalibForge:用 solver 解题行为反向校准任务难度,给终端 agent 造「可学」训练数据

CalibForge: Adversarial Solver Calibration for Scaling Learnable Terminal Tasks

Fanzhe Meng, Guoxin Chen, Jiale Zhao, Shuang Sun, Zhiyu Lin, Wayne Xin Zhao, Ruihua Song, Ji-Rong Wen, Kai Jia

cs.LG, cs.CL

2026-08-07

把 solver 解题的通过或失败当反馈,反向改写终端任务把它逼进「强解弱挂」的可学区间;5431 个任务训出的 agent 在 Terminal-Bench 2.0 达 47.57%。

这篇在解决什么

训终端 agent(在命令行环境里干活的 coding agent),需要大量「可执行、可验证」的任务当训练数据。现有合成流水线能把任务造出来、跑通验证,但「能跑通」不等于「适合学」:太简单的任务学不到东西,太难或干脆无解的任务提供不了梯度。一个任务到底落在「刚好能学」的区间里没有,光靠构造和验证看不出来,得让 solver 实际去解才知道。

CalibForge 的核心想法是:把 solver 的解题行为当作构造任务时的反馈信号,逼着任务往「刚好能学」的区间靠。

方法

CalibForge 把任务构造变成一个受限的「作者与 solver」对抗循环。从一个线索出发,作者 agent 先做联网调研(查文档、GitHub issue、Stack Overflow),挑一个具体的工程问题(版本特定的 bug、依赖冲突、配置陷阱、可复现的边界情况),联合写出任务指令、Docker 执行环境和验证测试。候选任务要过两道关:结构验证(文件齐、环境能起、初始态下所有测试都失败)和自解(作者自己能在沙箱里解出来),证明它可执行、可解。

然后进入对抗校准。每一轮,CalibForge 起若干隔离沙箱,派 solver subagent 去解同一个任务,用验证器判定通过或失败,连同完整交互轨迹和诊断摘要反馈给作者。作者据此改任务(可以回去重做调研、改指令、改环境或改测试),改完重新验证、重新探测,直到满足留存标准,或达到 50 轮上限被丢弃。留存标准有两种,定义了什么是「可学区间」:

两种标准都锚定在「已被证明可解」上,保证留下的任务不会无解。最终用强 teacher(DeepSeek-V4-Pro)在留存任务上蒸馏 SFT 轨迹,再去微调目标 agent。

结果

CalibForge 一共产出 5,431 个校准任务(多 solver 1,263 个,对比校准 4,168 个),覆盖 16 个领域类别。

在 Terminal-Bench 2.0 上,用 CalibForge 轨迹微调的 Qwen3-30B-A3B-Instruct 达 32.58%、Qwen3.5-35B-A3B 达 47.57%,分别比同协议下最强基线高 6.36 和 6.75 个百分点。所有基线任务集都重新用同一个 teacher 蒸馏、同一套训练配方,所以差异主要来自训练数据本身。

迁移到域外的软件工程基准:在 SWE-bench Pro(长程 issue 修复)上,30B 模型比基座涨 27.68 个百分点(3.26 到 30.94),35B 涨 3.03;在 Doc2Repo(从自然语言生成完整仓库)上,30B 涨 30.04,35B 涨 3.85。注意 35B 的绝对涨幅远小于 30B,说明底座越强,校准数据的边际收益越小。

消融最能说明机制。在固定 1,300 个任务的对照里:不做 solver 校准(只构造加验证)准确率 22.47%,加单一 solver 反馈 24.34%(涨 1.87),多 solver 校准 29.21%(涨 6.74),对比校准 31.09%(涨 8.62)。多 solver 校准产出的轨迹比不校准还少,准确率却高得多,证明涨点不是数据量带来的。

还有一个细节:对比校准首轮探测时,只有 19% 的任务天然满足「强过弱挂」,其余都通过了结构验证和自解却落在这区间之外(大多是强弱都过、太简单);经过多轮改写再探测,最终 96% 满足标准。说明 solver 反馈主要是在重塑任务,不只是筛选。

为什么重要

终端和 coding agent 是当下最热的方向之一,而高质量可验证任务稀缺是公认瓶颈。CalibForge 把「任务难度」定义成相对 solver 的可学区间,并用对抗循环把任务逼进这个区间,给出了一套可复用的训练数据构造范式。对做 agent 训练数据的人有直接参考价值。

局限与存疑

论文没有单列局限章节。读下来有几个值得留意的地方。第一,整条流水线很贵:作者 agent 用 DeepSeek-V4-Pro,每个任务最多 50 轮校准、每轮多个 solver、每次最多 100 步 30 分钟,5,431 个任务的构造开销不低。第二,强底座(35B)上相对涨幅明显收窄,「可学区间」对已经很强的模型还能不能持续喂出增量,没验证。第三,所有 solver 和 teacher 都来自少数几个闭源模型,任务难度区间天然绑死在这些模型的能力分布上,换一批 solver 结论可能变。

术语

原文与代码

相关论文

全部论文解读