我把生产环境里的一个代码审查 Agent 从 Sonnet 4.6 切到了 Sonnet 5。改了模型 ID 那行,跑了几轮,发现几个问题值得一说——不是简单的"换名字就能省钱"。

Claude 6 月底突然发了 Sonnet 5 的 surprise launch,定价砍到 Opus 4.8 的六折,却在 Agent 能力上大幅跃进。今天这篇不吹不黑,只说迁移过程中我看过的数据、改过的代码、踩到的坑。

定价:早鸟价是烟雾弹,标准价才是底牌

先看最直接的。Sonnet 5 的定价表(美元,截自官方 pricing 页):

模型Input ($/M tokens)Output ($/M tokens)
Sonnet 5 (早鸟价至 8/31)$2$10
Sonnet 5 (标准价)$3$15
Opus 4.8$5$25
Fable 5$10$50
Haiku 4.5$1$5

定价对比:Sonnet 5 早鸟价 vs 标准价 vs 竞品

早鸟价到 8 月底截止,之后切回标准价。很多读者看了早鸟价就兴奋——注意,标准价才是长期参考价。按今天汇率(约 7.25),标准价折合输入¥22/百万 tokens,输出¥109/百万 tokens。对比 Opus 4.8 的¥181/百万 tokens(输出),Sonnet 5 便宜约 40%。

但有一个隐藏陷阱:新 tokenizer 导致相同输入多占 1.0-1.35× tokens。早鸟价的定位是 cost-neutral——单价低但 token 数多,实际花销和 Sonnet 4.6 拉平。一旦切到标准价,实际支出高 10%-35%。迁移时别只看改一行 model ID,要重新算总成本。

Benchmark:Agent 能力接近 Opus,但还不是

基准测试Sonnet 5Sonnet 4.6Opus 4.8
SWE-bench Pro63.2%58.1%69.2%
Terminal-Bench 2.180.4%67.0%82.7%

Terminal-Bench 从 67% 跳到 80.4%,差距 13.4 个百分点,比 Sonnet 4.6 到 Opus 4.8 的跳跃还大。SWE-bench 也涨了 5.1 个百分点。在 Agent 类基准上,Sonnet 5 已经摸到了 Opus 4.8 的脚踝——Terminal-Bench 只差 2.3 个百分点。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Anthropic 把原来只给 Opus 用的 Agentic 执行引擎下放了。Sonnet 5 支持多步自主规划,全链路无需人工干预。实际测试中,我让它部署一个 Rust 微服务到服务器(拉代码 -> 编译 -> 配置 nginx -> 启动),中间 network error 一次,它自动重试了三遍,最后检查端口可用才停下。这在 Sonnet 4.6 里大概率会卡在某个步骤要我拍板。

Sonnet 5 Agent 工作流:从用户输入到端到端完成

不过 SWE-bench 还是差 Opus 6 个百分点,复杂代码推理场景仍该选 Opus。Sonnet 5 的定位是价格敏感的 Agent 主力模型,不是旗舰

Agent 能力:三档 effort 与自动自检

Sonnet 5 新增了自适应 effort 级别(低/中/高三档),Claude API 和 Claude Code 默认 high。实际体验:

import anthropic

client = anthropic.Anthropic(api_key="sk-xxx")

response = client.messages.create(
    model="claude-sonnet-5",
    max_tokens=4096,
    thinking={"type": "enabled", "budget_tokens": 2048},  # 显式开启 thinking
    tools=[{
        "name": "search_code",
        "description": "搜索代码库中的函数定义",
        "input_schema": {
            "type": "object",
            "properties": {
                "query": {"type": "string"}
            }
        }
    }],
    messages=[{
        "role": "user",
        "content": "在项目中找到所有使用了废弃 API 的地方,并给出替换建议"
    }]
)

代码改动就这么点。但特别的是:Sonnet 5 完成后会自动检查输出质量,不需要显式要求它"double check"。在 Claude Code 里让它重构一个模块,它改完后自动调用了 diff 确认没语法错误才返回结果。

安全方面,Cyber Safeguards 默认开启(同 Opus 4.8 级别),实时分类器会拦截 prompt injection。官方数据是 0% 完整 exploit 成功率——但注意这是实验室环境,生产环境不能迷信。

迁移三件事:改 model ID、重算成本、调 thinking

迁移实操:改一行,盯三件事

从 Sonnet 4.6 迁移到 Sonnet 5,API 层面的改动就一行:

- model="claude-sonnet-4-20250514"
+ model="claude-sonnet-5"

但有三件事必须盯:

1. token 消耗变化。 新 tokenizer 下中文 token 数会涨,官方说涨幅 1.0-1.35×,建议上限按 1.35 预留。用下面这段代码测一下:

client = anthropic.Anthropic()
tokens = client.count_tokens(open("prompt.txt").read())
print(f"旧: {int(tokens/1.3)} → 新: {tokens}")

2. thinking tokens 预算。 Sonnet 5 默认开启 high effort,思考消耗多。如果你用 Batch API,Sonnet 5 支持 300K max output(需要加 beta header anthropic-beta: max-tokens-3-5-sonnet-2025-06-30),但普通 API 还是 128K。

3. 上下文窗口。 1M context 和 Opus 4.8 一致,但 128K output 是 Sonnet 4.6 的 8 倍(之前是 16K)。这意味着你可以让它生成更大块的代码,不需要分多次调用。

迁移建议:什么场景值得切,什么不值得

值得切的场景:

  • 现有 Agent 工作流(代码生成、自动化部署、数据分析),Sonnet 5 的自主能力会让 pipeline 少崩很多次
  • 对延迟敏感的任务(Sonnet 5 响应比 Sonnet 4.6 快 30%-50%,实测)
  • 预算敏感但需要接近旗舰能力的团队——先切 Sonnet 5,不够再升 Opus

不推荐切的场景:

  • 追求极致准确率(法律文书、金融报告)——还要选 Opus 4.8 或 Mythos 5
  • 超长上下文且对 token 成本敏感的——新 tokenizer 会把成本打回来
  • 已有大量 prompt 工程适配 Sonnet 4.6 风格的项目——虽然 API 兼容,但 thinking 机制改变了输出格式,需要调 prompt

Sonnet 5 能力全景:六大维度对比

总结

Sonnet 5 不是 Opus 的下位替代,而是低价 Agent 路线的信号:Agent 能力不再是旗舰模型的专属。早鸟价窗口里切是零风险套利——多花 20% 的钱换 Terminal-Bench 提升 13 个点,划算。

真正的意思是:如果你的 Agent 还在做单步的问答式调用,Sonnet 5 不会让你瞬间升级到多步自主。但如果你已经在搭 tools/browser/terminal 的 Tool Use 流程,Sonnet 5 的自动自检能把「模型中途撂挑子」盖过去。与其纠结 token 费,不如想想:团队里那个经常需要人工介入的 CI/CD Agent,能省多少个人小时。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐