Wink Pings

Anthropic的Claude选型指南,核心建议是先别急着换模型

Anthropic发布了一份Claude模型选型指南,覆盖Fable 5.2、Opus 5.5、Sonnet 5.5和Haiku 5.5。核心结论有点反常识:大多数工作应该从Opus 5.5的medium effort开始,调effort档位比换模型更精细。同时,子代理该塞小模型,混合搭配比单押一个模型更省钱。

Anthropic的开发者账号发了一份Claude模型选型指南,作者是Addy Osmani。开篇就给结论:大多数工作从Opus 5.5的默认medium effort开始。Claude Code默认用它不是没道理,输入输出价格是Fable 5.2的一半。

但这份指南真正值得看的部分,是关于effort档位和模型搭配的讨论。

四个模型,价格差八倍

当前Claude产品线有四个正式可用模型:Haiku 5.5、Sonnet 5.5、Opus 5.5和Fable 5.2。Mythos 5.2是网络安全和生命科学方向的专用模型,走验证项目申请。

价格差距很大。按API标价,每百万token输入输出:

模型输入输出缓存读取
Haiku 5.5(≤100K)$0.10$0.50$0.01
Haiku 5.5(>100K)$0.50$2.50$0.05
Sonnet 5.5$2$10$0.10
Opus 5.5$4$20$0.20
Fable 5.2$8$40$0.20

四个模型的上下文窗口都是1M token,最大输出128K。Haiku 5.5是唯一按prompt长度分档计价的,超过100K token的prompt单价翻五倍。所以它最划算的场景是短prompt、高频调用。

FIG A展示的是同一张小巷照片,由四个模型分别写Python代码调用绘图引擎渲染出来。从第一层到完成,细节差异肉眼可见。但Addy没在文章里给这组图下优劣判断,只是放在那里。

四模型渲染对比

effort档位比换模型更精细

指南里反复强调的一点:在换模型之前,先试试调整effort。

effort是比模型选择更细的旋钮,同时影响成本和能力。超过high之后,再升一档的成本可能赶上换更大的模型。反过来,降一档也可能拿到你需要的效果,价格还更低。

这里有个具体数字:在SWE-bench Pro上,Opus 5.5的medium比high低约2.5分,成本只要约70%。low比high低约8分,成本约三分之一。xhigh比high高约1.4分,成本却是2.5倍。

所以路线大致是这样:先确认模型能自己验证工作,有测试、构建脚本或接口调用;不行就升一档effort;还不行再换更大的模型,但从更低的effort开始。

如果任务结果可以自动检查,官方建议可以全部跑在低effort,只把失败的重新跑高effort。SWE-bench Pro子集上的数字:Opus 5.5 low加重跑失败项,通过率约97%,每任务$0.17;全部high是95.3%,每任务$0.29。

FIG B是四个模型各建一个作品集网站并排展示,FIG C是Fable 5.2渲染游戏引擎世界,从线框到光线追踪共十六种风格。这些图放在文章里,比单看benchmark百分比直观。

四模型建站对比

Fable 5.2渲染游戏引擎

一个容易忽略的成本项:缓存和上下文

每一轮对话都会重新发送上下文,但长跑任务里大部分输入按缓存读取计费。Opus 5.5缓存读取每百万token $0.20,Sonnet 5.5是$0.10,Fable 5.2和Opus一样是$0.20。

这说明一件事:主模型越大,主上下文越要瘦。把决策留给贵模型,让便宜子代理去读日志、搜文件、做摘要。

Haiku 5.5在这件事上有天然优势。短prompt下它的输入价格是Sonnet 5.5的二十分之一。但如果每次调用都带长prompt,就得按完成任务的成本来比,不能只看标价。

FIG D展示了一个项目里四个模型分工:Fable 5.2把网店从JavaScript迁到TypeScript,Opus 5.5搭月度订阅,Sonnet 5.5写产品页,Haiku 5.5分类客户消息。

四模型分工

子代理该塞小模型,但有个坑

指南建议把子代理放在Haiku 5.5或Sonnet 5.5上,只做那种错了也容易发现的工作:找文件、跑测试、读日志。代码编辑和判断留给主模型。

在Claude Code里,可以在子代理定义里写model: haiku,或者用CLAUDE_CODE_SUBAGENT_MODEL环境变量设默认值。

但有个变化值得注意。有网友在回复里指出,当前版本的Claude Code内置Explore子代理跑在会话模型上,不再固定用Haiku。想省钱的话,可以自己定义一个叫Explore的子代理,锁定model: haiku。

FIG E是个地图demo:Opus 5.5做规划,多个Haiku 5.5子代理并行画图层,包括海拔、自行车道、雾和温度。温度是示意值,雾是印象不是预报。

Opus规划加Haiku子代理画地图

切换模型前要检查兼容性

模型选择不总是改个名字就完事。指南列了几个迁移时要测的点。

Fable 5.2把preserved thinking扩展到所有API账户。thinking块之前的任何内容变了,包括system prompt、工具或更早的消息,API会返回400错误,除非你选择丢弃受影响的thinking。

强制工具调用也有变化。tool_choice设为any或tool,在Sonnet 5.5、Opus 5.5和Fable 5.2上会返回400。得改成auto,把工具标为strict: true,在prompt里写清楚什么时候用。

还有thinking块兼容性的问题。不同模型能读的thinking块不一样。Opus 5.5能读Sonnet和Haiku的,Fable 5.2能读Opus、Sonnet和Haiku的。往下一级换模型,之前的推理块会丢。

如果一套系统跑多个模型,指南建议每个请求都按最严格的模型来构造:历史保持append-only,tool_choice用auto配strict工具,按type读content block。这样上下换模型不需要改代码。

在自己的任务上测,别只看benchmark

指南最后给了一套测量流程:从真实任务里抽样,给每个任务写结果检查,每个候选模型跑两三个effort档位,每个跑在独立session里避免共享缓存,记录每个完成任务的成本,画分数对花费的图。多模型方案只有在图上赢过所有单模型点时才值得保留。

Claude Code里有个快速办法:用/model把同一个任务跑两个模型,对比/usage的数字。

评论区里有几条吐槽值得放在这里。有网友说,模型能力一直在变,这份指南能不能撑过一个月不好说。也有人提到,effort那节最该先读,很多成本抱怨来自日常任务开了Max effort。还有人开玩笑说,要用Fable 5.2改按钮颜色。

指南原文在claude.dev,作者Addy Osmani。里面还链到Sonnet 5.5和Opus 5.5的单独指南,以及effort和子代理的文档。

发布时间: 2026-11-10 06:33