Перейти к содержимому
Оригинал
AINLP· NLPer·· 2 дня назадОценка ИИ71

微软与 UCSB 提出 ScholarEvolve:用论文进化 Agent Harness

Оригинальный заголовок: 微软提出 ScholarEvolve:用论文进化 Agent Harness

Заголовок и краткое изложение на выбранном языке ожидают перевода.

Краткий обзор ИИ

微软与加州大学圣巴巴拉分校研究者公开论文 ScholarEvolve,从已发表的 Agent 研究中寻找改进思路,写进 Harness 后用真实任务检验,执行任务的模型保持不变。

Полный текст

Полный текст на выбранном языке ожидает перевода. Пока показан оригинал.

正文配图

模型不换也能继续升级

微软与加州大学圣巴巴拉分校(UCSB)的研究者,前几天公开了一篇论文,提出 ScholarEvolve:从已发表的 Agent 研究里寻找改进办法,把它们写进运行框架,再用真实任务检验效果。

它改的是 Harness——围绕模型组织工具、上下文、记忆和执行流程的软件。执行任务的模型保持不变,新的能力来自这套软件怎样为模型提供信息、安排决策和执行动作。

论文在 AppWorld 和 τ²-Bench Telecom 两个交互环境中做了实验。经过框架演化,Qwen3.5-27B 在 AppWorld Challenge 上的任务完成率从 49.6% 提升到 63.6%;GPT-5.4-mini 在 Telecom 上的单次成功率从 72.7% 提升到 81.9%。同一个模型,换一套经过搜索和验证的 Harness,能把更多任务做成。

论文标题 作者与合作单位

ScholarEvolve 有意思的地方,在于它把文献阅读接到了工程改进上:论文提供候选思路,编码 Agent 负责实现,任务结果决定哪些改动留下。新论文还可以继续加入,成为下一轮改进的起点。

失败日志之外,还有已经发表的办法

让 Agent 自动改 Harness,已有一种直接的做法:运行任务,读失败记录,让编码 Agent 改代码,再跑任务。论文中的 Meta Harness 对照就沿着这条路线。

这条路能发现具体错误。不过,失败记录通常只包含当前系统怎样走错了,合适的改法还要靠编码 Agent 自己想。一个过于保守的 verifier 挡住了正常工具调用,继续叠检查和重试,未必能解决问题。论文用这个例子说明,搜索可能一直围绕相近的方案打转。

ScholarEvolve 仍然读失败轨迹,只是把下一步接到研究文献上。它先识别反复出现、能够归因到 Agent 的问题,再去掉应用名、具体实体和 API 字段,提炼成可检索的能力缺口。忘记已经查到的信息,可以指向状态跟踪、记忆检索,也可以指向上下文选择。

为了承接这些不同改法,它把 Harness 拆成五个模块:工具接口、上下文、Skills、记忆和工作流。每个模块有明确的输入输出,能单独替换,也能与其他模块重新组合。

工具接口 Skills与工作流的改动位置

工具接口 Skills与工作流的改动位置

上下文 记忆与独立测试约束

上下文 记忆与独立测试约束

这个拆分给文献里的方法找到了具体落点。记忆模块可以保存并检索经验,上下文模块决定把哪些经验送进模型,工作流则决定模型怎样形成下一步动作。同一个失败,可以尝试从几个位置解决,而不是只在原来的调用链上继续补丁。

一篇论文怎样变成一次框架升级

有了能力缺口,研究 Agent 会为各模块生成检索词,从 arXiv 收集论文标题、摘要和链接。接着,TopicGPT 在模块内部整理、合并和分配主题,把论文按可实现的机制分组。

例如,上下文管理里,按相关性选择片段、改写压缩文本、按预算分配内容,是几条不同的路线。含义重复的主题需要合并,过于模糊或无关的方向需要排除;当前 Harness 或模型已经具备的机制,也不再占一次改动机会。

主实验在 AppWorld 上为每个模块安排四个论文候选,总共二十个。系统从不同机制组里轮流选取,让有限的实现尝试覆盖不同办法。如果只按相关性排序,几篇高度相似的研究就可能用完一个模块的机会。

失败分析 文献检索 主题分组与修改蓝图

失败分析 文献检索 主题分组与修改蓝图

选中的论文随后才进入完整阅读,包括必要附录和可取得的官方代码。研究 Agent 把方法整理成修改蓝图:它依赖什么假设,适合哪个模块,需要保存哪些状态,增加哪些模型调用,以及怎样接上现有接口。编码 Agent 拿着蓝图与当前实现,一次改一个模块。主实验的研究选择与编码都使用 GPT-5.4,执行任务则仍由原来的 Qwen3.5-27B 或 GPT-5.4-mini 完成。

候选首先要能正常运行:可以导入,接口兼容,经验材料能生成和重新加载,也能产生合法动作。通过这些检查后,才运行验证任务,测量这一处修改带来的变化。

论文附录中的实际代码,让这一轮的结果更容易理解。

其中一个 Skills 实现借鉴 Skill-as-Pseudocode:从成功轨迹里提取反复出现的 API 调用序列,整理为带输入、输出、触发线索和执行顺序的伪代码过程,并记录模式出现的次数。遇到新任务时,系统按任务词语与触发线索的匹配程度、历史支持次数,取回相关过程。

记忆模块保存的则是带结果的任务经验:当时要做什么,走过哪些步骤,调用了哪些 API,工具返回了什么,最后有没有完成。它按当前任务检索相关摘要,给模型一个具体参照。

取回的 Skills、记忆和本轮交互历史随后进入上下文模块。这里按相关性与新近程度分配字符预算,保留系统要求,再把选中片段恢复到原来的时间顺序。模型既能看到较有用的信息,也能知道事情先后怎样发生。

在工作流中,planner、solver 和 critic 用同一个任务模型、以不同角色提出下一步动作,verifier 从中选择一项。工具接口最后提取 Python 动作、检查语法和语句结构;需要查询 API 文档时,还能把文档查询展开为真正的执行步骤。

这些改动串起来,改变了模型做任务时的一轮输入、决策与动作。构建 Skills 和记忆所用的经验来自演化任务,进入验证和正式测试时,这些材料会冻结;正在执行的任务内部,临时状态仍然可以更新。

好模块,还得搭得起来

一个模块单独有效,放进完整系统后可能产生不同结果。ScholarEvolve 因此还要搜索组合:先用单模块收益筛选值得尝试的搭配,再让入围的完整 Harness 真正执行验证任务。

论文有一个很具体的发现。在 Qwen 的组合分析中,一个 Skills 候选单独使用时得分 75.4%;换成单独得分较低的 73.7% 候选,完整组合反而从 80.7% 升到 84.8%。单模块排名,没有给出最好的组合。

表3 单模块与组合的开发集结果

表3 单模块与组合的开发集结果

这张表对应 AppWorld 的 57 项开发任务,每项配置评测三次。Qwen 的组合采用五个演化模块,GPT-5.4-mini 则只替换 Skills、记忆和工作流,保留原有工具与上下文。表中的组合分析与 Qwen 主测试方案使用了不同的 Skills 实现,是为了研究模块配合。

方法来自论文,也要接受当前环境的检验。Qwen 的二十个候选里,十七个单独使用时提高了开发集任务完成率,但其中只有八个的配对 bootstrap 90% 置信区间完全高于零;三个候选掉分,两个上下文改法甚至下降了四十多个百分点。

整个搜索过程最终保留的是验证过的组合。系统用任务配对的 bootstrap 比较新旧版本,确认收益后才更新冠军,再冻结代码和经验材料,进入测试集。

成绩提高,发生在什么任务上

AppWorld 要求 Agent 调用不同应用的 API 完成用户任务。Challenge 的 417 项测试任务需要使用 Amazon 或 Gmail,这两个应用没有出现在演化和验证任务中。演化得到的同一套实现和经验材料,要直接面对这些新应用。

Qwen3.5-27B 在这里从 49.6% 提升到 63.6%,增加了 14 个百分点。只依据执行反馈改码的 Meta Harness 得到 54.6%。要求同一场景的三种任务变体都完成时,初始框架为 28.3%,Meta Harness 为 32.9%,ScholarEvolve 为 44.8%。

Challenge结果 TGC为任务完成率 SGC要求场景三种变体全部成功

Challenge结果 TGC为任务完成率 SGC要求场景三种变体全部成功

在 AppWorld Normal 的 168 项测试任务上,Qwen 的任务完成率也从 69.0% 升到 81.4%。另一个任务模型 GPT-5.4-mini 在 Challenge 上从 46.1% 升到 55.6%。这项改进同时出现在两个模型上,也延伸到了没有用于演化的新应用。

τ²-Bench Telecom 检验的是另一种过程:Agent 根据支持手册、工具返回和用户沟通,处理电信服务问题。GPT-5.4-mini 的结果如下:

框架

单次成功率

四次全部成功

初始框架

72.7%

49.2%

Meta Harness

66.5%

39.2%

ScholarEvolve

81.9%

58.3%

Telecom 使用 40 项测试任务,每次评测对每题尝试四次,表中报告三次独立评测的均值。单次成功率衡量这些尝试中成功的比例,最后一列则要求四次全成功。两项指标一起提高,说明收益既包括更容易做成,也包括重复执行时更稳。

这种稳定性在 AppWorld 上也能看到。全部 585 项测试任务中,Qwen 有 221 项任务的成功次数增加,其中 73.3% 原本就曾在三次执行里成功过一两次。三次全部成功的任务从 205 项增加到 333 项,同时有 57 项任务退步。

作者回看的两个案例很直观:一个任务中,演化后的 Agent 先找到并更新已有对象,不再另建一个;另一个任务中,它先清掉购物车里的旧状态,再执行当前要求。这两个任务都从三次失败变成三次成功。

改进仍然有侧重。失败轨迹里,回复格式不合法的次数从 492 降到 206,违反约束和检索不完整的问题变化较小。框架演化在动作与结果交付上带来了明显收益,需求跟踪与证据覆盖仍有空间。

实验让初始和演化后的 Harness 使用相同任务模型配置、环境步数上限;两种演化方法也获得相同分配的搜索 rollout 预算。不过,多角色工作流可以增加模型调用,文献阅读和候选实现需要额外投入。论文没有给出完整的端到端费用与延迟对照,这些成绩衡量的是任务表现。

研究继续发表,框架继续改进

ScholarEvolve 还做了一项连续演化实验。研究者把文献按三个不重叠的时间窗口加入:截至 2025 年 12 月、2026 年 1—4 月,以及 5—8 月。每轮从当前冠军出发,寻找新机制、构建候选,再测试组合。

这一过程中,Qwen3.5-27B 的权重、已有经验轨迹和派生材料一直固定。三轮之后,AppWorld Normal 的任务完成率从 69.0% 升到约 81.5%,三种任务变体全部成功的比例从 48.8% 升到约 66.7%。

按三个发表时间窗口引入新论文后的连续演化结果

按三个发表时间窗口引入新论文后的连续演化结果

这是按历史发表时间组织的实验,尚不是线上 Agent 长期自行更新的运行记录。不过,它给出了一个具体的改进来源:任务模型与已有经验不变,新发表的研究仍能提供尚未尝试的方案。

ScholarEvolve 展示的这条路值得继续看:把论文里的设计变成接口兼容的实现,再让任务执行决定它是否真的适合当前 Agent。

参考链接

Источник: AINLP · mp.weixin.qq.com