
像 Claude Fable 5 这样的 Mythos 级模型,已经改变了 Anthropic 许多人的工作方式。我想分享两个技巧,帮助大家更好地发挥这类模型的能力。
自我纠错 loops
最近大家对 loops 很感兴趣。@bcherny 曾提到,“(他的)工作就是写 loops”。让模型围绕一个评估指标不断迭代优化,是提升任务表现的常见做法:Claude Code 里的 /goal,以及 Claude Managed Agent 里的 Outcomes,都是一些基础能力,让你能把这套通用做法用到自己的具体任务上。
正如我们在 prompting guide 中提到的,Fable 5 很擅长在 loop 中自我纠错。一个设计良好的目标或 rubric,会给 Claude 所运行的环境加入反馈。这样 Claude 就能运行起来,通过目标或 rubric 收集反馈,自我纠正,然后继续推进,直到满足目标或 rubric 为止。

我分享一个用来测试 Fable 的玩具例子:Parameter Golf 是一个开源 ML 工程挑战,目标是在 8xH100 上用不到 10 分钟,训练出能装进 16MB artifact 的最佳模型。
它有点像 @karpathy 的 autoresearch 项目:它测试的是一个 agent 编辑基础训练代码(一个 train_gpt.py 文件)、启动训练、轮询日志、读取分数,并决定下一步该跑什么实验的能力。
我用 Claude Managed Agents(CMA)在这个挑战上比较了 Fable 5 和 Opus 4.7。CMA 提供 agent harness 和托管 sandbox,因此很适合让 Fable 5 执行长时间运行的任务。对于 Parameter Golf,我通过 self-hosted sandbox 给 CMA 接入了 8xH100 GPU。
有一个微妙之处:由谁来评判很关键。我们看到,模型在对自己的输出做自我评判时会遇到问题。Prithvi Rajasekaran 在我们的工程博客里写过这个问题。

我们发现,在 Fable 5 上,用来验证的子 agent 通常优于自我评判,因为评分是在一个独立的 context window 中完成的。CMA 里的 Outcomes 会为你生成一个评分子 agent 来处理这件事。
每次测试时,我都会提供一个 rubric(一个文件),里面有九条可检查的标准(例如,运行一个 baseline、跑 20 个实验,等等)。然后,我让 Parameter Golf 最多运行 8 小时。Outcomes 的 grader 会确认所有实验标准都已满足,然后才允许 Claude 停止工作。
Fable 5 对训练 pipeline 的改进幅度大约是 Opus 4.7 的 6 倍。如果把实验分成结构性实验(例如架构改动)和数值型实验(例如调整一个常数),Fable 5 更敢下注在更大的结构性改动上,并且表现出韧性(例如顶住一次量化回归,最终拿到最大收益)。
Opus 4.7 的第一个实验带来了一点小收益,此后几乎所有实验都沿着同一个模板走:调整一个标量、测量结果,如果收益为正就保留。
Memory
Memory 是 Fable 另一个表现出色的领域。可以把它看成一个跨 session 的外层 loop:Claude 在一个 session 中写入 memory,这些 memory 可以在未来的 session 中被取回使用。
@pgasawa 和团队最近发布了 Continual Learning Bench 1.0,所以我想在 Fable 5 和更早的模型之间测试一下这件事。
https://x.com/i/status/2051361012838957144
我比较了 Fable 5、Opus 4.7 和 Sonnet 4.6 在这个 benchmark 中一个任务上的表现:这个任务要求 agent 在可以访问 SQL 数据库的情况下,按顺序回答一系列问题。每个问题都是一个单独的 agent session,并且都会提供 memory。
为此,我使用了带 memory 的 CMA。它会让每个 agent 访问一个挂载的文件系统,这个文件系统可以在多个 session 之间共享。

在这个任务里,有效使用 memory 通常会经历一个递进过程:失败(答错并记录下来)、调查(在继续之前弄清楚原因)、验证(把诊断变成已检查的事实)、提炼(把验证结果变成通用规则),以及查阅(读取这条规则,而不是重新推导一遍)。
Sonnet 4.6 大约停在第 1 步:它的存储内容是一串失败记录和未解决的猜测(例如,“也许是 prc 而不是 prc_usd?”)。它很少查阅之前的笔记。要提升表现,需要提供面向该任务的 memory 指令。
Opus 4.7 大约停在第 3 步:它会创建一份 schema reference,并标出不确定之处(例如,“prc 可能以美分为单位?验证一下。”),但验证覆盖率很低:只覆盖 7–33% 的问题(中位数 run 大约 17%)。
Fable 5 往往能走完整个递进过程:在它表现最强的几次 run 中,验证覆盖率最高达到 73%(30 个问题中的 22 个),并且它会把学到的东西提炼成通用规则,帮助未来任务。
与其直接给 Fable 5 下 prompt、一路手动引导,很多时候更好的做法是设计 loops,让模型根据环境反馈(例如 /goal 或 Outcomes)自我纠错,并管理自己的 context(例如通过 memory)。
我这里只分享了自己跑过的几个小规模实验,但 Fable 5 值得你在有挑战性的任务上亲自测试,也值得尝试用 loops 来做自我纠错或管理 memory。
如果想开始,可以阅读我们的 docs,或者询问最新版 Claude Code。它可以使用我们内置的 /claude-api skill,告诉你关于 Fable 5(例如 prompting best practices)、/goal、Claude Managed Agents,或其他 API 功能的信息。