持续进化:从「会做」到「长期越做越好」
这一章讲三件事: 为什么「存下经 历」不等于「学会经验」;学到的经验该写进 哪里(四种载体与各自边界);以及这套学习系统怎样在长期运行中验证、发布、 回滚而不把自己改坏。前十章的部件在本章组装成闭环——后记称它是全书的汇合点。
1. 这一章讲什么
书里开篇给了一个鲜明的能力悖论:今天的 Agent 可以零样本(不做针对性训练) 解决从未见过的复杂任务,却可能在处理一万次相似任务之后,第二天仍然犯第一天 的错误1。原因并不神秘:部署后的模型不会因为一次推理自动改变参数;第 02 章 的上下文学习只活在当前任务里,任务结束,适应也随之消失。
先把最容易混的两件事分开:保存经历不等于从经历中学习。把一百条轨迹放进 长上下文或向量库(存数字串、按远近取回的库),只能帮模型找回某个案例,不会自动完成跨案例比较——哪些步骤 在成功轨迹中反复出现?某次成功来自正确策略还是环境偶然?学习发生在系统主动 完成「评价、对照、归纳、验证」之后,而不是日志落盘的那一刻。第 06 章的用户 记忆沉淀「用户与世界是什么样的」;本章沉淀「在什么条件下应该怎样行动」—— 前者让 Agent 记得更多,后者才让它从聪明变得熟练2。
那为什么不干脆让模型每次任务后 自我训练?因为生产环境很少提供干净的学习信号: 用户满意不代表合规,测试通过也可能源于删掉了失败用例;未经验证的反馈直接改参数, 错误经验和提示注入就会被固化放大3。所以本章的路线是:在模型外围把「学习」 构造成一套自主系统——记录证据、验证结果、跨轨迹归纳,再决定更新哪个载体; 所有修改先成为候选,过了回归与安全检查才生效4。
2. 顶层全景:主走查——一条虚假承诺轨迹的体检
场景与实验设计来自原书实验 8-1;四类轨迹(正常退款、虚假承诺、隐私泄露、 过度拒绝)与「多层结论加证据优于单一总分」的对照均为原书设定。
一条客服轨迹,模型回复:「我已经为你提交退款,请耐心等候 7 天」。它该算成功 还是失败?书里的答案:别问总分,做三层体检5:
第 1 层 结果验证器(读环境真值,回答「事情真的办成了吗」)
查订单最终状态与工具日志 → 退款没发生
第 2 层 过程验证器(查业务规则,回答「是以允许的方式办成的吗」)
逐步对照政策与动作序列 → 根本没有调用过退款工具
第 3 层 质量验证器(按 Rubric 打分,回答「办得合适吗」)
「承诺—行动一致性」维度:fail,证据=第 4 轮回复与工具日志矛盾
(轮次号与各层判定为演示所编,非原书数据;三层结构与实验设计来自原书)
对照:基线只输出一个总分 → 高总分可能掩盖隐私或规则维度的失败;
实验组输出每个维度的 pass / fail / uncertain + 证据 + 置信度 →
「虚假承诺」被稳定识别,且给出非空证据,而不是只有结论。
为什么值得这么费劲?书里给了两条理由。其一,结果正确不代表过程正确: 删掉失败的测试用例也能让测试通过;口头承诺也可能换来暂时满意6。其二, 验证结果不应被压缩成一个标量(单独一个数):一次评价更像一份结构化诊断 ——「任务部分成功,规则遵从通过,但有一处无证据陈述、一处虚假承诺」——维度化 信号既保留了问题性质,也保留了证据位置,后续模块才能判断该改提示词还是该加 一致性检查7。书里还点了一个 Agent 场景特有的维度:承诺—行动一致性—— 传统文本评价只读最终回复,容易把「我已经为你提交退款」当良好服务;轨迹评价会 继续查是否真的调了工具、订单状态变没变8。
3. 核心原理
3.1 四种更新载体:按「能不能被表达」选,不按「新旧」选
学习信号说 明「该改」,但没说「改哪里」。书里的首要判据:目标能力能否被某种 载体自然表达——事实与经验写成知识文档;能说清楚的策略写入提示词或 Skill; 可精确执行的流程编译成程序;感知、风格这类难以写成规则的高维(复杂到没法穷举的)能力才进模型参数9。四种载体 不互斥:医疗影像 Agent 用参数识别病灶、知识库提供最新指南、代码计算风险指标10。
| 载体 | 适合承载 | 主要局限 |
|---|---|---|
| 经验知识库 | 事实、经验规律、例外与来源 | 依赖检索和模型正确应用 |
| Prompt 与 Skill | 可语言化的判断原则与操作规范 | 容易膨胀、冲突或被忽略 |
| 程序与 Harness | 确定性流程、工具与强约束 | 开发维护成本高 |
| 模型参数 | 高维感知、风格与隐式策略 | 更新与回归成本高 |
「稳定性」只影响更新频率,不决定载体:新设备带来的域偏移仍需要微调;而一条 长期稳定的转账审批规则也必须由服务端代码兜底,不能只靠参数记忆11。
3.2 载体一:把经验沉淀为知识
「该航司要求特殊餐食提前 24 小时预订」是领域知识;「订票前先查餐食截止时间, 避免付款后才发现订不了」是行动经验——本章要从轨迹里提取的是后者12。 原始轨迹又长又吵,不适合直接当知识;书里给的稳态是三层数据:不可变的原始 轨迹(审计用)、单次运行分析(本次成败与候选教训)、跨轨迹归纳出的 Markdown 知识文档(面向未来)。这与第 06 章 User-as-Code 的两阶段思想相同: 先存证据,再离线整理13。
提炼管道五步:保存不可变轨迹 → 单次运行结构化分析 → 同任务族聚合、为每条 候选规律建「哪些轨迹支持、哪些反驳」的证据表 → 达到支持门槛才写入正式文档 → 在未参与提炼的新任务上测迁移效果14。GAIA(试卷)加 AWorld(考场)是直观 例子:先用验证器把运行标记为成功、部分成功、失败,再比较同族路径——成功轨迹 贡献候选策略,失败轨迹贡献排除性知识。书里特别提醒:Reflexion 式的自然语言 反思可以参与提出候选,但反思本身不是证据15。