翁荔:从OpenAI到Thinking Machines Lab的AI探索

近期,一篇围绕AI递归自我改进中harness工程的深度分析引发了行业广泛讨论。该文系统梳理了harness工程的核心逻辑、设计模式、优化路径以及尚未突破的关键挑战,核心观点指出:推动AI实现递归自我进化的关键,既包括模型本身的智能升级,也包括包裹在模型外围的harness系统——它决定了AI运行的效率、稳定性与落地能力。
一、Harness的核心定义与价值
递归自我改进的概念最早可追溯至1965年I. J. Good提出的“超级智能机器”设想,即一种能够超越人类智力、并自主设计更优智能系统的机器。后续相关研究将这一思路具象化为反馈回路:AI利用当下的智能水平,持续改进支撑自身运行的认知机制本身。
在当前的AI落地场景中,这一反馈回路既可以表现为模型直接调整自身权重,也可以延伸为更宽泛的系统优化:比如通过改进训练管道与部署系统,让下一代模型在经济价值导向的任务中表现更优。
部署系统的重要性尤为突出:裸模型与真实应用场景之间的harness层,其重要性不亚于模型预训练阶段的原始智能表现。诸如编码辅助工具这类产品的成功,已经充分印证了harness在AI落地中的核心分量。
简单来说,harness是包裹在基础模型外围的完整系统,负责编排整个执行流程:从模型的思考规划、工具调用、上下文管理、成果存储到最终结果评估,全流程都由harness完成统筹。本文聚焦于harness工程本身及其对递归自我改进的推动作用,未展开模型自我博弈、合成数据、测试时训练等相关方向。
二、Harness的三种主流设计模式
相较于早期的Agent框架“Agent = LLM + 记忆 + 工具 + 规划 + 行动”,harness工程额外增加了工作流设计、评估体系、权限控制与持久状态管理等多层能力,更接近完整的运行时软件系统设计,而非单纯的prompt模板。
优秀的harness设计应当追求简洁与通用化,这样才能实现广泛的适配性,同时可以借鉴现有软件工程的实践经验,从模型预训练的知识储备中获益。可以将优质的harness类比为操作系统:将复杂逻辑封装,对外提供简单统一的接口,未来相关配置、工具接口与协议也有望逐步实现行业标准化。
模式一:工作流自动化
为模型定义可操作、可测试、可迭代的工作流,是实现自动化的核心关键。典型的工作流遵循目标导向的循环:规划→执行→观察/测试→改进→再执行,直到达成目标,过程中还可以主动向用户请求澄清任务规格与执行偏好。这一模式的核心是让模型在Agent运行时中自主分析执行轨迹与失败案例,实现持续迭代,而非依赖静态的prompt模板。
模式二:文件系统作为持久记忆
长周期的Agent系统中,如何管理丰富的状态与产出物是反复被提及的痛点。harness不应当将整个工作流与所有日志都塞入上下文窗口,而是应该将持久状态存储到文件系统中。在长周期的Agent执行过程中,实验日志、代码diff、论文摘要、报错记录、历史执行轨迹等产出物的长度,往往远超模型训练时习惯的上下文窗口限制。
通过基础命令读写与编辑文件系统,是大语言模型的基础能力之一,因此用文件这种简单形式管理持久记忆,会自然随着核心模型能力的提升而受益。
模式三:子Agent与后端任务
一个harness可以派生多个子Agent并行执行,同时监控后端任务。这一设计在主Agent需要搜索多个假设、并发运行多组实验,或者将独立子任务委派出去而不污染主上下文时尤为实用。此时父Agent需要承担小型进程管理器的角色:启动任务、查看日志、取消失败的运行、将结果合并回主Agent的会话线程。
这一模式的关键设计选择是让并行过程显式且可检查:如果子Agent的产出仅存在于临时聊天上下文,很快就会过期或被隐藏;但如果将结果存储为文件、日志与状态记录,模型就能在中断后恢复执行,并对完整的执行历史进行推理。
以编码辅助工具为例,这类产品的核心接口已趋于稳定,普遍遵循一套循环逻辑:给定代码仓库后,Agent通过一组工具开发与调试问题,类似人类开发者依赖IDE的工作流。
三、Harness的优化路径探索
harness的优化对象演进大致遵循一条清晰的路径:指令prompt → 结构化上下文 → 工作流 → harness代码 → optimizer代码。模型的能力越强,能够驾驭的优化目标就越复杂、越通用。
上下文工程:ACE、MCE、Meta-Harness
如果将所有工具返回结果与模型生成内容简单堆叠进上下文,会随着Agent任务周期的延长迅速失控。上下文工程的核心是为大语言模型构建更结构化、简洁的上下文,并管理持久状态。当前长上下文技术仍在持续进步,但目前长上下文智能与上下文工程往往紧密结合。
Agentic Context Engineering将上下文视为不断演化的活页手册,而非持续变长的prompt。它维护一份带编号与说明的要点上下文手册,通过三个组件运行:生成器产出任务执行轨迹并参照现有要点;反思器从成功与失败的轨迹中提炼洞察;策展人将洞察更新为增量、条目化的新内容。为避免上下文塌陷与“重写时越写越短”的偏差,ACE的策展人不会重写整段prompt,而是仅输出结构化条目,再通过确定性逻辑合并进上下文手册,条目会被定期精炼与去重。
Meta Context Engineering更进一步:将“管理上下文的机制”与“上下文具体内容”拆分,在元优化层面实现技能演化,在基础层面实现上下文优化。一项“技能”定义了将输入映射为具体上下文的函数,包含静态部分与动态部分。系统维护技能历史库,记录过往技能、上下文函数与评估分数;元层级Agent会对历史技能进行智能体式杂交,针对新任务生成新技能;基础层级的“上下文工程师”执行新技能,并从反馈中学习具体的上下文函数。
Meta-Harness则将优化对象直接指向“决定存储、检索、呈现哪些信息给模型的代码”。这里的“Meta”意为这是一个用来优化harness的harness:提出新harness的角色本身就是编码Agent,最终产出一批帕累托最优的harness候选。其核心设计包括:整个执行历史可通过文件系统访问,编码Agent通过基础命令读取内容而非塞入单个prompt;候选harness本身是文件系统中的目录,包含源代码、分数、执行轨迹与状态更新;元层循环持续迭代产生新harness,仅保留合格的候选。
工作流设计:从自动化研究框架到智能搜索
工作流设计既可以由领域专家手工搭建,也可以通过算法自动搜索优化方案。以自动化研究为例,相关框架搭建了从提出研究想法、写代码、跑实验、分析结果、写论文到执行同行评审的完整流水线;部分设计将“可验证性”作为核心约束,要求每个论断都能追溯到证据来源并接受“证据链”审计。
部分工具扮演了“数据科学家”Agent的角色:主Agent管理提出问题的挑战者、弱解题者、强解题者与验证者/裁判,目标是将数据合成在“刚好合适”的难度上。不过该方法的局限在于,合成的任务仅用于微调弱解题者,未实现强模型本身的升级,更接近对prompt分布的间接蒸馏,递归自我改进的特征不够明显。
另有研究将Agent设计本身转化为优化问题,通过元Agent搜索运作:先用简单Agent初始化Agentic工作流档案库;元Agent参照已有方案生成新工作流的高层描述,再通过代码实现并经过两轮自我修正检查新颖性;评估每个新候选并将成功的加入档案库,重复直到达到迭代上限。
相关工具将Agentic工作流表示为图结构,通过蒙特卡洛树搜索优化:用模板初始化起始工作流;按“分数与均匀探索”的混合策略选择工作流节点;让大语言模型基于节点表现生成修改后的工作流;执行并评估新工作流,若在预算轮数内表现提升则加入搜索树;重复直到平均分数进入平台期或预算耗尽。实验显示,该方法在问答、代码与数学任务上的表现优于人工设计的工作流与其他自动搜索方法。
让Harness自我改进
Self-Taught Optimizer是递归改进脚手架的早期案例之一:初始“改进器”接收初始方案、效用函数与黑箱语言模型,输出改进后的方案。该方法的目标并非直接改进方案,而是改进“改进器”本身:先定义改进器在下游任务上的平均效用,再将“改进改进器”作为优化问题,用上一版改进器的表现递归生成下一版改进器。实验显示,使用较强基座模型时该方法能持续提升下游表现,但使用较弱模型时效果反而变差,说明基座模型必须足够强才能改进自身机制,harness层的改进能优化部署效果,但模型智能本身仍是核心。
更新的相关方法让大语言模型Agent通过“提出、评估、接受”的循环改进自身harness,分为三个阶段:弱点挖掘、harness提案、提案验证。弱点挖掘阶段需要将失败案例聚类为有验证依据的失败模式,记录终端验证原因、Agent行为因果状态与执行轨迹暴露的抽象机制,才能挖掘真正的根因;harness提案阶段由同一模型作为提议者,在限定上下文内工作,上下文包含当前harness可编辑部分、验证过的失败模式、需保留的“通过”行为记录与此前修改摘要,提议的修改应优先针对可解决的高频错误模式,且候选修改需保持差异化与多样性;提案验证阶段要求候选修改在测试数据上进行回归测试,仅双向无回退的候选才会被采纳合并为新版harness,被拒绝的候选仅记录不改变当前使用的harness。实验显示,该方法能在多个基座模型上提升测试通过率。
相关研究也提出了警惕点:若允许程序编辑操作系统层面的内容,会打破抽象边界,因此可编辑范围需要谨慎设计,权限控制与安全层必须位于自我改进循环之外,围绕奖励作弊的老问题依然存在。
演化搜索
演化搜索是受自然选择启发的优化方法:演化出一批候选方案,通过变异产生新方案,仅保留适应度高的种群。它适合搜索空间巨大、形状不规则、难以通过梯度优化但易评估好坏的场景,而harness搜索恰好符合这一特征。
演化搜索此前已应用于prompt工程:相关工具通过丰富的变异操作优化任务专属prompt,其“变异prompt”本身也通过演化不断改进;另有研究将基于反思的prompt与演化搜索结合,通过对试错轨迹的自然语言反思提出prompt更新。
相关编码Agent形式的演化搜索系统:维护候选程序池,由冻结的大语言模型生成改进用的diff,系统反复评估子程序并保留成功案例,随时间推移发现更优方案。其设计细节包括:prompt包含父代程序、结果、指令与元信息;编码Agent可访问整个代码仓库,但需改进的区域用标记显式标出;元prompt与指令、上下文一同演化,消融实验验证了各项设计的价值。
后续变体将演化搜索与强化学习、上下文学习结合;另有工具引入三个提升大语言模型采样效率的组件:平衡父代采样的表现排名与已有子代数量实现更省样本的探索;基于embedding余弦相似度剔除相似候选实现代码新颖性拒绝采样;在元便签本中识别成功方案的模式以指导后续变异方向。
另有研究明确将优化目标定为演化“可编辑的harness代码仓库”,执行者是基于大语言模型的编码Agent且允许修改自身harness。代码编辑通过基础命令与编辑器实现:种群池初始放入一个编码Agent,每轮按“表现越好、已有子代越少”的概率选择父代Agent进行修改分叉;被选中的父代检查基准测试评估日志,向harness代码库提出改进并生成新版本Agent;新Agent接受评估,仅表现达标者加入种群池。实验显示,该方法在相关基准测试上的表现可媲美甚至超过人工设计的Agent,后续工作在此基础上引入元Agent控制如何修改已有任务Agent以创造新Agent。
这类方法在“候选方案可自动评估、适应度易量化”的领域效果最好,如矩阵乘法、内核优化、算法竞赛、数据中心调度;但在评估缓慢、模糊或依赖启发式判断的领域会遇到明显困难,演化过程的计算效率与有效性也需要进一步考量。
与模型权重联合优化
harness演化改变的是模型外部的非参数系统,要实现更完整的自我改进,还可以让模型同时更新自身权重:通过训练管道改进或测试时持续学习实现。另有研究尝试将“harness改进”与“模型参数更新”纳入同一优化循环,包含三个组件:元Agent负责提出初始harness;任务专属Agent负责执行任务;反馈Agent根据最近执行轨迹决定下一步更新harness还是模型权重。不过该研究的实验设计存在一定局限:任务专属Agent使用的模型比元Agent与反馈Agent弱很多,基线设置也偏弱,难以与其他方法进行公平交叉验证,该方向值得关注但目前证据仍初步,训练稳定性、奖励偏移等挑战依然存在。
四、尚未解决的七个关键瓶颈
相关实践证明,专家设计的harness可以协调大部分自动化研究循环工作,至少在“撰写研究论文”这一场景中表现出色。但写出一篇合格的文稿,并不等同于做出真正的科学发现:系统可能生成看似靠谱的内容,却夹杂编造的引用、与实现偏差的方法或站不住脚的实验结果。
有实验测试过大语言模型仅通过基础工具从研究想法推进到完整文稿的能力:在多个领域准备高质量种子论文激发新想法,人类专家仅挑选少量想法进入完整流程,最终只有极少部分被完整执行。实验中反复出现多种失败模式:偏向训练数据中的默认选择、执行压力下的实现漂移、记忆与上下文退化、过度乐观、领域智慧不足、科学判断力弱。
基于这些观察,相关研究列出了实现完整递归自我改进仍需突破的七个瓶颈:
- 弱且模糊的评估器:很多研究论断缺乏快速精确的验证方式,现实任务亦是如此。当前的自我改进循环在评估指标可量化、客观的任务上效果最佳,但研究判断力、新颖性与长期科学价值的衡量难度要大得多。
- 上下文和记忆的生命周期:随着Agent变得更自主独立,需要维护的记忆持续增长。优质的harness需要管理上下文与记忆,弥补长上下文本身的局限,同时最大化长周期任务的成功率。人类能终身维持记忆,因此上下文工程理应逐渐成为智能本身的核心组成部分,而非仅停留在软件系统层面。
- 负面结果的处理:研究者天然倾向于发表成功结果,文献因此系统性偏向“成功”一面。当前大语言模型训练数据主要来自人类产出内容,因“成功案例远多于失败案例”的不平衡,模型难以判断何时该放弃假设、报告负面结果甚至承认失败。优质的研究harness应当方便保留失败尝试,因为从失败中学习是缩小任务搜索空间的最佳方式。
- 多样性坍缩:演化与强化学习循环容易只顾利用已知的高奖励模式,需要专门机制防止种群坍缩为同一方案的变体,这对开放式研究尤为关键,因为最优路径往往在探索初期被当前评估器认为表现较差。
- 奖励作弊:自我改进循环会优化任何给定的信号:若奖励来自单元测试,Agent可能过拟合测试;若来自裁判模型,可能学会专门针对裁判的作弊技巧;若来自基准分数,可能利用基准漏洞。评估器与权限控制应位于“演化harness”循环之外,通过独立测试、执行轨迹审计与关键节点人工审查把关,但这种监督的规模化自动化仍需研究。
- 长期成功的维护:以编码辅助工具为例,它已提升日常生产力,但很多优化目标仍过于短期。它能完成具体任务,却难以维护成百上千工程师共同维护的仓库的长期健康。基于沙箱的强化学习训练很少能捕捉到可维护性、代码归属边界、迁移成本、向后兼容性或未来调试负担等长期维度。
- 人的角色:人类应当向抽象栈的更高层移动,而非被排除在循环之外。这意味着人类需要在正确的时间、正确的抽象层级提供监督,系统设计需要认真考虑如何设置“接触点”。上述诸多挑战最终都需要人类的反馈与引导才能解决,技术的最终目标是服务于人类的更好未来。
塔猴是一个专注于为用户提供系统学习、内容创作与商业连接的AIGC综合服务平台,致力于为每一位AI探索者打造理想的创作、成长家园。在塔猴,你不仅可以学习众多AIGC类实战课程,获得与时俱进的AIGC技能和视野,还有机会获得长期商业合作和接单机会!点击进入:https://www.tahou.com/
AI生成内容提示:本文由人工智能辅助创作,内容仅供参考,不代表平台观点。请注意核实信息的准确性,并理性判断。




