大家都会发布的层级比较,是一张 token 价格表。但决策并不取决于 token 价格。它取决于每个已完成任务的成本——某个层级每个 token 的价格是五倍,但一次尝试就能完成,而另一个层级需要三次,那么前者并没有贵五倍。
因此,本页面提供的是算术结果,而不是结论;计算使用实时目录费率,并展示所有输入。它产生的数字不是价格,而是尝试次数:更便宜的层级必须差到什么程度,才会不再便宜。
费率
| 层级 | Kunavo,每 1M 输入 / 输出 | Anthropic 标价 | 每个代理步骤 |
|---|---|---|---|
| Claude Haiku 4.5 | $0.70 / $3.50 | $1.00 / $5.00 | $0.022 |
| Claude Sonnet 5 | $1.40 / $7.00 | $2.00 / $10.00 | $0.043 |
| Claude Opus 5 | $3.50 / $17.50 | $5.00 / $25.00 | $0.109 |
费率在页面渲染时从目录读取,并与 Anthropic 自己的标价一同显示,因此两部分都可以核验。本页面没有任何手动输入的数字。
真正决定结果的算术
# Cost per finished task, not cost per million tokens.
#
# task_cost = step_cost x steps x attempts
#
# A step here is 25,000 input + 1,200 output tokens —
# one agentic round trip, sized the same way every cost page on
# this site sizes it.
#
# Claude Haiku 4.5 $0.022 / step
# Claude Sonnet 5 $0.043 / step
# Claude Opus 5 $0.109 / step
#
# So the break-even is an ATTEMPT COUNT, not a price:
#
# Claude Haiku 4.5 stops being cheaper than Claude Sonnet 5
# once it needs 2.0x the attempts.
#
# Claude Sonnet 5 stops being cheaper than Claude Opus 5
# once it needs 2.5x the attempts.
#
# That is the whole decision. Everything else is judgement about
# how many attempts YOUR tasks take on each tier.将两个盈亏平衡点理解为关于你自己工作的提问,而不是建议。如果更便宜的层级能够一次完成任务,它会大幅胜出。如果它需要第二次和第三次处理——更糟的是,错误答案带来的是一次人工审核周期,而不仅仅是一次重试——它很快就不再占优。
这个模型刻意省略了两件事,因为假装包含它们是不诚实的。它不计算你的时间成本:重试会消耗一个步骤,阅读错误答案会消耗一个人的时间。它也不包含这些层级在你的任务上的实测质量差异,因为这取决于具体工作负载,而我们尚未对你的工作负载进行基准测试。两者都会将结果推向更强的层级,因此应将这些算术视为支持 Sonnet 或 Opus 的最低依据,而不是全部依据。
为什么分工胜过二选一
将问题表述为“选哪个模型”本身就是错误。真实工作负载是混合的:同一个编码会话中既有架构决策,也有提交消息;为提交消息支付 Opus 费率,就像要求 Haiku 设计 schema 一样浪费。
# The HAIKU line is required on Kunavo: unpinned, the haiku alias asks for an
# id Kunavo does not serve (Haiku 5.5 from v2.1.293), so /model haiku and
# haiku subagents 404. It also sends Claude Code's own background calls to
# Haiku instead of the main model.
export ANTHROPIC_MODEL=claude-sonnet-5
# The sonnet alias asks for Sonnet 5.5, which Kunavo does not serve:
# unpinned, /model sonnet, opusplan's execution phase and sonnet
# subagents 404.
export ANTHROPIC_DEFAULT_SONNET_MODEL=claude-sonnet-5
export ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-haiku-4-5
# Same idea in any client with a per-role model field: strong model
# for the work, cheapest model for the housekeeping.在 Claude Code 中,通过 Kunavo 使用时,Haiku 映射不能省略:haiku别名会请求 Kunavo 未提供的模型 ID(v2.1.293 起为 Haiku 5.5),因此如果没有这项设置,/model haiku和设为 haiku 的子代理都会返回 404。它还负责 Claude Code 自行发起的后台调用;否则这些调用会使用你的主模型。任何支持按角色设置模型的客户端也都可以采用同样的做法;CC Switch提供了明确的 Sonnet / Opus / Haiku 映射,Continue则为每个角色提供一项设置。
运行实验
尝试次数是唯一未知数,而且由于这些层级共享请求格式,因此测量成本很低:在两个层级上运行相同的十项任务,统计需要第二次处理的任务数量,然后进行乘法计算。在 Kunavo 上,它们还共享同一个密钥和基础 URL,因此实验只需修改环境变量,不需要第二个账户。
将你自己的 token 数量填入Claude token 成本计算器,包括缓存比例;在代理型工作负载中,缓存通常占输入的大部分,并会改变此处的每个数字。完整费率表见Claude API 定价页面,订阅与按 token 付费的区别见Claude Pro 和 Max 限额。
常见问题
Claude Opus、Sonnet 和 Haiku 有什么区别?
它们是同一模型系列的三个能力层级,并相应定价。Haiku 是小型、快速且最便宜的层级;Sonnet 是均衡的默认选择;Opus 是规模最大、能力最强的层级。按 Kunavo 每 1M token 的费率,Claude Haiku 4.5 为 $0.70 / $3.50,Claude Sonnet 5 为 $1.40 / $7.00,而 Claude Opus 5 为 $3.50 / $17.50。这些层级在 API 层面可以互换——同一个请求适用于其中任意一个,因此切换只需更换模型 ID,而不是进行迁移。
Claude Opus 比 Sonnet 贵,值得吗?
只有在任务在 Sonnet 上失败时才值得这样做。更有用的思考方式是比较尝试次数,而不是价格比例:按照本页面使用的步骤规模,Claude Opus 5 的成本约为 Claude Sonnet 5 步骤的 2.5 倍,因此只要 Sonnet 需要超过该次数的尝试才能正确完成同一任务,Opus 的总成本就更低。对于常规编辑和定义明确的变更,Sonnet 通常一次即可完成,而 Opus 只会更贵;对于含糊不清、架构层面的工作,较低价层级所需的尝试次数会快速增加,价格比例也会反转。
Claude Haiku 可以替代 Sonnet 吗?
对于有明确边界的机械性工作——分类、提取、总结差异、编写提交消息——Haiku 通常已经足够,而且价格差距足够大,因此它应当成为此类任务的默认选择。盈亏平衡点的形式相同:当 Claude Haiku 4.5 需要约 2.0 倍于 Claude Sonnet 5 的尝试次数时,它就不再是更便宜的选择。它通常会在需要同时维持多项约束的任务上失利,因为这时一次重试不只意味着重试——还意味着人要阅读错误答案。
哪个 Claude 模型最适合编程且价格最低?
按 token 计算,Haiku 最便宜;按完成一个功能计算,通常采用分工更省:让高性能档负责编辑,让 Haiku 负责边界明确的子任务。在 Claude Code 中,Haiku 映射还决定 /model haiku 和指定 haiku 的子代理所使用的模型,因此通过 Kunavo 使用时必须设置——否则 haiku 别名会请求 Kunavo 未提供的模型 ID 并返回 404——而且它会将 Claude Code 自行发起的后台调用从主模型转移出去。切换主模型才是你会明显感受到的质量选择。
如何根据自己的工作负载比较 Claude 模型的成本?
计算总成本,不要只比较单价。使用 API 响应已经返回的 usage 对象,获取每个请求的实际输入和输出 token 数量,乘以各层级的费率,再乘以每个层级在你的任务上实际需要的尝试次数。最后这个因素才是决定性因素,而任何价目表都不会包含它。本网站的 Claude token 成本计算器会完成前两步,并提供缓存 token 字段;这很重要,因为在代理型工作负载中,大部分输入都会重复。
我可以在 Claude 层级之间切换而不修改代码吗?
可以——这些层级共享同一种请求格式,因此只需更改模型 ID 字符串。在 Kunavo 上,它们还共享同一个密钥和基础 URL,因此将工作负载从 Sonnet 移到 Haiku,只需修改环境变量,不需要第二个账户、第二种计费关系或第二套凭据。这使本页面上的尝试次数实验足够便宜,能够真正运行。