Claude Sonnet 5 对比 Sonnet 4.6
替换模型 id 是就地即可完成的——但三项破坏性变更和一个新分词器可能让你措手不及。这里精确说明在切换之前,你需要在 API 与中转集成里改动什么。
结论:就地替换模型 id——但请先测试
Claude Sonnet 5(发布于 2026年6月30日)是 Sonnet 4.6 的推荐继任者,以更低价格接近 Opus 4.8 级别的质量。替换模型 id 很简单;真正让你踩坑的是周围的请求约定。
相同的 Messages API、相同的端点、相同的鉴权。把模型 id 从 claude-sonnet-4-6 改成 claude-sonnet-5(Bedrock:anthropic.claude-sonnet-5),大多数请求即可直接工作。上下文窗口默认跃升至 1M token——没有更小的变体可选——最大输出为 128K(通过 output-300k-2026-03-24 batches beta 头可达 300K)。
自适应思考现在默认开启,因此延迟和输出形态会变化;手动的扩展思考配置以及任何非默认的 temperature/top_p/top_k 现在都会返回 HTTP 400;此外新分词器会改变你的 token 计数。先把一小部分流量路由到 Sonnet 5,跑你的评测,再逐步放量。没有强制迁移的截止期给你压力。
规格差异:Sonnet 4.6 对比 Sonnet 5
并排列出真正影响你集成的字段。
| 规格 | Claude Sonnet 4.6 | Claude Sonnet 5 |
|---|---|---|
| 模型 id | claude-sonnet-4-6 | claude-sonnet-5(无日期快照) |
| 上下文窗口 | 标准 Sonnet 4.6 窗口 | 1M token(默认 = 最大) |
| 最大输出 | Sonnet 4.6 输出上限 | 128K(通过 batches beta 头可达 300K) |
| 思考 | 显式配置扩展思考 | 自适应思考默认开启;effort 从 low 到 max(默认 high) |
| 采样参数 | 接受 temperature / top_p / top_k | 非默认值返回 HTTP 400——请省略它们 |
| 价格(输入 / 输出) | 每 MTok $3 / $15 | 至 2026年8月31日为 $2 / $10 促销价,之后为 $3 / $15 |
| 生命周期状态 | 在用(暂定退役时间不早于 2027年2月17日) | 新的推荐默认 |
定价与规格依据 anthropic.com/news/claude-sonnet-5 和 platform.claude.com 文档。知识截止为 2026年1月。促销价为限时价,非永久。
你必须处理的 3 项破坏性变更
这些是请求约定上的差异,可能把一次绿色部署变成一堵 HTTP 400 的墙或意外行为。在生产环境替换模型 id 之前,先把这三项都修好。
Sonnet 5 开箱即自适应推理,因此响应中可能包含你在 4.6 上没有选择开启的思考阶段。这会改变延迟、流式形态和 token 用量。请用 effort 级别来控制——low、medium、high、xhigh、max(默认 high)——而不是手动开关思考。
由于思考默认是自适应的,像在早期模型上那样显式配置手动或扩展思考块现在会返回 HTTP 400。请从你的请求构造器中移除任何显式的思考配置,改为依赖 effort 参数。
与 Opus 4.7 及之后版本完全一样,Sonnet 5 会以 HTTP 400 拒绝非默认的 temperature、top_p 和 top_k。请从载荷中剥除这些字段(或省略它们以保持默认值)。审查那些会自动注入默认 temperature 的 SDK 封装和中转中间件。
新分词器:相同文本多计约 30% 的 token
这是最不显眼的变更,也是最可能冲垮你预算和截断逻辑的一个。
Sonnet 5 搭载了新的分词器。同一段输入字符串编码出的 token 数大约比 Sonnet 4.6 多 30%。你的文本本身没有任何变化——变的是计数方式。这会重新定价每一次请求,并重塑每一个 max_tokens 预算,因此在相同文本上,$2/$10 的促销价最好理解为相对 Sonnet 4.6 的 $3/$15 大致成本持平,而非直接打了 33% 的折扣。
由于输出 token 更密集,固定的 max_tokens 值现在覆盖的生成文本字符更少。如果你为结构化输出设定了 max_tokens 上限,请调高上限,否则你的响应可能在 4.6 能完成的地方中途截断。
相同内容下输入和输出 token 数都上升约 30%,因此实际每次请求的花费高于标价差所暗示的水平。请基于真实流量重跑你的成本模型,而不要假设降价就是纯节省。
不要复用 Sonnet 4.6 的 token 估算。在确定生产限额之前,用 count_tokens 端点针对 Sonnet 5 重新测量提示词、上下文窗口余量和限流预算。
一次 diff 完成迁移
整个迁移通常就是:改模型 id,并删除采样和手动思考字段。这里给出一个最小的前后对照。
{
"model": "claude-sonnet-4-6",
"max_tokens": 4096,
"temperature": 0.7,
"top_p": 0.9,
"messages": [...]
}
{
"model": "claude-sonnet-5",
"max_tokens": 4096,
// omit temperature / top_p / top_k
// adaptive thinking is on by default
"messages": [...]
}
保持相同的端点、请求头和鉴权 token。删除 temperature、top_p 和 top_k(非默认值会 400)。移除任何显式的扩展思考配置;改用 effort 参数。针对新分词器重新核对 max_tokens,以免长输出被截断。在中转上,在中间件里做同样的修改,使其不会重新注入默认 temperature。
Sonnet 4.6 并未退役——没有强制迁移
Claude Sonnet 4.6(claude-sonnet-4-6)仍处于在用状态。Anthropic 列出的暂定退役时间不早于 2027年2月17日,且该日期可能变动。Sonnet 5 是推荐的新默认,但你没有任何截止期压力:可以在生产中保留 4.6,按你自己的节奏验证 5,待评测全绿后再切换。
迁移常见问题
我应该从 Sonnet 4.6 升级到 Sonnet 5 吗?
对大多数工作负载而言,应该——Sonnet 5 以更低标价接近 Opus 4.8 级别的质量,是推荐的继任者。但请把它当作一次代码改动,而非配置切换:替换模型 id 是就地可用的,但自适应思考现在默认开启,且手动扩展思考或非默认的 temperature/top_p/top_k 现在会返回 HTTP 400。先迁移一小部分流量,跑你的评测,再逐步放量。没有强制迁移截止期,所以你可以从容进行。
为什么 Sonnet 5 对相同文本计更多 token?
Sonnet 5 搭载了新的分词器。同一段输入字符串编码出的 token 数大约比 Sonnet 4.6 多 30%。你每次请求的输入和输出 token 数都会上升,你的 max_tokens 预算覆盖的字符更少,而实际每次请求的额度成本高于每 token 原始价差所暗示的水平。这就是为什么在相同文本上,$2/$10 的促销价最好理解为相对 Sonnet 4.6 的 $3/$15 大致成本持平——而非直接打了 33% 的折扣。
我的 temperature、top_p 和 top_k 参数还能用吗?
不能。与 Opus 4.7 及之后版本一样,Sonnet 5 会以 HTTP 400 拒绝非默认的 temperature、top_p 和 top_k——直接省略这些字段即可。显式或手动的扩展思考配置同样会返回 HTTP 400,因为自适应思考默认开启;请用 effort 级别 low / medium / high / xhigh / max(默认 high)来控制推理。在切换模型 id 之前,审查你的请求构造器和中转中间件中是否有硬编码的采样参数。
Sonnet 4.6 会消失吗?
不会。Claude Sonnet 4.6 仍处于在用状态,暂定退役时间不早于 2027年2月17日,且该日期可能变动。Sonnet 5 是推荐的新默认,但没有强制迁移截止期——你可以在生产中继续运行 4.6,同时验证 5。
在 QCode 上迁移到 Claude Sonnet 5
通过同一个 API 和 Claude Code 端点并排运行 Sonnet 5 与 Sonnet 4.6——替换模型 id、对比评测,就绪后再放量。