Recursive Self-Improvement through Multi-Agent Self-Supervision
Hyunin Lee, Jinglue Xu, Jeffrey Seely, Donghyun Lee, Somayeh Sojoudi, Matei Zaharia, Yujin Tang
cs.AI
2026-10-08
两轮 MASS 后 Qwen3.6-27B 在四项研究基准上单位 token 得分达 1.2-1.6 倍。
开放式研究交卷后,常常没有又快又可信的打分器。回测、逆折叠、操作规划都如此。人评不准,反馈也进不了训练环。一次托卡马克等离子体研究可以超过 1.2 亿 CPU 小时,反馈可以慢到无法闭合。产出超过人类可靠评估之后,最好的优化器和评估器只剩模型自己。
生成、打分、改流程共用一套权重,反馈会顺着原有先验把错误再写一遍。同质回路就是执行、评估、优化三个角色用同一个模型。MASS 把这一颗模型复制成有分工的一组,先搜协作方式,再把轨迹训回共享权重。
MASS 内外层交替,由 Sakana AI 与 UC Berkeley 合作完成。内层权重不动,只改附在任务后的工作流。外层采样并做监督微调,新权重同时接过执行、评估、优化。基座是 Qwen3.6-27B,脚手架固定为 qwen-code 0.20.0。
工作流像一份组队说明书。它写明 hop,也就是子智能体的调用顺序,以及输出契约,也就是交回编排器的信息,还有角色和指令。每一版都真实执行。评估器把当前产物和迄今最佳做两两比较,赢了才替换,精英只留一条。优化器被要求优先改 hop 和契约。留下的版本只是这条比较序列里的当前最好。
每个训练任务采样 18 条。Bradley-Terry 把两两胜负收成一个分数,前 15 条训练,第 16 条验证。组数据时删掉工作流,编排器只看裸任务,工人的派单保留,模型得自己做出委托。窗口最长 49152 token,此前最多 8192 token 遮住、不计损失,只监督助手的推理、正文和工具调用。子智能体窗口 2054 个,编排器窗口 282 个,采样比 2:1,免得大段局部代码把协调冲淡。
LoRA 的 rank 为 64、缩放 128,学习率 3e-5,共 1624 步。第一轮取验证损失最低的第 1200 步,合并后量化为 FP8,再担任下一轮的三个角色。12 个合成研究编程任务由 GPT-5.5 编写,金融、机器人、药学各四题,九题划入训练。任务 221 没有打过参照工作流,退出教师收集。最终 8 个任务、119 条轨迹、2435 个窗口。库存监督 token 1722 万。因为放回采样,选中检查点实际处理的是 2882 万。外部裁判 GPT-5.5 与 Claude Opus 4.8 开最高推理档,各三个种子。这六票不进搜索,也不用来选主实验的检查点。第一轮微调约 19 小时、六张 H100,搜索和采样另算。
两轮后,四项开放研究基准的单位输出 token 得分是基座的 1.2-1.6 倍。SWE-bench Verified 为 0.96 倍,Terminal-Bench 2.0 为 0.94 倍。下表是试验均值加减样本标准差,MLR 五次,其余三次。
| 基准 | 基座 | 两轮后 |
| ScienceAgentBench 成功率 | 28.8±1.5% | 31.7±2.0% |
| MLR-Bench 总分(0-10) | 1.58±0.38 | 2.40±0.28 |
| MLR 交卷 | 31/60 | 50/60 |
| AstaBench rubric | 0.053±0.002 | 0.067±0.017 |
| Asta 交报告 | 60/120 | 91/120 |
| DSBench 归一化分 | 0.473±0.029 | 0.482±0.025 |
| Terminal-Bench 2.0 通过率 | 37.5±2.2% | 35.2±1.7% |
| SWE-bench Verified 通过率 | 62.6±1.4% | 61.1±0.6% |
MLR 总分从 1.58 升到 2.40,交卷从 31/60 升到 50/60,已交论文均分却从 3.07 降到 2.88。Asta 交报告从 60/120 升到 91/120,已交报告均分从 0.105 降到 0.088。涨的是完成率,单份成品的裁判分没有变好。DSBench 从 0.473 到 0.482,第一轮还掉到 0.465。两项编码基准的通过率在下降。
三个合成测试任务上,对基座胜率从一轮后的 53.9% 到两轮后的 69.9%。两轮对一轮是 60.8%,这一步大于一轮对基座的 53.9%。八个训练任务上从 65.6% 到 82.5%。
训练目标只有解题轨迹,评估和搜工作流也在变。评估器与外部裁判的一致率从 73% 到 91%,再到 93%。一轮模型搜出的工作流交给基座执行,相对基座自己搜出的工作流,平均胜率 64%,统计范围是 11 轮迭代、12 个任务。裸提示下,成功委托从 1/110 到 48/110,再到 87/110。代码交接从 1/110 到 42/110,再到 83/110。代码交接指一个子智能体读到另一个已返回子智能体写过的 Python 文件。
token 效率偏向多智能体轨迹。学生 M+ 处理 2882 万监督 token,对基座胜率 68.3%。单智能体学生 S++ 处理 4200 万 token,胜率 64.0%。少用约 31% 的 token,胜率高 4.3 个百分点。各 17 条轨迹时,多智能体是 56.0%(364 万 token),单智能体是 44.0%(182 万 token)。条数相同,多智能体轨迹本身更长。
没有验证器时,MASS 用当前模型搜一份文本工作流,把编排器和子智能体的轨迹写进同一套权重,下一轮三个角色都换新权重。评估一致率和优化器迁移没有单独标注,是解题数据带出来的。
可用范围偏开放研究。单位 token 得分上升的是那四项研究基准。SWE-bench Verified 和 Terminal-Bench 2.0 的通过率在降,这不是通用的编码能力提升。第二轮相对第一轮的测试胜率高于第一轮相对基座,递归目前有这一个台阶。只有两轮,还不能说能力会一直滚上去。
三个角色全用基座,搜索最终仍能在 12 个任务的 11 个上拿到外部裁判 6/6 一致胜。弱模型找得到有用工作流,慢的是优化器。只把评估器换成 GPT-5.5,加速不如评估器和优化器一起换。找到之后也不稳。文本改写比例和胜负变化的 Spearman 相关,绝对值不超过 0.12。任务 53 的第 16 和 17 轮,工作流字节相同,种子都是 350053,一次 6/6 胜,一次因循环检测停机而 6/6 负。执行噪声单独就够把结论翻面。
公开基准对不上协作这套解释。MLR-Bench 的 180 次运行,没有一次调用委托工具。涨分不能当成组队行为已经迁过去的证据。这组评测只有 12 个任务,没有 GPU,限时两小时。五次试验均值上,两轮对基座的 Welch 检验 p=0.0053。按 12 个任务均值做配对符号检验,p=0.2266。把样本从一次试验换成一个任务,显著就没了。
效率对照不纯。单智能体学生用外部强模型选检查点,主实验用验证损失,任务覆盖和采样器也不同,论文写明不能把差距全部算到教师构成上。长度接近时仍偏好多智能体的比较只有 10 对。合成题由 GPT-5.5 撰写,外部裁判里又有 GPT-5.5。ScienceAgentBench 的官方参考程序在该环境只通过 80.4%,分数和环境绑在一起。
把组队要求拉平之后,优势会缩掉。基座和学生都收到同一条指令,自己定 3 到 6 个专家角色。学生对基座的胜率只剩 53.5%,352 胜、306 负、2 平。四个共享训练任务上是 47.1%。裸提示上的大比分,很大一块是没人要求也会去委托。两边都被要求组队之后,优势基本没了。