参考网页驱动修代码,Astra深度8成功率降至64%

ProgramDistill: From Interactive Web Apps to Verifiable Reference-Guided SWE Tasks

Jeonghye Kim, Minseon Kim, Young Jin Kim, Matheus Pereira, Marc-Alexandre Côté, Alessandro Sordoni, Xingdi Yuan, Zhengyan Shi

cs.SE, cs.AI

2026-09-16

从26个可运行网页自动挖出1975条可回放行为和4063个修代码任务。部分重建上Astra从深度1的100%降到深度8的64%,全量重建累计工作流只过49.2%。

这篇在解决什么

SWE-bench 一类评测假定需求已经写在 issue 或测试里。真实网页开发经常反过来:旁边有一个能点的参考产品、旧版本或原型,当前仓库缺功能,人要自己点一遍参考、把行为猜出来、再改代码。ProgramBench 做过「对着编译好的程序反推源码」,单位是整程序。交互网页还有登录才能建对象、建了才能改这类前提链条,整程序一把修会把粒度吃掉。

ProgramDistill 把一个能跑的网页拆成可回放的行为,再沿前提谱系拼成从修一个功能到重建整个应用的任务。出处是 KAIST 和 Microsoft Research Montréal,评测模型含 GPT-6 Astra、Claude Opus 5、Grok 4.6 等九个前沿 coding agent。

方法

流水线叫 mine-craft-patch,构建模型全程 GPT-5.6 Sol。

应用 26 个,来自 OSWorld 网页套件和开源 SaaS 克隆。确定性时钟和重置保证重放。浏览器助手基于 Playwright,评测 agent 只拿结构化观察,不给截图。

结果

挖出 1975 条通过重放的行为、4063 个任务(2862 原子、1201 累计)。完整集太贵,固定套件 ProgramDistill-300 按深度 1 到 8 分层,覆盖全部 26 个应用。

部分重建(在被遮仓库上修)平均二元成功率:

模型二元成功率单轨迹成本
GPT-6 Astra84.3%$33.99
Claude Opus 568.7%$28.86
GPT-5.6 Sol60.7%$16.01
Grok 4.648.3%$8.83
Claude Sonnet 547.3%$13.12
GPT-5.3 Codex45.7%$5.99
Gemini 3.7 Flash45.3%$3.89

深度 1 时 Astra 100%、Opus 96%;深度 8 时分别掉到 64.0% 和 32.0%。logic-only 比 logic-and-UI 好修,Astra 二元成功率 92.9% 对 76.9%。Astra 观察最多、改得最少:当前应用观察每轨约 96.3 步,编辑约 9.9 步。深度从 1 到 8,待恢复代码行大约 9.3 倍,每个目标上的参考观察从 34.60 掉到 8.46。捷径尝试(翻 Git、偷源码)出现在 7.2% 的轨迹里,Grok 4.6 达 19.0%,Astra 仅 0.3%。

全量重建从最小脚手架做起,12 个有状态应用。Astra 原子行为 58.98%、累计工作流 49.15%;Opus 42.03% / 28.81%;Sol 33.39% / 21.07%。失败里 59.2% 是参考里根本没观察到该行为,27.9% 观察到了但状态、路由或结果不对。

为什么重要

这是目前最接近「对着活产品修网页」的可验证基准:同一条轨迹既是规格也是测试。修复深度把「会修一个按钮」和「把八步工作流一起保真」拆开,后者才是现在的悬崖。轨迹还显示,领先模型的差别有一半在观察和自检预算,不在会不会写代码。

可直接当课程:浅任务先过,再加深度。论文也把它标成后续蒸馏和 RL 的数据源。基准仍在准备公开。

局限与存疑

观察没有截图,视觉保真不在评分里。应用是自包含网页,没有外部服务和桌面/移动端。构建模型固定为 GPT-5.6 Sol,挖到哪些行为会随构建模型变。选择器和 harness 一变,能挖的行为和排行也可能变。参考引导修代码有被拿去克隆专有产品的风险,实验限于公开仓库。

深度效应是否只是上下文更长?附录按相近逐步 prompt 长度看过,深度下降仍然在。gold patch 能过,说明任务可解;agent 掉点,掉的是组合和观察,不是题目坏了。

术语

原文与代码

相关论文

全部论文解读