AI Agent递归式自我改进:现状与挑战

当前AI Agent的发展正朝着让系统自主编写工具插件并自动加载的方向演进,Pi已经率先落地这一思路,多款后续系统也纷纷跟进,而DeepSeek的架构则代表了更为激进的探索方向,这一切的核心驱动力正是自动化研究与递归式自我改进技术。
在人工智能发展的大部分历程中,“递归式自我改进”都更像是理论构想或是科幻设定。早在1965年,I. J. Good就提出了“智能爆炸”的概念:机器可以设计出更优秀的下一代机器,而更先进的机器又能进一步推动迭代,最终让能力曲线呈现快速跃升的趋势。如今,我们距离实现狭义版本的递归循环已经不再像想象中那样遥远。
Agent可以检查失败记录、修改工具和指令、重新测试并保留有效改动,也开始开展改进模型本身的实验,虽然当前成果还比较粗糙,但关键组件已经开始串联起来。
递归式自我改进的核心定义
很多人会将重新尝试失败任务误认为是学习,但实际上递归式自我改进有着明确的边界。它指的是一个系统持续做出改变,让未来的表现更优,同时也更擅长产生下一轮改进的循环。我们可以通过三个维度区分相关概念:
- 迭代:在系统保持不变的情况下改进输出。Agent修改代码、重新运行测试,但下一项任务开始时,使用的仍然是同一个Agent。
- 自我改进:会持久地改变系统。Agent可以新增工具、记录技能,或者改变长对话的压缩方式。未来的任务将运行在一个不同的系统上,但衡量“什么算更好”的标准并没有改变。
- 递归式自我改进:会进一步提高这把“尺子”。系统不仅更擅长取得高分,也更擅长判断什么才是好结果。后续轮次会面对更难的测试,但评估标准仍然独立于Agent。
当前的系统在外部评估器保持固定时效果最好:测试通过、验证集损失下降,或者基准测试的分数提高。而系统之所以能够不断搜索,是因为它面对着一把自己无法控制的尺子。最新的研究显示,当前的Agent已经可以修改Prompt、工具、技能甚至部分Harness代码,但还无法重新定义“成功”的标准。
开放式的递归式自我改进则要求更高:系统不仅要找到新的改动,还要优化判断这些改动是否有效的方法,强化验证能力却不能通过操纵验证来获得高分。更高的任务分数只能证明系统有了改进,但要验证递归式自我改进,还需要回答一个关键问题:下一轮测试的标准是否更高,且系统仍然无法通过作弊来获得更高分数?
模型与Harness的共同进化
模型很早就开始利用自身的输出进行改进,包括自我对战、学生—教师训练,以及从成功的推理轨迹中学习。后来,研究人员又让模型评估自己的训练偏好、生成合成数据,并更新训练指令。不过,这些循环的目标、更新规则和测试方法依然由研究人员设定,循环本身并没有发生改变。
现在,Agent开始改进围绕模型运行的代码。比如Karpathy的Autoresearch就是一个简单的例子:Agent提出改动,训练数分钟,只有当验证损失下降时才保留该改动。在nanochat项目中,这套流程运行了约700次实验,最终保留并迁移了约20项改动,将达到GPT-2水平所需的训练时间从2.02小时缩短到1.80小时。Prime Intellect将类似的循环扩展到约10000次试验,最终超过了人工设定的基线水平。
AlphaEvolve则将这种方法应用于算法改进,通过修改程序、使用自动评估器打分并保留表现更优的版本,找到了仅需48次标量乘法的4×4复数矩阵乘法算法,比Strassen算法还少一次,同时还让Gemini训练使用的一个核心程序提速了23%。可以说,当前的进展已经让模型开始改进训练自身的代码。
最新的实验正在将两条路径结合:系统同时修改任务Agent的Harness和模型权重,而Harness的改进又能生成更优质的训练轨迹,帮助未来的模型进一步提升。值得注意的是,递归式自我改进并不一定需要更强的全新模型,一个被冻结的模型,只要拥有可靠的验证器和可调整的运行环境,也能实现性能的持续攀升,而更容易被改进的对象往往是模型周边的Harness系统。
Agent修改自身的Harness
Agent修改自身运行环境的思路其实很简单:先运行基线版本,排查失败原因,修改部分配置后再次测试。研究人员Cline曾通过手动调整Harness,将Opus 4.5在Terminal Bench上的成绩从47%提升到57%。几个月后,一款Agent使用相同的方法运行了17小时,消耗约50美元的计算资源,通过优化重试机制、循环检测和进程管理,让Kimi K3完成的任务数从89个中的69个提升到79个。
这类改进都属于“受约束的自我改进”:Agent修改了自身的运行环境并保留这些变化,但目前还无法证明更新后的系统是否更擅长寻找下一次改进。
HarnessOpt-Bench用于评估这些改进能否通过更严格的测试,在该基准中,Agent根据开发阶段的反馈修改自身的Harness,另一个独立系统使用隐藏任务对修改后的版本进行测试,实验共开展了111次运行,涉及5个优化模型和4类任务,结果显示不同模型和任务之间的表现差异较大,该基准主要衡量单次修改是否提升了任务分数。但要证明递归式自我改进,还需要增加第二个衡量指标:后续轮次的测试标准是否更高,且系统仍然无法通过作弊获得高分。
PAST-Bench则研究留存的经验是否能真正帮助后续任务,在很多场景中开启记忆功能并没有带来明显的性能提升。新的RSI Benchmark试图评估AI系统执行AI研究的能力,观察每一轮迭代是否让下一轮的研究更快、效果更好。Hyperagents也朝着这个方向迈进,它不仅可以修改Agent,还能修改生成新Agent的代码,更优质的记忆存储方式确实能在后续任务和运行中提供帮助,但这些仍然属于受约束的循环,因为适应度函数仍然位于Agent可修改的代码之外。
Agent接管自身的运行环境
早期的Agent结构非常简单,仅包含一个系统Prompt和少量工具。随着发展,我们逐渐加入了记忆、压缩、钩子、技能和复杂的控制流程,Harness的重要性越来越高,也变得越来越难以修改。下一次Harness的迭代将不再只是编写更长的Prompt,而是让模型自主编写代码扩展,并由运行时自动加载,也就是说,Harness可以在无人干预的情况下自动接入并启用新的能力。
Pi是最早采用这一思路的系统之一,它仅内置了四个工具:read、write、edit和bash,系统提示词不到1000个Token,其余能力均以TypeScript扩展的形式存在,由系统从.pi/extensions/目录中自动发现,Agent可以自行编写扩展,重新加载后即可使用新工具。其他产品也采用了类似的思路,比如Amp会将项目插件和代码库一同保存。
DeepSeek的Harness则更为激进,它基于Cordis插件内核,几乎将所有组件都设计为可替换的,包括模型、工具、会话、沙箱甚至整个控制循环。当插件被卸载时,产生的副作用也会一并清理,因此运行时可以替换自身组件而无需整体崩溃,该架构可以被概括为Agent = Model + Harness。这意味着Agent拥有了更多可以持续改进的代码,但同时也增加了兼容性破坏和权限边界削弱的可能性。
这种变化的重要性体现在两个方面:一是Agent可以创造开发者未曾预料到的能力;二是代码可以连续执行一系列操作,无需将所有中间结果都塞进上下文窗口,从而节省上下文空间,但同样,这些特性也会让错误变得更加持久。
递归部分仍然缺失
当前的Agent可能会过拟合可见任务、利用测试漏洞,或是修改测试以让错误代码通过验证。如果Agent能够编辑评估器,它甚至可以实现“越狱”。Reward Hacking是系统被要求不断提升某个数值时最容易出现的行为。因此在现阶段,Agent和验证它的系统必须保持分离。Agent可以修改Prompt、技能、工具、记忆和Harness代码,但评估必须由独立系统负责。这也是为什么我们还没有真正实现递归式自我改进的原因。
真正的递归式自我改进,需要系统同时改进验证器、生成更难的测试、提升判断质量,且不能控制最终的评估信号。目前的系统还无法做到这一点,人类依然设定目标,掌握隐藏的分数标准。一项由普林斯顿大学牵头的研究发现,当前的Agent已经能够完成AI研究中的大量工程工作,但依然不擅长选择原创且有价值的研究方向。Agent很擅长围绕可验证的指标持续优化,但并不擅长判断该指标本身是否值得优化。品味并非一个可以直接量化的指标,如果没有判断力,递归式自我改进只会让系统更快地将错误的方向做到极致。
三个关键的不确定性
最快到来的是“本地递归”
短期内,我们不太可能看到一个系统在黑箱中重新设计自身的完整架构。更现实的发展方向是,Agent为下一次会话编写新的扩展,优秀的运行轨迹被用于训练未来的模型,实现模型与Harness的共同进化,这可能是目前最贴近现实、也最符合现有证据的发展路径。
验证是最大的瓶颈
所有令人信服的结果都依赖于一把系统无法控制的标尺。一旦系统拥有了这把标尺,它就会越来越擅长让自己“看起来有所改进”。更大的模型无法自动解决这个问题,真正关键的系统应该能够提升测试标准,同时保持标准的诚实性。
品味仍然存在于循环之外
Agent会优化你交给它的任何数字,但它不会自动理解什么值得追求。判断什么才算成功、哪些行为属于Reward Hacking,依然是人类的工作。当前的循环已经能够带来真实的成果:更快的训练代码、更优质的工具,以及能够在一夜之间修复自身重试逻辑的Agent。但真正缺失的依然是递归部分,在改进者能够提升标准且仍然无法通过作弊绕过标准之前,我们所做的仍然只是自我改进,而非真正的递归式自我提升。

