本集对应模块 T6(Harness 与自我改进)的两节课:「从脚手架到自我改进系统」「Harness 三大设计模式」。
来源:xueai.miyang.cn(小山学堂 · 洛小山《学 AI 产品,从入门到精通》)
观念层面:Harness 不只是包裹模型的外壳,它正在成为 AI 递归自我改进(RSI)的核心引擎。
架构层面:好的 Harness 有清晰的模式语言——三个核心模式覆盖了当前最强 Agent 系统 90% 的架构决策。
地基判断:Harness 层与原始模型智能同等重要。一个平庸的模型加上优秀的 Harness,往往胜过裸露的更强模型。
| 能力 | 落点 | 一句话 |
|---|---|---|
| Harness 定义 | 模型周围的运行时 | 决定思考/工具/上下文/制品/评估 |
| RSI 路径 | 不改权重,改外围 | 改部署系统、工作流、上下文管理 |
| 三步预测 | 管线 → 元方法论 → 正反馈 | Harness 本身成为优化目标 |
| 模式 1 | 工作流自动化 | 目标导向循环:plan→execute→observe→improve |
| 模式 2 | 文件系统做持久记忆 | 上下文是工作记忆,文件系统是长期记忆 |
| 模式 3 | 子 Agent 与后台任务 | 独立沙箱 + 文件输出 + 轮询协调 |
| 工具全景 | 八组接口 | 文件系统/外壳/IO/外部上下文/搜索/制品/后台/委派 |
Harness = 模型周围的一切编排系统。它是围绕基座模型的运行时系统,决定模型如何:
| 时间 | 人物 | 内容 |
|---|---|---|
| 1965 | I. J. Good | 「Ultra-intelligent machine」:能设计更好机器的机器。理论设想 |
| 2008 | Yudkowsky | 正式提出 Recursive Self-Improvement:AI 用自身智能改进产生智能的认知机制 |
| 近期 | — | Self-play、合成数据、Test-time training 等早期尝试,模型开始改善自己的训练数据 |
| 当下 | Harness 工程 | 成为 RSI 核心路径:模型不直接改写权重,改进的是围绕自身的部署系统、工作流和上下文管理 |
本篇章框架、概念与案例源自 Lilian Weng 于 2026 年 7 月发表的长文《Harness Engineering for Self-Improvement》。观点与功劳属于原作者。
三步预测:
与 Prompt Engineering 的类比:随着指令微调和推理能力提升,手动 Prompt 技巧变得不那么核心,但指定目标、约束、上下文和评估的需求并没有消失,只是换了个地方存在。同理,最终很多 Harness 改进会被内化为模型行为,但与外部上下文和工具的接口将永远存在。
改善 Agent 的方式不只是改提示词,还可以改它得到答案的那个流程。这是递归自我改进在当下最现实的落地方式——不需要改模型权重,只需要改围绕模型的那一层。
核心思想:Agent 是一个目标导向的循环,不能当成执行一次就结束的脚本。
Plan → Execute → Observe/Test → Improve → Execute again
三个要点:
让它拥有自己审查自己的能力:看到测试失败后自动分析原因、看到 linter 报错后自动修复、看到用户反馈后调整策略。把反馈循环内置到系统里。
核心问题:长期运行的 Agent 中,制品会迅速超出上下文窗口。
制品种类:实验日志、代码 diff、论文摘要、错误追踪记录、过去的完整执行轨迹——都有价值,但塞不进上下文。
为什么用文件系统:文件读写是 LLM 基础技能,不需要复杂外部工具链,直接受益于核心模型能力提升。模型越聪明,文件管理越高效。这比很多精巧的外部方案更值得押注,因为它是顺水推舟的。
| 放哪里 | 内容 | 判据 |
|---|---|---|
| 上下文 | 当前任务指令、即时工具调用结果、最近 2-3 轮对话 | 需要即时参考 |
| 文件系统 | 历史实验结果、累积错误日志、已完成任务摘要、长期策略与规则 | 需要持久保存但不必时刻在视野中 |
上下文是工作记忆,文件系统是长期记忆。 好的 Harness 像人脑一样,在两者之间智能地搬运信息。
核心思想:一个 Agent 不够用时,生成多个子 Agent 并行执行,同时监控后台长任务。父 Agent 作为进程管理器——这是操作系统层面的思维。
四条纪律:
成功实现的共同原则:每个子 Agent 在独立沙箱中工作,输出到明确的文件路径,父 Agent 通过轮询文件状态协调,不做内存共享。
把子 Agent 结果写到明确路径、父 Agent 轮询文件状态,等于把并发控制里最难的共享状态一致性问题直接从架构里删掉了。这是三个模式里投入产出比最高的一条。
| 架构 | 上下文占用 | 表现 |
|---|---|---|
| 全部塞进上下文 | 92% | 第 4 轮就开始丢信息,输出质量骤降 |
| 每轮写文件 + 释放上下文 | 35% | 可持续运行数十轮不退化(上下文大小恒定) |
| 主 Agent 派发 + 子 Agent 独立沙箱 | 28% | 速度 ×3,5 个任务 3 轮完成(串行需 5 轮) |
差别不在模型,在怎么组织模型周围的那一层。
三者组合 = 迭代优化 × 长期记忆 × 并行扩展。
| 分组 | 核心能力 | 典型工具 |
|---|---|---|
| File System | 读写搜索编辑、管理工作区状态 | Read, Write, Edit, Glob, Grep, StrReplace |
| Shell Execution | 终端命令、跑测试、装依赖 | Shell, BashExec, RunCommand |
| I/O | 与用户交互、确认、展示 | Ask, UserConfirm, ShowResult |
| External Context | 外部信息、文档、API 响应 | WebFetch, ReadURL, DocSearch |
| Web Search | 搜索互联网 | WebSearch, BingSearch |
| Artifacts | 生成、管理、版本化制品 | CreateFile, SaveArtifact, VersionControl |
| Backend Processes | 后台长任务、监控进程 | BackgroundShell, AwaitProcess, Monitor |
| Agent Delegation | 生成子 Agent、并行、合并 | Task, Subagent, Fork, ParallelRun |
这份表是一份现成清单。搭自己的 Harness 照着八组配齐基本不漏;反过来说,缺的那一组往往就是能力短板的来源。
一次性回答器的验收标准是「首次输出够不够好」;循环型 Agent 的验收标准是「它能不能收敛到够好」。
你想优化什么,取决于你把系统定义成什么。
几家互相独立的产品收敛到了几乎一样的八组工具,这通常意味着那个形状是被问题本身的性质决定的,而非被某个团队的品味决定。
另外注意最后两组(后台进程、智能体委派)正是模式三的落地形态:前六组是单体的能力边界,后两组是突破单体的手段。很多系统做到前六组就停了,然后困惑于能力上不去——答案往往就在缺的这两组里。
Harness 设计不是随机拼凑工具。它遵循三个结构性模式:目标导向的自动化循环(让 Agent 能自我纠错)、文件系统做长期记忆(突破上下文窗口限制)、子 Agent 做并行扩展(把串行瓶颈变成多线程)。理解这三个模式,就掌握了构建生产级 Agent 系统的架构语言。
si01-播客.mp3si01-播客.srtscript.txt本内容改编自小山学堂《学 AI 产品,从入门到精通》,为二次演绎配音版。
来源:xueai.miyang.cn(小山学堂 · 洛小山)