返回 FEED
CLAUDE2026-06-10

Anthropic 工程师亲述:用 Fable 5 设计自纠正循环的两个技巧

Self-correction loops:让模型在反馈里自己纠偏

最近很多人开始关注「循环」这件事。@bcherny 说他的工作本质就是「写循环」。在 Claude Code 里对应 /goal,在 Claude Managed Agent 里对应 Outcomes——都是同一个通用思路的具体实现:给模型一个目标或评分标准,让它在运行环境中收集反馈,自我纠正,直到目标达成。

Fable 5 在这类循环中表现突出的原因在于:它真的会在每次迭代中根据反馈调整策略,而不是机械重复。

Parameter Golf 实验:这是一个开源 ML 工程挑战——在 16MB artifact、10 分钟、8×H100 的限制下训练出最好的模型。类似 Karpathy 的 AutoResearch 项目,考验的是 Agent 编辑训练代码、启动训练、读日志、判断、下一步决策的完整循环能力。

用 Claude Managed Agent(CMA)分别在 Fable 5 和 Opus 4.7 上跑了这个挑战。关键设计:一个 verifier 子 Agent 独立评分(在独立的上下文窗口做判断),而不是让模型自我批判自己的输出——后者已被多次证明效果不佳。Outcomes grader 负责在所有实验标准满足后才停止。

结果:Fable 5 比 Opus 4.7 的训练 pipeline 提升约 6 倍。分解来看,Opus 4.7 的第一次实验就产生了一个小收益,然后几乎所有后续实验都在同一个模板里打转——调一个标量,测,收益为正则保留。Fable 5 则选择了更大的结构性赌注(改架构而非调常数),并且在遭遇量化回归时没有放弃,一路推到最大收益。

Memory:跨 Session 的外部循环

记忆是 Fable 5 另一个明显强于前代模型的地方。可以把它理解为一个跨越 Session 的外层循环:模型在 Session 期间写记忆,这些记忆在未来的 Session 中可以被检索。

Continual Learning Bench 1.0 测试:@pgasawa 团队发布的基准测试,其中一个任务考察 Agent 在有文件系统记忆的情况下,能否回答顺序关联的问题。每个问题是一个独立的 Agent Session。

用 CMA 的 memory 功能(跨 Session 共享的文件系统)测试了 Fable 5、Opus 4.7 和 Sonnet 4.6。结果分层非常清晰:

  • Sonnet 4.6 停留在第 1 步:它的存储里只有失败笔记和猜测("也许应该用 prc 而不是 prc_usd?"),很少主动查阅之前的记录,需要任务专属的记忆指令才能提升表现。
  • Opus 4.7 到达第 3 步左右:创建了带有不确定性标记的 schema 参考("可能是以分为单位?需要验证"),但验证覆盖率低,7–33%(中位数约 17%)。
  • Fable 5 能走完整条路径:最强运行时验证覆盖率高达 73%(30 题中 22 题),并且能把学到的东西提炼成通用规则,用于未来任务。

有效的记忆使用遵循一个递进链:失败记录 → 调查原因 → 验证诊断 → 提炼为通用规则 → 查阅规则而非重新推导。前代模型在这个链条上都有断点,Fable 5 是目前唯一能稳定走完的。

核心结论

与其直接 prompt 和 steering Fable 5,不如设计循环让它在环境反馈中自我纠正(通过 /goal 或 Outcomes),并通过记忆管理自己的上下文窗口。

这不是新范式,但 Fable 5 让它真正落地了。