Claude Sonnet 5与Opus 5实战对比:如何选择合适的模型
对比两款最新Claude模型在真实工作中的表现;核心建议是根据任务复杂度选择,避免一刀切方案。
对比两款最新Claude模型在真实工作中的表现;核心建议是根据任务复杂度选择,避免一刀切方案。
最初发布于 Cosmic 博客。
Anthropic 在 2026 年 6 月 30 日推出了 Claude Sonnet 5,在 7 月 24 日推出了 Claude Opus 5。两者都很优秀。最昂贵的错误是选择其中一个,将其集成到每个代码路径中,然后要么在琐碎工作上过度支付,要么在真正重要的工作上资源不足。
这是实际的分析:每个模型的可量化优势、考虑分词后每个模型完成相同工作的成本,以及一条你本周就能部署的路由规则。
如果只想记住一句话:默认运行 Sonnet 5,在判断质量比吞吐量更重要的特定路径上升级到 Opus 5。
在比较分数之前,有个值得了解的细节。Anthropic 在不同的测试套件上评估了这两个模型,所以没有一个明确的对比表,任何发布对比表的人都是用猜测填补空白。
以下是 Sonnet 5 的实际发布结果:
以下是 Opus 5 的实际发布结果:
注意缺少的是什么:Anthropic 没有为 Opus 5 发布 SWE-bench Verified 数字。所以在经典编码基准上的诚实比较是 Sonnet 5 的 72.7% 对 Opus 4.8 的 79.4%,Opus 5 在较新的智能体和知识工作套件上的位置在 Opus 4.8 之上。将你在其他地方找到的任何"Opus 5 在 SWE-bench 上得分 X%"的说法视为没有来源。
实际的理解:Sonnet 5 在直接编码上缩小了与前一代 Opus 的大部分差距。Opus 5 的优势体现在长期智能体工作、自我验证以及模型必须决定任务是什么的问题中。
每百万 token 的列表价格:
标题数据显示 Opus 5 在标准价格下成本是 Sonnet 5 的 1.67 倍,在推介期间是 2.5 倍。这低估了 Sonnet 5 的实际成本,因为 Sonnet 5 搭载了一个新的分词器,将相同的文本计算为 1.0 倍到 1.35 倍的 token。你按 token 付费,而不是按单词,所以这种膨胀会出现在你的账单上。
我们来看一个具体例子。假设一个基础分词器将一项工作计为 1,000,000 个输入 token 和 200,000 个输出 token:
那个 1.23 倍的行是应该改变你想法的。在标准价格下,分词效果差的文本繁重工作负载上,Opus 5 的成本比 Sonnet 5 多约 23%,而不是 67%。如果该路径上的判断质量有任何重要性,23% 的溢价很容易被证明是合理的。
有两个需要注意的地方,这样你才能诚实地使用这些信息。膨胀范围是 1.0 倍到 1.35 倍,取决于你的内容,而你落在哪里是关于你自己数据的经验性问题。而且 9 月 1 日的价格变化意味着你本月构建的任何成本模型都需要重新审视。通过两个模型运行 1,000 个真实请求,比较你实际计费的 token 数,然后根据你的数字而不是这个表做出决定。
大多数团队不需要一个聪明的分类器。基于任务类型的静态路由捕获了几乎所有的节省:
默认使用 Sonnet 5。 内容生成、聊天、摘要、标签、常规代码更改。
在三种情况下升级到 Opus 5: 任务需要大约十个以上的工具调用,任务是架构性或模糊的,或者错误的答案在反转上代价昂贵。
在重试时升级。 如果 Sonnet 5 的输出验证失败两次,改为在 Opus 5 上重试一次,而不是在 Sonnet 5 上第三次尝试。这是列表中回报率最高的规则,大约需要六行代码。
永远不要硬编码模型名称。 Anthropic 在 25 天内推出了两个前沿模型。你今天固定的任何东西在一个季度内都会过时。
第四点是大多数长期痛点所在。如果你的模型标识符被编译到你的应用程序中,每个模型发布都会变成一个拉取请求、一次审查和一次部署。
将你的路由配置存储为内容。然后将 Sonnet 5 替换为 Sonnet 5.1 就是一个立即生效的字段编辑,无需重建。
npm install @cosmicjs/sdk
在 Cosmic 中将路由表定义为对象,并在运行时读取它:
import { createBucketClient } from '@cosmicjs/sdk';
const cosmic = createBucketClient({
bucketSlug: process.env.COSMIC_BUCKET_SLUG!,
readKey: process.env.COSMIC_READ_KEY!,
});
type ModelRoute = {
default_model: string;
escalation_model: string;
escalate_after_failures: number;
};
export async function getModelRoute(): Promise<ModelRoute> {
const { object } = await cosmic.objects
.findOne({ type: 'model-config', slug: 'production' })
.props('metadata')
.depth(0);
return object.metadata as ModelRoute;
}
在调用网站使用它:
const route = await getModelRoute();
let model = route.default_model; // "claude-sonnet-5"
if (isArchitectural(task) || failures >= route.escalate_after_failures) {
model = route.escalation_model; // "claude-opus-5"
}
const result = await runTask({ model, task });
当下一个模型发布时,非工程师在仪表板中更新一个字段,生产环境会接收它。没有部署,没有拉取请求,没有工程师参与。Cosmic 通过 REST API 和 TypeScript SDK 公开了这一点,所以同样的配置可以从你使用的任何框架或运行时中读取。
对于这个决定的前一代版本,请参阅 Sonnet 4.5 vs Opus 4.5。
Opus 5 比 Sonnet 5 更好吗? 在模糊推理、长期自主智能体运行和自我验证方面,是的。在高容量任务的每个可接受输出的成本上,Sonnet 5 明确获胜。它们是为不同的工作而构建的。
Claude Sonnet 5 的成本是多少? 到 2026 年 8 月 31 日,每百万输入 token 2 美元,每百万输出 token 10 美元,9 月 1 日起分别升至 3 美元和 15 美元。
Claude Opus 5 的成本是多少? 每百万输入 token 5 美元,每百万输出 token 25 美元,与 Opus 4.8 相同。
Anthropic 是否为 Opus 5 发布了 SWE-bench Verified 分数? 否。Sonnet 5 的得分是 72.7%,Opus 4.8 的得分是 79.4%。Opus 5 的已发布结果涵盖 Frontier-Bench、GDPval-AA、Zapier AutomationBench 和 ARC-AGI 3。
我应该使用哪个 Claude 模型进行编码? 大多数日常工作使用 Sonnet 5。对于架构、跨领域重构和任何无法廉价验证结果的工作,升级到 Opus 5。
为什么我的 Sonnet 5 token 计数看起来比预期的高? Sonnet 5 使用新的分词器,将相同的文本计算为比前一代多 1.0 倍到 1.35 倍的 token。比较计费的 token,而不是单词计数。
Anthropic 在不到一个月的时间内推出了两个前沿模型。处理得好的团队是那些从不在源文件中放入模型名称的团队。
Cosmic 是一个由 AI 驱动的无头 CMS,你的内容和配置都位于 REST API 和 TypeScript SDK 后面。模型选择变成了内容决策,可由团队中的任何人编辑,保存时立即在生产中生效。
在免费计划上免费开始,包含 1 个 Bucket、2 个团队成员和 1,000 个 Objects。无需信用卡。如果你想讨论特定的架构,请与我们的 CEO 预订 20 分钟。
如有进一步行动,你可以考虑阻止此人和/或举报滥用。