(来源:图灵人工智能)
转自沙丘社区,仅用于学术分享,如有侵权留言删除报道作者|沙丘智库研究团队
来源|沙丘社区(www.shaqiu.cn)
同样调用GPT-5-mini,让Agent修复软件问题,一套方法的成功率是24.4%,另一套达到48.3%。差距接近一倍,模型却没有换,也没有重新训练。
这是Google DeepMind与伊利诺伊大学厄巴纳—香槟分校合作论文Evo²中的一组结果。论文比较了几种自动改进Agent的方法。在从SWE-bench Verified中选出的60道软件修复任务上,Evo²拿到了48.3%的问题解决率,对照方法中最高的是SICA的24.4%。
Evo²改变的是Agent使用模型的方式:提示词怎么组织、工具怎么调用、执行结果怎么影响下一步。这套工作流程,也可以交给AI来改。
研究随后又往前走了一步:把修改流程、检查效果的经历,拿来训练负责改进Agent的模型。
01
模型不变,工作流程如何拉开成绩差距
让编程Agent修一个Bug,通常要经历查看问题、查找代码、修改文件、运行测试,再根据报错继续处理。模型参与这些步骤,但它看到哪些信息、能用哪些工具、何时重试,还取决于外面那层程序。
论文把这层程序称为harness。可以把它理解为Agent的工作流程代码,负责组织提示词、工具、上下文和执行顺序。
例如,测试失败后,是只把最后一行报错交给模型,还是连同相关代码一起交给它?一次修改没成功,是继续沿用原思路,还是调整处理步骤?这些都是这层程序可以影响的地方。即使底层模型相同,Agent完成任务的表现也可能不同。
Evo²研究的就是如何自动修改这层程序。它的对照方法也会改进Agent,所以开头的24.4%和48.3%,比较的是不同改进方法最后得到的成绩,并非一个Agent优化前后的变化。

图1|同样的模型,不同方法改进工作流程后的成绩。测试范围为60道SWE-bench Verified任务;报告三次独立搜索的平均结果。对照方法取排名第一的候选,Evo²取前二候选中成绩更好的一个。来源:Evo²论文表3及第4.4节,沙丘社区整理。
另一列结果也值得看。换成Claude Haiku 4.5后,Evo²是47.8%,最强对照方法是45.0%,差距就小得多。GPT-5-mini上的近一倍,并不能照搬到其他模型上。
那么,Evo²具体怎样改这套流程?
02
修改与诊断协同,Evo²如何优化Agent
Evo²让同一个模型承担两种工作。
第一种是提出并执行修改。模型读取现有流程代码和测试成绩,寻找可以改进的地方,再把修改写进程序。论文称这个角色为Proposer。
第二种是检查修改效果。模型会看到代码改动、成绩变化,以及成功和失败任务的执行记录,再决定下一步:继续修改、借用其他候选程序中的有效办法,或者保留当前版本。这个角色叫Reflector。
两种角色使用同一个模型,通过不同的提示词分工。一次修改完成后,系统会实际运行任务,拿执行结果来判断效果;检查环节提出的新建议,也要落到程序里再测试。
它要检验的是:照着这条建议改完,Agent有没有把任务做得更好。
系统还会保留多个候选版本,让不同修改路线并行发展。如果一条路线发现了有用的办法,另一条路线可以把它引入自己的程序,再验证两者能否配合。这是论文所说的交叉搜索。
在GPT-5-mini那组实验中,执行任务、修改程序和检查效果都由GPT-5-mini完成,模型参数始终不变。这里验证的是这套流程改进方法的效果,还没有涉及训练。
03
从优化Agent,到训练改进Agent的能力
一次调优结束,除了留下更好的程序,还会留下很多记录:当时哪里出了问题,尝试改了什么,为什么继续修改,最终成绩有没有提高。
Evo²把这些记录用作训练材料,希望模型逐渐学会怎样提出更有效的修改、怎样根据执行结果给出更有用的建议。

图2|左侧模型负责修改程序和检查效果,右侧是不断产生新版本的Agent工作流程。修改与执行记录用于训练左侧模型,训练后的模型再参与后续改进。来源:Evo²论文图1,原图。
为了研究这一步,作者在主要实验中使用Qwen3.8-27B,并把两份职责分开:负责实际完成任务的模型保持不变,负责修改程序和检查效果的模型接受训练。
训练流程叫EvoTIDE。它先整理有效的修改和反馈记录,通过监督微调,让模型学习怎样改程序、怎样诊断问题;随后再用强化学习,根据实际执行结果,训练它选择更有效的修改和建议。
这要求系统把“建议说得好不好”落到可以检验的结果上。一条诊断建议有没有价值,要看另一个角色照着它修改程序后,任务成绩发生了什么变化。
训练后的模型会继续参与下一轮程序改进,新的修改和测试又产生新的训练材料。作者想建立的联系就在这里:改Agent的经历,可以继续用于训练改Agent的能力。
04
训练收益与迁移表现,实验给出来哪些证据
为了单独检查训练的作用,作者固定了搜索方法、任务执行模型,以及供修改的初始候选程序,只改变负责改进的模型有没有经过EvoTIDE训练。
在Polyglot编程测试上,两组最终程序的成绩分别是61.8%和78.0%;在SWE-bench Verified软件修复测试上,则是46.0%和51.0%。

图3|只改变改进者是否经过训练,比较得到的Agent程序成绩。各行采用不同任务的指标,不宜跨行比较高低。来源:Evo²论文表5及第4.6节,沙丘社区整理。
这组对照支持了训练改进者的价值,但软件修复任务上的证据还不够强:46.0%到51.0%对应的P值为0.086,没有达到常用的0.05显著性标准。Polyglot的结果更明确,P值为0.001。开头GPT-5-mini的近一倍差距,不能拿来替代这里的训练证据。
研究还检查了改好的程序换一批任务能否继续使用。在六个跨编程基准的迁移方向中,Evo²有五个取得最高成绩。这里迁移的是已经改好的工作流程,说明其中一些改法能用于其他任务;它还不足以证明系统能够在任意任务上持续自我提升。
对正在开发Agent的人,Evo²提供了一个具体的改进方向:遇到效果瓶颈,除了比较模型,也可以检查模型拿到了什么信息、工具怎样配合,以及失败反馈有没有被有效利用。
更值得继续观察的是调优记录的用途。代码改动、执行过程和测试结果,原本帮助开发者判断哪个版本更好,现在也能用来训练负责改进的模型。
一次Agent优化,可以留下两份成果:一套更好用的工作流程,以及一个更会改进工作流程的模型。这也是评价此类研究时需要分开看的两件事:程序的成绩提高了多少,负责改程序的模型又真正学到了多少。
论文:Evo²: Evolving the Evolver through Weight-Harness Co-Evolution(https://arxiv.org/html/2610.13025v1)
论文作者:Chejian Xu、Shujian Zhang、Wenxuan Zhou、John Lambert、Beck Chen、Bo Li、Andrew Hard、Rajiv Mathews。











