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

F3 · Experience Replay · 经验回放

字段
双轴坐标 反思 Reflection × 循环 Loop(转)
成本档 ③(存储 + 检索 + 注入的持续投入,回报随时间累积)
课程对应 06-04
目录归属 全集 33 模式之一 · 反思模块 4 模式之一
一句话 agent 在新任务来时主动检索历史相似任务的 trajectory,把可复用部分注入当前 context,让学过的东西不白学。

它解决什么问题

一家公司运营几年,员工换了几代,工程师做过的所有事都散落在 Slack 消息、Jira ticket、内部 wiki、邮件存档里。这些是企业的"沉默资产"——80% 没人翻,但每一条都可能在新任务接手时省下半天工夫。资深员工离职带走的不只是技能,还有"踩过的坑、试过的失败路径、当年怎么发现某个关键变量的过程"——这些没法用一份 skill 包概括,但有用得很。

Experience Replay 在 agent 系统里解的是同一个问题——让历史 trajectory 不要变成沉默资产。它在新任务来时主动检索相似的历史轨迹(成功的、失败的、零散的),把可复用部分注入当前 context。它和 Skill Package 的区别在颗粒度:Skill Package 装的是 verified 可调用单位,Experience Replay 装的是更宽泛的参考资产——经验有用但不一定 verified。CER(Contextual Experience Replay)在 WebArena 上把 GPT-4o baseline 的成功率提升了 51%,且完全 training-free。

为什么坐标是「反思 × 循环」

核心机制

一个 Experience Replay 闭环由六段组成:Task → Retrieve → Adapt → Execute → Distill → Store。两个核心设计判断决定它能不能工业化:

  1. multi-level 分层存储:经验必须分层存,单层要么太散要么太空。AgentRR 给的是双层——low-level(具体 action:调了什么 tool、参数填什么、得到什么 observation,用于 debug)加 high-level(泛化策略:用了什么 approach、应对什么类型问题、什么时候 work,更接近工程师的判断)。Manning 往上延伸成三层抽象阶梯:
层级 内容 工程角色
L0 Raw traces 完整执行 trace ground truth,debug + audit
L1 Per-task reflections 单次任务后写的反思文本 Reflexion 范式,注入下一轮 prompt
L2 Cross-task heuristics 跨任务提炼的通用规律 ExpeL 范式,多次 L1 后蒸馏
  1. training-free 注入:重训 LLM 太贵,CER 的做法是把过去 trajectory(裁剪加摘要后)作为 context 注入当前 prompt,让 LLM 在 context window 里 in-context learning,跳过训练阶段。检索时优先 effectiveness 高加 outcome 成功的经验,复用后回写 effectiveness——没用的 lesson 自动 deprecate。

适合的生产场景

容易出错的地方

关键指标

最小骨架

# 检索 + 注入 (CER training-free)
past = retrieve(task)                      # top-K, 优先 effectiveness 高 + success
context += render_for_context(past)        # high-level strategy + author metadata
heuristics = get_L2_by_signature(task)     # 跨任务规律
context += render(heuristics)

result = agent.run(task, prior_context=context, trajectory_collector=traj)

# 记录新经验 (自动提炼 high-level, 用便宜模型)
record(task, traj, outcome, author_id)     # high + low 双层

# 回写 effectiveness (lesson accuracy 反馈环)
for e in past:
    update_effectiveness(e, current_task_succeeded=result.ok)

# 周期性蒸馏 L2 (同 signature 经验 >= 5 条才做, 防 overfit)
monthly_distill_L2(signature)

四个工程要点:embed 和 high-level 提炼都用最便宜的模型(频次高、store 会涨到几十万条);effectiveness_score 是核心 metric,健康线 ≥0.5;author_id metadata 别省,它让 agent 能告诉用户"这事谁做过、可咨询谁";task_signature 用语义不用 hash,否则命中率低。

企业落地一例

一家 SaaS 公司的 8 人数据团队,PM 问"Q2 新功能上线后 D7 留存没明显涨,分析一下原因"。8 个数据科学家分头做,一个月后出 5 份独立报告(3 份没做完)。复盘发现 3 份做了几乎一样的 cohort 分析,2 份用不同归因方法但都漏了同一个 confounding variable(黑五时段自然流量基线变了),0 份引用团队 6 个月前做过的同类分析——那份分析是离职的 Sarah 做的,方法搭好了、confounding 那条她也踩过写了 case note,但归档在 Sharepoint 没人翻。团队上 Experience Replay 后,再有类似任务,第一个开干的人触发检索,拿到 Sarah 那份分析(含"留存分析必查时段效应"那条 heuristic),作为 cross-task heuristic 注入 prompt。配套 6 个决策:multi-level schema(high-level approach 加 low-level SQL)、CER 注入 top-5 加 author metadata、embed 用 cheap model、成功加失败加中性轨迹都存、30 天 cold tier、每月自动蒸馏 L2。8 人月浪费压到 1 人月做好新分析。

与其他模式的关系

一句话记住它

Experience Replay 是反思工程里"时间是朋友"那一刀——投资在前、红利在后,它把组织里散落的零散经验做成可检索资产,agent 的成熟度不在今天多聪明,而在三个月、六个月后比现在聪明多少。


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