模式矩阵 /模式白皮书/M5

M5 · Procedural Memory · 程序性记忆

字段
双轴坐标 记忆 Memory × 层级 Hierarchy(分)
成本档 ②(中等,蒸馏 + 索引 + lifecycle 管理)
课程对应 并入 06-03(技能包讲,是独立模式)
目录归属 全集 33 模式之一 · 记忆模块 5 模式之一
一句话 把一类任务的成功执行流程凝固成可命名、可加载、可复用的结构化资产,下次同类任务直接调用,跳过试错进入主路。

它解决什么问题

同一类任务 agent 干过五次,每次都干成,但每次都从零开始——读五个 reference、试错三次、走完一遍跟上次一模一样的路径。第六次同样的任务来,agent 又走一遍。Token 烧、时间长、用户烦。根本问题是 agent 干完之后没有任何东西被沉淀下来,那次漂亮的"成功路径"丢了。

程序性记忆解决的就是这个:agent 做成一件事后,把"怎么做成的"凝固成一个可复用招式,下次同类任务直接加载这个招式,五秒进入主路。它解决的根本问题一句话——agent 不会因为做过一遍而变得更快。在企业语境里,它还是把组织 process 沉淀成 agent 能消化形态的工程载体——老员工脑子里那些"会做",第一次有了能精确表达的容器。

为什么坐标是「记忆 × 层级」

核心机制

  1. 三阶段加载:启动时只加载每个 skill 的 name 加 description(discovery,约 50 token/skill),任务匹配时才读完整 SKILL.md 进 context(activation,几百到两千 token),执行时按需加载脚本和资源(execution)。这是程序性记忆在 token 经济上做得最对的实现——五十个 skill 全量加载会吃光 context。
  2. 两种来源:人精心写(Anthropic Agent Skills 路线,审过、版本化、进 git)和 agent 自动蒸馏(Hermes 路线,干完任务自己写)。来源字段影响信任级别。
  3. 自动蒸馏:足够复杂的任务(如五个以上工具调用)成功完成后,agent 分析 trajectory、识别可复用模式(输入、工具序列、输出格式)、写成结构化 skill。简单任务不触发,否则蒸馏出的低通用性 skill 会污染库。
  4. 人机同读格式:用 markdown 加 YAML frontmatter,人能读、git 能 diff、agent 自己能读。人机同读的格式胜过任何专为机器设计的格式。
  5. lifecycle 管理:跟踪每个 skill 的 use_count 和 success_rate,低成功率自动 evict(总误导 agent 的招式),长期不召回的进冷层。生产基础设施在变,过期 skill 会从"招式"变成"坑"。

适合的生产场景

容易出错的地方

关键指标

最小骨架

Skill = SKILL.md 的结构化形态:
    name / description(用于 discovery)/ body(workflow + best practices)
    triggers[] / preconditions[] / steps[] / failure_handling[]
    source(human|agent|refined) / use_count / success_rate
SkillLibrary:
    discover()                    → 启动只返回 name + description
    activate(task, top_k)         → 任务到来按相似度召回 top-K 完整 skill
    mark_used(name, success)      → 执行后记成功率
    distill_from_trajectory(...)  → 5+ tool calls 且 success 时自动蒸馏
    evict_stale(...)              → 低成功率或长期不用的清除

工程落地四个要点:蒸馏的 LLM 调用用便宜模型加结构化 prompt 并做 schema 校验;蒸馏触发条件不止"5+ tool calls"(还要 success、工具间有非平凡逻辑、无用户多次纠错);lifecycle 做 success_rate 跟踪;自蒸馏 skill 与人写 skill 分级信任。

企业落地一例

某中厂运维团队五到八个工程师管三十多个生产服务,DevOps agent 要接住反复遇到的标准运维事件——Redis 集群配置变更、Kubernetes 批量重启、PostgreSQL 备份恢复。六个关键决策:skill 分两类,团队精心写的 runbook 走 Anthropic Skills 路线(SRE leader review 才入库,放 runbooks/),agent 自蒸馏的放独立 namespace(auto-skills/,七天后进 review 队列);触发条件 schema 化(frontmatter 的 triggers 字段列关键词或正则,让"该不该用这个 skill"可测试,规则匹配加 LLM 混合判断);preconditions 强制前置检查(执行前先验"当前用户有 SSH 权限""目标 namespace 存在",这是生产事故最大防火墙);steps 可回滚(每步标 idempotent 或带 rollback,类似分布式系统 Saga);成功率监控加告警(任何 skill 跌破 80% 告警去查是不是底层服务变了);自蒸馏招式试用期双轨执行(两份结果一致五次以上才转正)。落地第三个月,开篇"半年第三次手动改 maxmem-policy"的场景再来时,agent 走 discovery 加 activation 加自动 precondition 检查加自动 rollback 保护,三万 token 加十分钟的活儿压到五千 token 加九十秒,省下的运维时间相当于半个 SRE 全职。

与其他模式的关系

一句话记住它

程序性记忆不是工作流模板,是 agent 的职业能力——它让 agent 在保留判断力的同时拿到老员工的手艺,agent 的价值跟它累积的经验等比,跟它今天有多聪明反而关系不大。


本页属于 ADPS 33 模式白皮书。返回 模式矩阵与白皮书目录, 或查看配套 可运行代码目录