🌱 《深入理解 AI Agent》第 9 章

Agent 的持续进化 · 从运行轨迹里学会怎么做得更好
11 个动画场景 · 覆盖 9.1–9.3 · 含三层验证、四种沉淀与睡眠学习
📌 它可以零样本解决从没见过的复杂任务,却可能在做了上万次之后,第二天还犯第一天的错

🎯 一张图看懂第 9 章

「保存经历」和「从经历中学习」是两件事
🔍
拿到信号
评价先行,三层验证
→
🗂️
四种沉淀
知识 / 指令 / 程序 / 参数
→
🔁
双循环
在线记证据,离线发新版
→
🔒
安全边界
可信根不可自改
💡 一句话总纲: 保存经历不等于从经历中学习。持续进化的前提是能可靠地评价——评价不可靠,进化就是加速跑偏。

场景 1 · 假及格,真翻车 9.1 重点

结果通过不代表过程正确,评价要看两层
验收单✓✓这一条被删了这一条被删了✅通过删掉失败用例测试当然全绿「7 天内退款」嘴上答应 · 钱没退
起点是「评价」而不是「总结」—— 错误的评价一旦进长期知识,会跨任务放大
两类真实的假及格: 删掉失败的测试用例就宣布通过;嘴上答应「7 天内退款」,钱其实没退。所以「通过」必须拆开看结果和过程。

场景 2 · 三层验证漏斗 9.1

越靠下越靠代码真值,难形式化才交模型
① 结果验证器测试结果 · 金额 · 订单状态② 过程验证器政策 · 权限 · 动作序列③ 质量验证器Rubric 评分 · 引用证据模型评判代码真值
越靠下越依赖代码真值;只有难以形式化的部分,才交给模型评判
设计原则: 能用代码验的绝不用模型。① 结果层读测试、金额、订单状态;② 过程层查政策、权限、动作序列;③ 质量层才用 Rubric 评分并要求引用证据。

场景 3 · 知识 / 指令 / 程序 / 参数 9.2

经验该写进哪,取决于能否被符号表达
📚事实 / 经验知识库💬可语言化的判断Prompt / Skill⚙️确定性流程程序 / Harness🧠高维感知参数(微调)能说成一句话说不清 · 只能感受
路由结果只是提案,未获发布资格 —— 必须经过验证才能进正式能力库
一句话判据: 这条经验能不能写成一句话?能写进 Prompt,能写成流程就进代码,写不出来才动参数。四种沉淀互补而不互斥。

场景 4 · 24 小时的教训 9.2.1

知识记「世界什么样」,经验记「该怎么做」
📘领域知识世界是什么样「餐食提前 24 小时订」陈述性 · 可查证📗行动经验该怎么做「订票前先查截止时间」程序性 · 绑场景VS
正式文档要写清:适用场景 / 禁止做法 / 例外 / 证据来源 / 最近验证时间
两种沉淀都要: 只存知识,Agent 知道截止时间却不会提前查;只存经验,它不知道为什么。

场景 5 · 别急着转人工 9.2.2 重点

把可归因的失败,变成一条可回滚的最小规则
客服🙋想直接转人工transfer_to_human🛑🔍先查政策💡合规替代✅只有两种情况才转人工用户明确要求 · 或涉及安全
Karpathy 称之为「系统提示学习」—— 应该是一条带来源的最小 diff,不是每次重写整份 Prompt
顺序很重要: 先拦下 → 查政策 → 给合规替代方案;只有「用户明确要求」或「涉及安全」才转人工。规则要带来源、可回滚。

场景 6 · 宏录制加速器 9.2.3 重点

把首次探索编译成可复用工作流,重复任务快 8.5–13 倍
① 第一次 · 一步步戳观察思考行动慢慢找到控件每一步都要付 token② 第二次 · 直接快进{recipient} / {subject} / {content}只换参数 · 路径不变8.5–13×重复任务端到端加速捕获参数化状态检查回放失效重学
把首次探索编译成可复用工作流 —— 类比电子表格里的宏录制
注意生命周期: 捕获 → 参数化 → 状态检查 → 独立回放 → 失效重学。回放前要检查状态,环境变了能检测失效并重学 —— 否则复用会变成复错。

场景 7 · 咕噜视频里找数 9.2.3 重点

Agent 缺能力就自己造工具,答案 100000000
🎬任务从视频里找出一串数字🛠️ 能力架web_searchread_fileshell读字幕?🔨自造工具youtube-transcript-api答案 100000000从字幕里抠出来🛡️三关验证安全扫描 · 功能测试 · 复用
Alita(arXiv:2505.20286)—— Agent 缺能力就自己造工具,这是自举的另一种形态
最强的自举: 能力边界不再是「给了什么工具」,而是「能不能造出缺的那个工具」—— 缺读字幕的工具,就自己封装一个。

场景 8 · 在线离线双循环 9.3

在线只记录证据,离线验证后才发布新版
🏃在线执行干活 · 只留证据🚀离线进化验证过才发新版证据 ⇄ 提案高频写入最大风险慢速验证才敢发布🔒可信根不可自改权限 · 审计 · 验证 · 回滚 —— 进化流程改不了它们
两个循环由「版本化经验库」连接:在线只记证据,离线验证后才发布新版
架构要点: 把「干活」和「改自己」彻底分开 —— 在线的高频写入是最大风险来源,稳定版只留证据、不改写自己。

场景 9 · 四次撞墙三次 9.3.1 重点

开放任务的闭环,容易产出「像成果的东西」
✕第 1 次实现漂移✕第 2 次把噪声当发现✕第 3 次隐性判断力不足✓第 4 次走完全程📎 结论与证据分离🗃️ 保留负面结果🌱 搜索多样性🧑‍💼 人类更高层介入
Trehan 与 Chopra 记录的四次端到端科研尝试:三次在实现或评估阶段失败,只有一次走完
最难识别的失败: 认识论过度乐观 —— 把噪声当成发现,报告读起来还挺像回事。四次分别倒在实现漂移、过度乐观、判断力不足。

场景 10 · 改不了的可信根 9.3.2 重点

进化系统不能自己降低测试门槛来伪装进步
🔒证据 ≠ 指令证据不能直接变成可执行指令🔒先待隔离区验证通过才进正式能力库🔒安全机制不自改验证器 · 门槛 · 审计 · 备份进化流程🚫
否则只需降低阈值或删掉失败用例,就能把退化伪装成进步
一句话记住: 衡量标准不能被被衡量者修改。验证器、测试用例、发布门槛、审计日志都不能自改。

场景 11 · 后台睡眠学习 9.3.3

空闲时整合新旧结论,过期能力就归档
🌙 睡眠学习 · 空闲时才跑⏰① 触发到期 · 新增轨迹🎯② 定向定整理哪些主题🧹③ 采集整合合并重复 · 消冲突✅④ 验证审批确认无误才入库✂️⑤ 修剪索引过期能力归档索引必须有界:只加载有界前缀,过期就归档
Claude Code 只加载有界 MEMORY.md 前缀;Hermes 用 Curator 空闲期修剪、变更前存快照
呼应第 3 章: 这就是「记忆压缩与整理机制」在自我进化上的延伸 —— 索引必须有界,否则上下文和注意力都会被撑爆。