把 agent 走过的弯路原样存下来,就是一个不用训练的模拟器——几千套搜索策略在「梦里」试完,真正上机的调用少了四成
Dream-RSI: Recursive Self-Improvement through Evolving Worlds
9 月 14 日挂上 arXiv 的这份报告,来自 Google、Google DeepMind 与马里兰大学的一个 17 人团队,讲的事情很具体:当你派一群 agent 反复试错去搜一个更快的算法时,「从哪个尝试往下接着试、同时开几路、什么时候收手」这套调度本身,能不能交给 AI 自己改进。它的答案是能,而且改进所需的反馈完全不用重新花钱跑一遍——agent 已经走过的那棵搜索树,本身就是一个精确的模拟器。
这篇值得读,不是因为它刷了什么榜(它的榜成绩其实相当微妙,后面会摊开讲),而是因为它点破了一个越来越多团队正在撞上的问题:当算力堆到几千次「提议—评测」循环的规模,瓶颈早就不是模型会不会写代码,而是这几千次调用花在了哪里。第 66 篇里 OpenAI 用一万个 agent 跑纳维-斯托克斯,分组、中途换模型、把副线成果回灌主线,每一步都是人做的调度决策。这篇干的事,就是把那些决策写成一段代码,再让这段代码自己迭代。
要自我改进的不是模型,是那段调度代码
先把词说清楚。递归自我改进(RSI)在这篇里不是科幻里那种模型重写自己的权重,而是一个朴素得多的循环:生成候选方案 → 评测 → 拿反馈再生成。Dream-RSI 动的是这个循环外面的一层。它把「探索策略」从提示词里的模糊说法抽出来,变成一段真正可执行的编排代码:观察当前这棵搜索树,从根节点和所有叶子里选出一批要继续展开的位置(每个节点带着它当时的工作区快照和累积上下文),分给若干并行 worker,或者干脆返回空批次、停手。底层写代码的 agent、评测器、执行接口全程不动,只有这段调度代码在变。
难就难在这段代码没法便宜地试错。评一个候选程序,跑一次就知道好坏;评一套探索策略,得看它铺开几十上百次调用之后究竟找没找到好东西——反馈又慢又贵。而策略的写法几乎无穷多,试错一轮就烧掉一整轮预算。这就是作者说的「元层瓶颈」。
走过的路是一个不用训练的世界模型
破题点在这里:一次完整的搜索留下来的不是一堆日志,而是一棵结构化的树,每个节点都存着当时的文件系统快照、产出的程序、评测诊断和分数。换一套探索策略去走这棵树,它可以挑不同的分支、换个顺序、改并行度、更早停手——但所有结果早就录好了,重放时只需要把记录逐个揭开,不必再调一次模型、也不必再跑一次评测。一次昂贵的线上搜索,于是能撑起几千次零执行成本的离线评估。
做过强化学习的人会立刻认出这是什么:Dyna 与世界模型那一套(Sutton 1990、Ha 与 Schmidhuber 2018),用想象出来的经验替代真实交互。区别在于这里的「世界模型」不需要学,也不是近似——它就是干活时顺手掉下来的精确记录。评分函数写得也很直白:重放里拿到的最好成绩,减去用掉的调用次数,再加一项并行度奖励(同样的调用数,能一批发出去的比一个个排队的更值钱)。改写策略的是另一个 LLM,它读完重放轨迹和得分,改代码,再重放,若干轮之后挑分最高的那版拿去上线,跑出新的一棵树,模拟器池子又大一圈。
数字:省得很实,赢得没那么干净
Lasso 正则化路径求解器这个任务上,Gemini 3.1 Pro 版本用 317 次 agent 调用,把六个留出数据集上的平均运行时间从固定策略的 3587 毫秒压到 2931 毫秒,而固定策略花了 550 次;换 3.7 Flash 则是 1879 次对 3200 次。对照另一套系统 SimpleTES 的 51,200 次生成,调用量差了两个数量级,跑出来的求解器还更快。GPU 算子那边也类似:VGG16 和 LayerNorm 用少 2.43 倍、1.79 倍的生成次数达到同等性能,ConvDiv 在相同预算下拿到 2.09 倍的分数。
但表格得自己看。Gisette 那一列,Dream-RSI 是 2841 毫秒,固定策略 1861 毫秒——它明显更慢;平均值能赢,很大程度上靠 RCV1 那个大矩阵上的领先把均值拽了回来。三个数学优化任务里,Sum-Difference 的提升出现在小数点后第四位,Circle Packing 跟一堆系统并列同一个数,Autocorrelation 甚至略逊于它自己的固定策略基线。把话说透:这篇站得住的部分是「省」,不是「更强」。它换来的是同样的解用更少的钱找到,而不是找到了别人找不到的解。
一个反直觉的结果:把经验总结成建议,反而更差
第 5 节有个值得单独拎出来的对照实验。利用历史最自然的做法,是让模型把前几轮的教训提炼成几条方向性建议,塞进下一轮的提示词里。作者试了,结果是两种范式下加了建议都比不加更差。他们的解释是:在几十路并行的长程搜索里,强加语义先验会过度收窄搜索空间,把多样性压没了。这和第 1 篇苦涩的教训是同一个调子——人类归纳出来的「方向」在大规模搜索面前常常是负资产,而同一批历史换成可以反复重放的环境,就变成了正资产。另一个细节也有意思:学出来的策略在 ConvDiv 上先把每轮尝试数从 110 压到 50 省着花,等性能卡住了再加回 90 上下,接着又有了提升——像个知道什么时候该省、什么时候该砸的研究主管。
本文为 AKL AI Club 原创撰写的导读,不是原文翻译;著作权归原文作者所有。 篇目由编辑独立选取,来源均经人工核实。