2019 字
约 6 分钟
9
S21-J16 · Agent 的持续进化:把"经验"变成受控更新

适用读者:要让 Agent 越用越顺手、又不敢让它自己改自己的人。
前置:S21-J14(评估)、J15(后训练)、J10(记忆)。
覆盖旧文:A-4575(Agent 的持续进化,第 9 章,26,935 字符)→ 13 小节 / 约 2.7 万字符。
扩展点:E-S21-050(三层轨迹验证:结果/过程/质量)、E-S21-051(经验沉淀四形态与边界)、E-S21-052("完成≠进步"与睡眠学习)。
上一篇:S21-J15 · 模型后训练:四阶段、SFT 与 RL 的分工
下一篇:S21-J17 · 多 Agent 协作。


1. 一句话结论

保存经历不等于从经历中学习。 把一百条轨迹塞进向量库,不会自动完成"跨案例比较"——学习发生在系统主动完成评价、对照、归纳、验证之后,而不在日志写盘那一刻。

出处:《AI Agent 深入理解》第 9 章(A-4575)。

上下文学习(J09)→ 只在当前任务内适应
用户记忆(J10)  → 沉淀"用户与世界是什么样的"
持续进化(本篇) → 沉淀"在什么条件下应该怎样行动"

2. 为什么不让模型"每次任务后自己训练"

风险 说明
学习信号脏 用户满意 ≠ 合规
能力遗忘 局部更新导致旧能力退化
策略漂移 / 安全退化 行为漂移出安全边界
错误经验被固化 提示注入可能被写进参数,持续放大
私有不进基础模型 基础模型周期性训练吸不到你的私有规则与工具变化

判据:"学习"要先做成模型外围的一套系统——记录证据 → 验证结果与过程 → 跨轨迹提取共性 → 决定更新哪一层 → 待验证版本 → 回归与安全检查 → 才允许改变下一轮运行。


3. 三层轨迹验证(E-S21-050)

问三个问题:办成了吗?是否以允许的方式办成?是否让用户舒服?

层 验证器 证据 可靠性
结果层 结果验证器(代码) 测试结果、数据库状态、工具返回、退款金额 最高,最该先建
过程层 过程验证器(代码) 业务规则、权限表、动作序列 高,可精确表达
质量层 LLM-as-a-Judge + Rubric 轨迹证据引用 + 逐项打分 中,需量表与抽检

客服 Agent 的七维展开:

层 维度
结果 任务结果
过程 规则遵从、隐私边界、承诺—行动一致性
质量 表达质量、合规变通
跨层 事实可靠性(可由工具返回核验的部分走代码,其余走 Rubric)

两个经典反例:删掉失败的测试也能让测试通过(结果对、过程错);口头承诺"7 天内退款" 也能拿到一时满意(质量对、结果未达成)。


4. 经验沉淀四形态(E-S21-051)

形态 形式 生效速度 风险 适合
知识 文档、知识库条目 快(下一轮读入) 污染知识库 事实、规则、术语
指令 提示词/项目指令文件(J12) 快 指令膨胀、互相冲突 流程约定、禁区
程序 写工具、写脚本、改 Harness 中 代码缺陷、越权 高频重复、确定性操作
参数 SFT / RL 更新权重 慢(需训与验) 遗忘、漂移、固化错误 通用行为策略

升级判据(从便宜到贵):

能写成知识 → 写知识
知识太长/太常触发 → 写成指令
指令复杂/需确定性 → 写成程序
跨任务普遍适用且程序解决不了 → 才考虑参数

原文强调"从更新产物到更新'更新方法'":不只沉淀结论,还要沉淀"如何发现并验证结论"的流程(元层面的进化)。


5. "完成 ≠ 进步"(E-S21-052)

陷阱 说明 防线
完成即算进步 任务过了,但靠捷径/降级 过程层验证 + 回归集
只加不减 知识/指令只增 → 上下文膨胀 定期淘汰、合并、去重
局部最优 单点提升、整体退化 全量回归 + 消融(J14 §8)
不可追溯 不知道哪次改动导致退化 版本化 + 可回滚 + 变更记录

5.1 睡眠学习:整合、遗忘与能力保鲜

类比人类睡眠做三件事:

动作 在 Agent 上
整合 把碎片经验合并成更通用的规则,去掉重复
遗忘 淘汰过时/错误条目(接口变了、规则改了)
保鲜 定期回归测试,确认老能力还在

判据:没有"遗忘"机制的知识库,最后一定会变成噪声源。

5.2 安全边界:哪些东西不能被进化

不能自动改 原因
权限与安全策略 自我放宽 = 越权
奖励函数 会学到钻空子
评估集 会"背答案"
审计与日志开关 会失去可追溯性

6. 可长期运行的进化闭环

① 采集轨迹(含工具返回、环境状态)
② 三层验证打分(结果/过程/质量)
③ 定位首个错误 → 归因(模型 / Harness / 数据 / 环境)
④ 选形态沉淀(知识/指令/程序/参数)
⑤ 生成候选版本(不直接生效)
⑥ 回归测试 + 消融 + 安全检查
⑦ 灰度发布 → 观察 → 保留或回滚
⑧ 定期整合与遗忘

判据:每一步都要能回滚。 不能回滚的"进化",等于给自己埋故障。


7. 反例与排障

现象 根因 处理
越用越差 错误经验入库 过程层验证 + 定期回归
指令文件越来越长 只加不减 整合 + 遗忘(§5.1)
某天开始大量越权 权限被"进化" 权限列入不可自动改清单
改一处、坏三处 无回归集 建回归集(J14)
归因错、修错层 只看最终结果 三层验证 + 首个错误定位

8. 自测

  1. "保存经历"与"从经历学习"差在哪一步?
  2. 三层验证各由什么实现?为什么结果层最该先建?
  3. 四形态的升级判据是什么?
  4. 哪些东西不能被自动进化?
答案
  1. 差在评价、对照、归纳、验证这四步主动处理。
  2. 结果层=代码断言;过程层=代码(规则/权限/动作序列);质量层=LLM-as-a-Judge。结果层证据最可靠。
  3. 知识 → 指令 → 程序 → 参数,能用便宜层解决就不用贵的。
  4. 权限与安全策略、奖励函数、评估集、审计开关。

9. 下一篇

S21-J17 · 多 Agent 协作 —— 什么时候真需要多个 Agent、六种失败模式、以及"Agent 社会"的实验能给工程什么启示。


本篇属于系列《S21 · Agent 工程与 MCP》。旧文来源:A-4575(第 9 章);扩展点 E-S21-050/051/052。思考题答案由原作者用 AI 生成并经人工审校,本文只做要点索引。

S21-J16 · Agent 的持续进化:把"经验"变成受控更新
https://www.clxhxhhr.top/posts/5500/
作者
clxstart
发布于
2024-12-31
许可协议
CC BY-NC-SA 4.0
评论
0 条
还没有评论,先写一条吧。