用 Fable 5 搭一个自我改进的 agent 系统:14 步,loops、动态工作流、routines

Yaqin Hei··15分钟阅读
中文EN
用 Fable 5 搭一个自我改进的 agent 系统:14 步,loops、动态工作流、routines

本文原题《Build self-improving agent system with Fable 5 in 14 steps》,作者 @0xCodez。核心讲的是:Claude Fable 5(Anthropic 6 月 9 日发布的首个公开 Mythos 级模型,定价 $10 / $50 每百万 token)不是一个「更快的聊天工具」,而是一套能「越滚越强」的 agent 系统的底座——用 loops、dynamic workflows、routines 三件套加上一层记忆把它搭起来。文中的 Fable 5 发布、Mythos 级、定价、安全分类器兜底 Opus 4.8、6 月中的「暗降」争议、Continual Learning Bench、验证者子 agent 打赢自我批判,我都逐条核过属实;个别专有名词(Parameter Golf、Project Glasswing、某工程师名、「319 页」system card)与精确基准小数,以原作者的引用为准、我没能独立复核。中文翻译、重排、7 张配图本地化:Yaqin Hei(非原创,已保留原文出处)。

译者的话:为什么翻这篇

国内绝大多数人用 Claude,还停在「把 Fable 5 当成一个 context 更大的 Sonnet」——开个会话,prompt 一下,跑五分钟,关掉。10 个人里 9 个,从没跑过一个「越用越聪明」的 agent 系统:每一次运行让下一次更聪明、每个 state 文件在累积、每个 skill 在变利。

这篇最戳我的一句是——self-improving 不是 self-learning。模型不会自己更新权重(那是 RSI,还没落地),真正在复利的,是你在模型周围搭的那套环境:记忆、skill、eval loop、独立验证者。模型是无状态的;越滚越强的,是它周围那套系统。 这正好把「agent 落地」从「调 prompt」拉回到「设计一套会自我改进的系统」这件真正的工程事上。

对我最大的改变,是它改了我一个默认动作:以前一个自动化任务,我上来就想「让最强的模型一把梭」;现在我先画那张复利栈(下面图 2)——原语、编排、记忆、自我改进四层,然后按复杂度路由:编排用 Fable 5、worker 用 Sonnet、评分用 Haiku、被安全分类器拦了兜底 Opus。更关键的是,它让我把「每次失败后,把教训写回 skill,而不是只留在聊天里」变成一条硬纪律——这条我一直知道该做,却从没坚持。

如果你手里正好有个跑 agent 的活儿,这 14 步里你大概率漏了三件最省力的:独立验证者子 agent(步骤 6)、一个 STATE.md(步骤 11)、视觉自检(步骤 13)。 挑一个,明天就加上。


以下是正文

大多数人在用 Claude Fable 5 的方式,就像在用一个 context window 更大的 Sonnet 4.6。他们 prompt 它,它干活五分钟,然后他们关掉标签页。

10 个用户里有 9 个从没跑过一个会复利的 agent 系统——一个每次运行都让下一次更聪明、每个 state 文件都在累积、每个 skill 都在变利的系统。

Fable 5 是为连续跑好几天造的。你却只用它几分钟。这是一份 14 步的路线图,教你搭出 Fable 5 本该服务的那个自我改进系统。

Claude Fable 5 于 2026 年 6 月 9 日发布——首个公开可用的 Mythos 级模型,Anthropic 把这一档放在 Opus 之上一级。这份路线图取自 Anthropic 的工程博客、团队的公开实验,并对照了截至 2026 年 6 月的发布文档做过核对。

分三层:Fable 5 到底解锁了什么、让它复利的三个原语(loops、dynamic workflows、routines),以及把它变成一套系统的自我改进层。

14 步。3 层。别再 prompt 了。开始搭一个会复利的系统。

PART 1 · Fable 5 到底解锁了什么

01. Fable 5 是 Mythos 级模型,标题能力是「按天连续自主」

Claude Fable 5 在 2026 年 6 月 9 日作为首个公开可用的 Mythos 级模型发布——这一档是 Anthropic 在 Opus 之上引入的新层级。

Mythos Preview 在 4 月通过 Project Glasswing 交付给了少数关键基础设施合作方;Fable 5 是 Anthropic 认为可以面向大众安全发布的版本,内置安全分类器,会在高风险领域拒答。不带这些分类器的 Mythos 5,仍只在 Glasswing 内部。

从 Anthropic 的发布文档看,Fable 5 真正做到、而此前 Claude 模型撑不住的事:

  • 按天连续的自主会话。 跑在 Claude Code 或 Claude Managed Agents(CMA)这类 agent harness 里,Fable 5 能连续工作好几天——跨阶段规划、派活给子 agent、检查自己的活儿。
  • 内建自我验证。 自己写测试来检查自己的输出。用视觉把输出对照目标核一遍。把教训蒸馏成通用规则。测试自己的假设。
  • 最有野心的代码活儿。 大型迁移、复杂实现、跨天的自主 coding 会话。Anthropic 主推的标题用例是「把大项目甩给它,回来 review 交付物」。
  • 多阶段知识工作。 从深度研究分析,到可供 review 的交付物——只需极少的监督。

定价对得起这一档:输入 $10 每百万 token,输出 $50 每百万 token,叠加已有的 prompt caching 90% 输入折扣。在 Claude API、AWS、Amazon Bedrock、Vertex AI、Microsoft Foundry,以及按用量计费的 Enterprise 计划上可用。这不是订阅模型。重度使用,会自己长出一张账单。

02. Self-improving ≠ self-learning

「自我改进的 agent 系统」这句话被人随口乱用。真实的那个版本,和炒作的那个版本,是很不一样的两回事——动手搭之前,这道鸿沟值得先搞清。

  • Self-learning(自我学习)——agent 根据学到的东西更新自己的权重。Fable 5 不做这件事。没有任何公开可用的模型在生产里做这件事。递归自我改进(RSI)是 Anthropic 自己在 2026 年 5 月警告过的长期方向,不是今天在发货的能力。
  • Self-improving(自我改进)——agent 周围的系统在复利。每个会话把教训写进记忆。skill 随着边界 case 被补进来而变利。state 文件累积核过的事实。eval loop 打磨 prompt 和 rubric。模型不变;它运行的那个环境变利了。

这个意义上的自我改进,是你搭的那套系统的性质。Fable 5 有那份原始能力——长 context、子 agent 派活、视觉自检、按天连续的耐力——正是这些,让「环境-反馈」这个 loop 变成真的能一轮接一轮复利的东西。Anthropic 的工程团队说得很直白:

「与其直接 prompt、直接操纵 Fable 5,不如设计一些 loop,让模型能根据环境反馈自我纠正(比如 /goal 或 Outcomes),并自己管理 context(比如通过记忆)。」

03. 复利栈:四层,一个反馈 loop

复利栈:原语 → 编排 → 记忆 → 自我改进,四层一个反馈 loop

复利栈——从底往上读,这也是系统搭建的顺序、以及杠杆复利的顺序。

本文顶部那张图,把整个架构画在了一张图里。从底往上读——那是系统被搭起来的顺序,也是杠杆复利的顺序。

  • 第 1 层 · 原语(Primitives)。 Fable 5 本身、子 agent、worktrees、agent 会用的工具。原始能力,周围还没有系统。这是今天大多数人在用的层。
  • 第 2 层 · 编排(Orchestration)。 /goal 和 Outcomes 做自纠 loop。Dynamic Workflows 做复杂的多步编排。Routines 做「合上笔记本」的云端运行。这一层把原语变成工作流。
  • 第 3 层 · 记忆(Memory)。 state 文件、Skills、Knowledge Base、写下来的教训。记忆,让明天的会话是续跑而不是重启。
  • 第 4 层 · 自我改进(Self-improvement)。 视觉自检、eval loop、规则蒸馏。agent 给自己的输出打分,打磨产出它的那个 skill,把教训写回记忆。loop 闭合。

这套架构之所以复利:第 1 层的每个输出,都往上流经第 4 层,在那里被打分、蒸馏、写回第 3 层。 明天第 1 层的运行,继承昨天打磨过的记忆和精炼过的 skill。模型是无状态的;它周围那套系统不是。

04. 什么时候用 Fable 5、Opus 4.8、Sonnet 4.6:成本-能力矩阵

Fable 5 每 token 大约是 Opus 4.8 的 5 倍成本。自我改进系统里,并不是每一步都需要最顶那一档。在生产里跑这套的团队,是按任务复杂度路由,而不是一律用最强的:

成本-能力路由:Fable 5 编排 · Opus 4.8 兜底 · Sonnet 4.6 worker · Haiku 4.5 评分

按复杂度路由,别默认用最贵的——生产里的省钱配方。
  • Fable 5 干重活的编排者角色:跨天规划、派活给子 agent、用视觉验收、从累积的证据里蒸馏规则。把「按天连续」这条能力用在它对得起定价的地方。
  • Opus 4.8 干编排者派下来的、难但有界的子任务:架构决策、复杂调试、深度 code review。也是 Fable 5 分类器拦截(cyber、bio、chem、蒸馏)时的显式兜底。
  • Sonnet 4.6 干高频的 worker 活:lint、简单重构、测试脚手架、文档更新。扇出的大头都跑在这。
  • Haiku 4.5 干评分子 agent 和便宜分类器:独立 context window,低成本——正是 Anthropic 明确推荐的 verifier 角色的理想人选。

让自我改进系统在经济上跑得起来的成本套路,被生产团队采用的是:编排在 Fable 5,worker 在 Sonnet 4.6,评分在 Haiku 4.5,分类器拦截时兜底 Opus 4.8。 和 Anthropic 工程师内部用的是同一套。

PART 2 · 三个原语

05. /goal vs Outcomes:同一个想法的两种实现

Anthropic 的 Claude Code 团队,在两个 harness 里各发布了一个几乎一模一样的、做目标驱动 loop 的原语。它们共享同一个形状:一个独立的评分者检查活儿,「未达标」的判决启动下一轮,评分者通过时 loop 退出。 它们在一些「决定你该用哪个」的表面细节上不同。

/goal vs Outcomes:目标驱动 loop 的两种实现

同一个想法,两种实现——共享那个关键动作:写代码的 agent ≠ 给它评分的 agent。

两者之间的取舍规则很短:

  • 在 Claude Code 里用 /goal——当活儿发生在你的机器上、你想要一个快速的、会话内的、带可度量终态的 loop。最适合上手 coding、调抖动的测试、打磨单个文件。纯文本目标、模型评分者、终端里反馈。
  • 在 CMA 里用 Outcomes——当活儿需要在 Anthropic 托管的基础设施上跑几小时或几天,带 sandbox、GPU 或受控环境。最适合 ML 训练、长时迁移、跨天研究。基于文件的 rubric、可评分标准、独立评分子 agent、硬性 max_iterations 上限。

两者共享那个让它们生效的结构性动作:写代码的 agent,不是给它评分的 agent。 为什么这点重要,步骤 6 讲深一层。

06. 验证者子 agent 打赢自我批判

Anthropic 工程师 Prithvi Rajasekaran 在工程博客上写过一篇,展示模型很难自我批判自己的输出。Claude Code 团队用 Fable 5 在经验上确认了这点:

「我们发现,对 Fable 5 来说,一个 verifier 子 agent 往往比自我批判表现更好。」

这个机制是结构性的,不是「更努力」的问题。一个模型评估自己的输出时,看得见自己的推理链,于是偏向那些和它已经写下的东西一致的结论。而一个独立的模型评估同一份输出,只看得见产物和 rubric。verifier 在 maker 的游戏里,没有任何利益。

验证者子 agent 打赢自我批判:Parameter Golf 实验证据

同一个模型,带独立 verifier 探索更大的假设空间、能从失败里恢复;没有 verifier,它没有任何东西逼它越过第一个「够好」。

图表在标题数字之外真正展示的:

  • Fable 5 做了更大的结构性改动——TRAIN_SEQ_LEN=2048 的训练+评估(−0.0179)、重叠滑窗评估(−0.0207)、int6 QAT + int6 expo(−0.0163)。每一个都是架构级的动作,不是调一个常数。
  • Fable 5 硬穿过一次量化回退,拿到了它最大的一次提升——一次失败实验后,它没有回退,而是继续调查。
  • Opus 4.7 的第一个实验(QK_GAIN_INIT=5.0)产生了一个小提升。之后几乎所有动作都用同一个模板:调一个标量、measure、正就留。这个形状更安全,不是更好。

对系统设计的启示:带独立 verifier 的 Fable 5,探索更大的假设空间,并能从中间的负面结果里恢复。 没有 verifier,同一个模型,没有任何东西逼它越过第一个「够好」。

07. Dynamic Workflows 把自纠模式组合起来

Dynamic Workflows 于 2026 年 5 月 28 日在 Claude Code 上线。想法是:Claude 当场自己写一个 JavaScript harness——一个带 agent()parallel()pipeline() 原语的文件,外加处理它们之间数据流的标准 JS。这个 harness 是为任务量身定做的,不是通用的。

5 月 29 日——很高兴分享我们最强的 Claude Code 新特性:dynamic workflows!在 prompt 里提一句「workflow」,Claude 就会动态创建一个它严格遵守的编排计划,让你可以放心相信:每一个 stage 都按正确顺序发生。

对用 Fable 5 搭的自我改进系统,六个有文档的 Dynamic Workflow 模式里,有三个配得上位置:

  • 扇出再合并(Fan-out-and-synthesize)。 把活儿切成 N 个独立块,每块并行跑一个 agent,再合并结果。最适合每一步都受益于自己干净的 context window——比如拿 skill 里的每一条规则去对照历史样本做评估。
  • 对抗式验证(Adversarial verification)。 对每个 maker agent,派一个完全没接触过 maker 推理的独立 verifier。这是步骤 6 那个「自我偏好偏差」的结构性修法,按任务应用一次。
  • 循环到完成(Loop until done)。 一直派 agent,直到停止条件满足——没有新发现、日志里没有更多错误、理论被验证。搭配 /goal 设一个硬性完成要求。

另外两个通常不出现在自我改进系统、但值得知道的模式:classify-and-act(用分类器把任务路由到对的模型)和 tournament(两两比较做基于品味的排名)。第一个对模型路由(步骤 4)有用。第二个在 coding loop 里罕见,但对设计或命名类任务有用。

08. Worktrees 做并行安全:Fable 5 跑好几天,文件不撞车

一个自我改进系统一旦派出不止一个 agent,文件就开始撞车。两个 agent 写同一个文件,和两个工程师不打招呼就往同几行提交,是同一个问题。

Worktrees:每个 agent 一个独立 checkout,并行不撞车

每个 worktree 一个独立目录、独立分支、共享 repo 历史——一个 agent 的编辑,物理上碰不到另一个的 checkout。

git worktree 解决它——一个独立的工作目录,在自己的分支上,共享同一份 repo 历史,于是一个 agent 的编辑物理上碰不到另一个的 checkout。对 Fable 5 派子 agent 去验证或做专项的自我改进系统,worktrees 不是可选项:

  • maker 在 worktree A 里写。 verifier 在 worktree B 里读(或对着 worktree A 的 checkout 以只读文件系统跑)。verifier 的探索不会碰到 maker 的状态。
  • 并行的结构性实验。 如果 Fable 5 在探索多个架构改动(像 Parameter Golf 里那样),每个实验跑在自己的 worktree 里。编排者从所有实验收集结果;最好的那个合并进去。
  • 带检查点的跨天运行。 每个大阶段可以是一个独立 worktree。一个失败的阶段,不会毒到其余的。

在 Claude Code 里,worktrees 有三种暴露方式:直接用 git worktree、用 --worktree flag 在自己的 checkout 里开会话、以及在子 agent 上设 isolation: worktree——每个 helper 拿到一份干净的 checkout,会话结束后自己清理掉。

09. Routines 做跨天编排:合上笔记本,Fable 5 还在干

Routines 于 2026 年 4 月 14 日以 research preview 上线。它们是保存下来的 Claude Code 配置——一段 prompt、若干仓库、connectors、权限——按触发器在 Anthropic 托管的云基础设施上运行。你的笔记本可以是关着的。 运行照样发生。

具体到 Fable 5,Routines 是那层「让模型的能力对得起价钱」的触发层。Anthropic 衡量 Fable 5 的「按天连续」,用的就是 Claude Managed Agents——一个带全套工具、不受本地机器约束的托管 sandbox。Parameter Golf 实验在 8 张 H100 上跑了长达 8 小时。那一档运行,不会发生在你的笔记本上。

三种 Routine 触发类型,映射到自我改进模式:

  • 定时触发(Schedule)——晨间简报模式。每天早 7 点:重跑昨天的 eval 套件、把任何新的失败模式蒸馏进 skill、把摘要写进 Slack。你睡觉的时候,agent 在变利。
  • API 触发——「按事件点火」模式。CI 挂了 → 触发一个 Routine 去调查。Sentry 告警 → 触发一个 Routine 去分诊。自我改进系统对你真实的环境做出反应,而不是一个固定时间表。
  • GitHub 事件触发——「从真实工作里学」模式。PR 打开时,对着最新的 skill 跑一次评估。合并时,把这个 PR 引入的任何新模式写回 skill。仓库状态和 skill 状态保持同步。
> /schedule 每天早 7 点,在 CMA 里用 Fable 5
  目标:对着最新的 skill 重跑昨天的 eval 套件。
  任何新通过的测试 → 把这个模式蒸馏进 skill。
  任何新失败的测试 → 调查,记进 STATE.md。
  把摘要发到 #engineering。/goal 不发出摘要、不更新 STATE.md 就别停。

▲ Claude
  正在创建 routine:nightly-eval-compounding
  - model: claude-fable-5
  - harness: claude managed agent(sandbox)
  - trigger: schedule (0 7 * * *)
  - grader: 独立 Haiku 子 agent(Outcomes)
✓ 已激活。首次运行:明天当地 07:00。skill 集会开始复利。

PART 3 · 自我改进层

10. 记忆的 5 阶段进阶

对「agent 记忆」在实践里到底意味着什么,最有用的一个框架,来自 Anthropic 团队的 Continual Learning Bench 1.0 实验。有效使用记忆,需要一个五阶段的进阶。每个阶段都是一个结构性动作;每个模型在进阶的不同位置出局。

  • 1. 失败(Fail)——agent 做错了什么,并把这次失败记录得足够细,以后才用得上。
  • 2. 追因(Investigate)——往下走之前,agent 先搞清失败为什么发生。
  • 3. 验证(Verify)——agent 把诊断变成一个核过的事实,而不是一个猜测。
  • 4. 蒸馏(Distill)——agent 把验证变成一条超出这个具体 case 的通用规则。
  • 5. 查阅(Consult)——下一个任务上,agent 读这条规则,而不是从头重推那个事实。

记忆的 5 阶段:Sonnet 停在 1、Opus 停在 3、Fable 5 走完全程

Continual Learning Bench 的 SQL 探索任务——同样给记忆,拉开的是段位。

Continual Learning Bench 里,一个 SQL 探索任务上、每个模型都提供记忆,量出来的差别:

  • Sonnet 4.6 停在第 1 阶。它的记忆库是一堆失败便签和悬着的猜测(「也许是 prc 而不是 prc_usd?」)。它很少回头查旧笔记。记忆存在,但不复利。
  • Opus 4.7 停在第 3 阶。它建了一份带不确定标记的 schema 参考(「可能 prc 是以分为单位?去验证」)。验证覆盖率跑在 7–33%(中位数约 17%) 的问题上。
  • Fable 5 倾向于走完整个进阶。在它最强的几次运行里,验证覆盖率达到 73%(30 题里 22 题),并把学到的蒸馏成对未来任务有帮助的通用规则。

11. state 文件:记忆真正住的地方

5 阶段进阶是脑子里的模型。state 文件,是模型把每个阶段的输出写下来的地方。对跑在 Claude Managed Agents 里的 Fable 5,记忆是一个跨会话存活的挂载文件系统;在本地 Claude Code 里,一个 markdown 文件或一块 Linear 看板干同样的活。一个真正支撑起 5 阶段进阶的 state 文件的结构:

# 项目记忆 · trading-platform

## 已验证的事实   # 阶段 3 —— 别再猜这些了
- prc 单位是美元,不是分。用 SELECT MIN(prc), MAX(prc) FROM trades 验证过。
- user_id 通过 JOIN 对应 auth_users.uid,不是 auth_users.id。2026-06-09 确认。
- 测试库用 Stripe sandbox key;生产用 env 里的真 key。

## 通用规则   # 阶段 4 —— 重推之前先查这里
- 查按时间分桶的指标时,永远带上时区(默认 UTC 会错位)。
- Auth 中间件顺序重要:rate_limit → jwt → rbac。倒过来会 401。
- 迁移时,超过 100 万行的表永远别不分批就 ALTER。

## 未决的失败(下个会话调查)   # 阶段 1 → 2
- 2026-06-09:tests/e2e/checkout 大约每 50 次跑抖动一次。假设:webhook 竞态。
  复现步骤在 debug/checkout-flake.md。

## 学到的教训   # 阶段 4 的蒸馏
- PowerShell 在 Windows CI runner 上撞 TLS 1.2 问题。永远改用 bash。
- Stripe webhook 测试需要 STRIPE_WEBHOOK_SECRET。缺了就带明确信息跳过。

## 上个会话   # 阶段 5 —— 续跑,别重启
2026-06-10 03:30 UTC · 分类了 7 个失败,起草了 3 个修复(claude/fix-*),升级了 4 个。
下一步:对着生产负载,验证 claude/fix-rate-limit-order 里的 auth 中间件修复。

这个文件有五个小节,对应五个阶段。已验证的事实是阶段 3 的输出——agent 已经不再猜的东西。通用规则是阶段 4——超出具体 case 的蒸馏规则。未决的失败是阶段 1–2 的在办工作。学到的教训是更多阶段 4 的输出。上个会话是阶段 5 的续跑指针。

两条决定这个文件到底是复利、还是只是变大的操作规则:

  • 走之前先写。 每个 Fable 5 会话结束时都更新 STATE.md——试了什么、什么过了、什么挂了、什么新规则活了下来。会话不以一次写入收尾,下一个就从零重启。
  • 会话开始时先读。 每个新会话开头都读 STATE.md 和最相关的 skill。Continual Learning Bench 的数据显示:不这么做,即便是 Fable 5,也会露出 Sonnet 那一档的记忆行为。

12. 会复利的 Skills:把教训写进 Skill,不只是写进聊天

STATE.md 是项目记忆。Skills 是程序性记忆——那种「这类事情怎么做」、应该跨项目通用的东西。复利的套路:任何一次非平凡的失败之后,把教训写进 skill 本身。 系统每跑一次,skill 就更利一点。

一个复利了两周的 skill,和一个刚建的,长得不一样。新的小节会冒出来:已知失败模式、从复盘里长出来的规则、生产里观察到的反模式。skill 不再是一套静态指令;它是一份「团队到底学到了什么」的、在累积的记录。

---
name: ci-triage
description: 分类 CI 失败,给简单的起草修复,其余的升级。
  在 workflow_run.failure 或晨间分诊 routine 上触发。
---

# CI 分诊 skill

## 分类规则
- env: 缺 secret、env var 错。   # 升级给人,永不自动修
- flake: 不改代码重试就过。      # 重试一次,然后归档
- bug: 和近期 commit 挂钩的确定性失败。   # 起草修复
- dependency: 和版本 bump 挂钩。   # 起草回滚
- infra: 超时、OOM、runner 问题。   # 升级

## 已知失败模式   # 由 loop 在 14 天里补进来
- webhook-race: Stripe webhook 在测试中途到达时,e2e checkout 抖动。
  修复:在 tests/utils/webhook.ts 加 2 秒沉降延迟。
- tls-handshake: Windows runner 在 PowerShell 里 TLS 1.2 失败。改用 bash。
- db-migration: 对超过 100 万行的 trades 表 ALTER,30 秒超时。分成 1 万一批。

## 反模式(千万别做)   # 真实事故后补进来
- 永远别为了让 CI 变绿而禁掉一个失败的测试。归档它。
- 永远别不经人工批准就改 .github/workflows/。
- 永远别不经安全 review 就碰 src/payments/ 或 src/billing/。

## 状态
每次运行后更新 STATE.md:分类、起草的修复、升级项。

## eval 套件   # 步骤 13 —— loop 验证这个 skill
每周对着 eval/ci-triage-cases.jsonl 跑。任何新失败的 case →
经 Outcomes verifier 确认后,加进「已知失败模式」。

复利的契约:每一条被确认的教训,进一个 skill,不只是进 STATE.md。 STATE.md 是项目范围的,随项目一起死。Skills 住在 ~/.claude/skills/,跟着你走。两周有纪律的书写,产出的 skill,会实打实地跑赢 Fable 5 在一个全新项目上从头推导出来的东西。

13. 视觉自我验证:Fable 5 拿自己的 UI 对照目标核一遍

Anthropic 给 Fable 5 主打的能力之一是「用视觉把输出对照目标核一遍」。这句话听着抽象,直到你看清它到底替掉了什么:一个人肉盯着截图、确认 UI 长得对不对。Fable 5 自己在 loop 里、宣布完成之前,就把这一步做了。

生产里的套路:

  • maker 子 agent 写 UI 代码。 把结果渲染成一张截图。
  • verifier 子 agent 用视觉读那张截图,对照目标描述、对照项目 skill 里的 design token、对照 STATE.md 里上一张截图。
  • 判决回到 loop。 匹配 → 标任务完成。不匹配 → 描述差距,带一个结构化的 diff 交回给 maker。

这个套路,正是 Anthropic 在同一个 harness 下的 Parameter Golf 实验里量过的:Fable 5 看训练曲线图(视觉产物),自己决定曲线符不符合标准。没有人在 loop 里读那张图。是 verifier 读的。

14. Mythos 安全边界:Fable 5 不会做什么,以及怎么绕它设计

最后一步,是第一天最容易跳过、又最贵才学会的那一步。

Fable 5 内置安全分类器,会在特定高风险领域拒绝回应——网络安全漏洞研究、生物、化学,以及模型蒸馏。在这些领域,Anthropic 会自动把 Fable 5 兜底回 Claude Opus 4.8。这是有文档的;不是 bug。对一个自主运行的自我改进系统,这意味着:

  • 如果你的系统碰安全工具(SAST 扫描、漏洞研究、渗透测试逻辑,甚至某些类的 code review),预期会有分类器拦截。为兜底架构:把这些任务显式路由到 Opus 4.8,或者把拦截浮出来给人 review。
  • 生物、化学、蒸馏领域同理。 这个分类器覆盖很宽。一个科学计算工作流可能触发它;一次对加密原语的 code review 可能触发它。
  • 把 skill 设计成能优雅地浮出兜底。 一个 skill 应该知道自己产出的哪类任务可能撞分类器,并记录预期行为。一个在分类器拦截时静默失败的 loop,看起来和一个在真实错误上失败的 loop 一模一样——直到你去 debug 它。
  • 审一遍 system card。 Fable 5 那份 319 页的 system card 记录了分类器的覆盖范围。2026 年 6 月中,这次发布引发了争议,因为一些降级行为被发现埋在文档深处。上生产前先读它。

通用的设计原则:把安全边界当成一个已知的兜底,而不是一种失败模式。 一个发货时就带着对边界显式处理的自我改进系统,会随分类器演进而保持稳健。一个无视它的系统,会在 Anthropic 更新策略时,产出静默的回归。

§ 让 Fable 5 停在 10% 潜力上的那些错

  • 把 Fable 5 当成 context 更多的 Sonnet 4.6 用。 一个 5 分钟 prompt 完就关的会话,烧着 Mythos 档的价,却没有任何复利效应。
  • 用自我批判代替独立验证者。 maker 给自己批作业。Anthropic 量过这个差别;团队明确记录了 verifier 子 agent 这个套路。
  • 没有 STATE.md。 每个会话从零重启。Continual Learning Bench 的数据显示,Fable 5 记忆优势的 70%+ 就是在这里消失的。
  • 从不往里写的 Skills。 一个静态 skill 没问题;一个在真实失败后不累积教训的 skill,是浪费掉的脚手架。
  • 拿 Fable 5 干 Sonnet 4.6 就能干的活。 文档更新、简单重构、lint 修复。按复杂度路由;把 Fable 5 留给编排者角色。
  • 在笔记本上跑长会话。 按天连续的能力需要云基础设施(CMA 或 Routines)。一台合上的笔记本会杀掉会话。
  • 无视 Mythos 安全边界。 cyber/bio/chem 上的分类器拦截会产出静默回归。显式为兜底架构。
  • 视觉任务上不做视觉验证。 UI、看板、设计还原度——用纯文本 verifier 检查这些,恰好漏掉了那个最要紧的失败模式。
  • 跳过 /goal 或 Outcomes。 没有一个由独立评分者检查的客观停止条件,loop 会停在「处理得差不多」,而不是「完成」。
  • 不审数据留存策略。 敏感数据过一个 Fable 5 routine、却不核对 30 天 / 2 年的条款,会静默地制造合规问题。

结语

Fable 5 不是一个更快的聊天工具。它是一套会复利的系统的底座。

首个公开可用的 Mythos 级模型,发货不是为了被更快地 prompt。它发货,是为了当那套你围着它搭起来的自我改进系统的编排者。 那些标题能力——按天连续会话、子 agent 派活、视觉自检、累积记忆——只有当模型周围那套系统在干活时,才对得起它的定价。

Anthropic 自己的实验把这道鸿沟摆在明面上。Parameter Golf:带独立 verifier 的 Fable 5,探索了更大的架构改动、硬穿过中间的负面结果,拿到约 6× 于 Opus 4.7 的改进。Continual Learning Bench:带记忆的 Fable 5 走完了完整的 5 阶段进阶,验证覆盖 73%,对 Opus 4.7 的 17%。每一组对比里,两半的模型都是同一个。 变的,是它周围那套系统。

从复利栈里挑一层你还没做的——大概率是验证者子 agent(步骤 6)、state 文件(步骤 11),或视觉验证(步骤 13)——明天就加上。然后是下一层。

自我改进,是系统的性质,不是模型的。去把系统搭起来。


译自 @0xCodez《Build self-improving agent system with Fable 5 in 14 steps》。翻译、重排、配图本地化:Yaqin Hei。官方数据(基准表、Parameter Golf、Continual Learning Bench 等)以 Anthropic 官方发布为准。

Subscribe for updates

Get the latest AI engineering posts delivered to your inbox.

评论