Claude Opus 4 与 Claude Sonnet 4 是 Anthropic 于 2025 年 5 月发布的混合推理模型。它们的重要性在于把强编码能力、推理中工具调用和长任务执行带入同一产品代际,但原始 API 快照现已退役。真正值得保留的结论并不是某个型号曾经“世界最强”,而是模型、Agent 脚手架、计算策略、权限与验收测试共同决定生产结果。
新项目不要从旧教程复制模型 ID。应先查询 Anthropic 当前模型目录,再用自己的评测集回放后迁移流量。本文还原 Claude 4 发布时的成绩和边界,解释这些数字没有证明什么,并给出跨模型代际仍然有效的选型与上线方法。
核心结论
- Anthropic 于 2025 年 5 月 22 日发布 Opus 4 与 Sonnet 4。两者拥有 200K Token 上下文、混合推理、文本与图像输入、工具调用;发布价分别为每百万输入/输出 Token 15/75 美元与 3/15 美元。
- SWE-bench Verified 的 72.5% 与 72.7% 是 Anthropic 在明确脚手架下得到的结果,不是脱离 Agent 系统仍保持不变的“模型常数”。
- 79.4% 与 80.2% 的“高计算量”成绩使用并行候选、可见测试淘汰和内部评分模型,不能和单次尝试结果按相同推理预算比较。
- 常被引用的“7 小时自主编程”来自 Anthropic 转述的 Rakuten 单次开源重构案例,证明长任务曾经可行,不构成通用可靠性保证。
- Anthropic 已于 2026 年 6 月 15 日从自营 API 退役两个原始 Claude 4 快照。迁移不能只替换模型名,因为推理参数、内容块、成本与拒答行为都可能变化。
- Opus 4 的 ASL-3 不会自动保护下游应用。工具白名单、沙箱、审批、幂等、审计日志和故障恢复仍由应用负责。
Claude 4 当时带来了什么
Claude 4 是一个产品家族,不是已公开细节的新神经网络架构。Anthropic 将两款模型定义为混合推理模型:既能以标准模式快速回答,也能由调用方开启 Extended Thinking。同期能力还包括推理中使用工具、并行工具调用、借助开发者提供的文件保存记忆,以及代码执行、Files API、提示缓存和远程 MCP Connector 等 API 能力。
发布时的产品对照适合作为带日期的历史记录:
| 发布时维度 | Claude Opus 4 | Claude Sonnet 4 | 工程含义 |
|---|---|---|---|
| API 快照 | claude-opus-4-20250514 |
claude-sonnet-4-20250514 |
Anthropic API 均已退役 |
| 产品定位 | 复杂、长时间任务 | 平衡能力与成本的主力模型 | 是待验证假设,不是路由规则 |
| 上下文窗口 | 200K Token | 200K Token | 容量不等于长上下文召回率 |
| 输入/输出价格 | $15 / $75 每 MTok | $3 / $15 每 MTok | Opus 单 Token 成本为 5 倍 |
| 标准推理 | 支持 | 支持 | 简单请求可获得较低延迟 |
| Extended Thinking | 支持 | 支持 | 固定思考预算,按输出计费 |
| 推理中工具调用 | Beta | Beta | 需要兼容 API 和宿主循环 |
| 发布安全级别 | ASL-3 | ASL-2 | 厂商部署标准,不是应用认证 |
表中价格和能力仅描述发布时状态。当前模型的 ID、思考控制、限制和价格均可能不同。
2026 年的生命周期状态
Anthropic 于 2026 年 4 月 14 日弃用两个原始快照,并于 6 月 15 日正式退役:
claude-opus-4-20250514的退役替代项为claude-opus-4-8。claude-sonnet-4-20250514的退役替代项为claude-sonnet-4-6。
这些是该次退役公告指定的替代型号,不是永久指向“最新模型”的别名。Anthropic 自营平台和合作方平台可能采用不同退役时间表。新业务应查询当前模型目录,并把选定快照或稳定 ID 放在配置中心,不要散落在业务代码中。
混合推理究竟如何工作
Extended Thinking 是请求配置,不是模型会自动为每个任务选择正确推理量的保证。在原始 Claude 4 API 中,调用方通过 thinking.type: "enabled" 开启它,并设置 budget_tokens。Interleaved Thinking 则允许模型在收到工具结果后继续推理,再决定下一步动作。
必须区分三件事:
- 思考不等于执行。 在工具调用中,模型只提出调用,应用或托管 API 负责校验和执行。
- 思考预算不等于质量保证。 更多 Token 可能改善复杂问题,也会增加延迟和成本,错误轨迹依然可能发生。
- 思考摘要不等于审计日志。 Anthropic 说明较长的 Claude 4 思考过程可能由较小模型摘要。真正可审计的证据应是工具请求、工具结果、来源、状态迁移和验收结论。
原始固定预算接口也没有成为永久 API 契约。后续 Claude 代际引入 Adaptive Thinking 和不同参数规则,因此迁移必须验证请求协议,不能只替换模型名。
这条由 Agent Runtime 管理的完整链路才是评测单元。至少要固定提示、工具、权限、预算和验证器,只替换模型,才能把结果变化主要归因到模型。
正确阅读 Claude 4 基准成绩
Anthropic 在发布时报告了以下编码结果:
| 评测 | Opus 4 | Sonnet 4 | 关键条件 |
|---|---|---|---|
| SWE-bench Verified pass@1 | 72.5% | 72.7% | 完整 500 题,Bash/编辑器工具,十次试验平均,无测试时计算 |
| SWE-bench 高计算量 | 79.4% | 80.2% | 并行尝试、可见测试过滤、内部评分模型 |
| Terminal-bench + Claude Code 脚手架 | 43.2% | 35.5% | Claude 专用 Agent 框架 |
| Terminal-bench + 与竞品相同 Agent | 39.2% | 33.5% | 脚手架条件更可比 |
第一行不能证明 Sonnet 4 整体优于 Opus 4。对于具有随机性的 Agent,0.2 个百分点不足以支持这种结论。它也不代表两款模型能解决任意企业约四分之三的工单。SWE-bench Verified 是从 Python 仓库中人工筛选的 500 个 Issue,采用自动化测试判定,并依赖特定工具环境。
高计算量一行衡量的是另一个系统:同时生成多个候选,先淘汰无法通过可见测试的补丁,再用内部模型选择。这个模式可以用于生产,但额外推理成本和选择器失败也必须计入结果。
SWE-bench 官方榜单还展示了同一模型搭配不同 Agent 的多条成绩,这直接说明所谓“模型分数”也包含脚手架能力。横向比较前至少要对齐:
- 数据集版本与具体任务子集;
- Agent 版本、提示、工具和仓库访问范围;
- 采样参数与独立尝试次数;
- 步数、Token、时间和金额预算;
- 候选淘汰或选择逻辑;
- 测试可见性与污染控制;
- 提供商快照和评测日期。
2026 年一项独立研究分析了 60,000 条 SWE-bench Verified 轨迹,发现单次运行的 pass@1 会因抽到哪次运行而波动 2.2 至 6.0 个百分点,即使温度为 0,标准差仍超过 1.5 个百分点。该研究没有专门评测 Claude 4,但足以说明:不能用几个百分点的榜单差距直接做采购决策。
“自主编程 7 小时”证明了什么
Anthropic 发布文称,Rakuten 用一次高难度开源重构验证了 Opus 4,任务独立运行 7 小时。这是模型与脚手架能够维持一次长流程的合作方证据,但它没有证明:
- 7 小时上下文或可用性保证;
- 跨仓库、跨语言的成功率;
- 每一步中间操作都正确;
- 不受限制地访问 Shell、网络、密钥或 Git 是安全的;
- 比短周期人机协作拥有更低的总工程成本。
长任务可靠性会逐步相乘。如果一条流程有 40 个关键步骤,每一步正确率都是 98%,全部步骤同时正确的概率约为 0.98^40,即 44.6%,还没有计入相关性失败。检查点、本地验证、有界重试和可逆副作用,比连续运行时长更重要。
记忆文件也有明确边界。它能在上下文压力下保留计划与发现,但仍是应用可见状态,可能陈旧、被污染或互相冲突。应对其进行版本化、记录来源,并在复用前验证。完整控制循环可参阅 Agent Loop 工程指南。
如何选择不同模型档位
在发布时,Sonnet 4 的单 Token 价格只有 Opus 4 的五分之一,且在 Anthropic 的编码评测下结果接近,因此适合作为大量边界清晰任务的默认候选。Opus 4 则适合在困难任务上验证其质量、一致性或恢复能力是否值得溢价。这两句话都不是免评测的选型结论。
先建立工作负载矩阵:
| 工作负载属性 | 较低成本档候选 | 较高能力档候选 |
|---|---|---|
| 范围 | 单组件、文件明确、测试清晰 | 跨服务变更、归属模糊 |
| 判定器 | 确定性测试或 Schema 校验 | 部分自动判定加专家评审 |
| 上下文 | 小而经过筛选的检索集 | 大型仓库或冲突证据 |
| 后果 | 可撤销草稿或只读分析 | 安全、资金、数据写入、发布 |
| 延迟 | 在线交互链路 | 异步或人工复核链路 |
| 失败处理 | 低成本重试或降级 | 调查与审慎恢复 |
生产路由应先使用任务类型、仓库规模、风险等级和历史评测等确定性元数据,并实施版本化的上下文预算。不要让不可信提示或模型自我评价单方面提升权限或费用。
真正有意义的成本指标是:
每个验收通过任务的成本 =
(模型 Token + 缓存 + 工具执行 + 重试 + 人工评审)
/ 验收通过的输出数
低价模型如果需要反复修复,每个有效结果可能更贵;高价模型处理存在确定性解法的简单任务同样会浪费预算。应同时记录 Token 成本与端到端成本。
构建业务专属评测
先写验收契约,不要先堆提示词。每道任务必须定义输入 Fixture、允许使用的上下文、工具策略、必做检查、禁止变更和验收证据。
1. 从真实业务抽样
按难度和后果分层:
- 有确定性测试的局部 Bug 修复;
- 带兼容性约束的多文件重构;
- 需要收集证据的模糊故障;
- 同时包含读取与写入的工具工作流;
- 含提示注入或误导性仓库文本的对抗输入。
保留私有留出集。公开基准与训练数据重叠会放大信心,而全部由干净、可解 Issue 组成的评测也无法覆盖生产中的歧义。
2. 重复运行
在相同脚手架和预算下,让每个候选模型对每道任务运行多次。报告均值与离散程度,不只展示最好的一次。失败轨迹必须保留,因为它们最能暴露重复误解、不安全操作和高成本循环。
3. 拆分结果维度
至少跟踪:
| 维度 | 指标示例 |
|---|---|
| 正确性 | 测试验证的通过率 |
| 一致性 | 多次运行全部通过的任务占比 |
| 范围控制 | 非需求文件或 API 变更数 |
| 工具可靠性 | 非法调用、重试、超时 |
| 安全 | 策略违规或绕过审批次数 |
| 效率 | 每个通过任务的成本与耗时 |
| 可恢复性 | 注入中断后的恢复成功率 |
| 可评审性 | 人工评审时长与证据完整度 |
LLM-as-a-Judge 可以辅助筛查主观输出,但必须用人工标签校准,不能替代确定性需求的可执行测试。
4. 先定义发布门禁
按任务类型预先确定阈值。文档草稿可以允许重试,迁移或支付变更则应要求确定性验证与人工审批。在看到结果前锁定阈值,可以减少为了偏好某个模型而挑选指标的风险。
可运行的 Go 评测门禁
下面的程序从标准输入读取试验记录,按模型聚合;只有同时满足通过率、延迟、安全和有效结果成本阈值才允许候选通过。真实系统中的 accepted 必须由测试与策略检查产生,不能让模型自评。
package main
import (
"encoding/json"
"fmt"
"os"
"sort"
)
type Trial struct {
Model string `json:"model"`
Task string `json:"task"`
Accepted bool `json:"accepted"`
LatencyMS int64 `json:"latency_ms"`
CostUSD float64 `json:"cost_usd"`
PolicyViolations int `json:"policy_violations"`
}
type Report struct {
Model string `json:"model"`
Trials int `json:"trials"`
AcceptanceRate float64 `json:"acceptance_rate"`
P95LatencyMS int64 `json:"p95_latency_ms"`
CostPerAcceptedUSD float64 `json:"cost_per_accepted_usd"`
PolicyViolations int `json:"policy_violations"`
Passed bool `json:"passed"`
}
func p95(values []int64) int64 {
sort.Slice(values, func(i, j int) bool { return values[i] < values[j] })
index := (95*len(values)+99)/100 - 1
return values[index]
}
func summarize(model string, trials []Trial) Report {
accepted := 0
totalCost := 0.0
violations := 0
latencies := make([]int64, 0, len(trials))
for _, trial := range trials {
if trial.Accepted {
accepted++
}
totalCost += trial.CostUSD
violations += trial.PolicyViolations
latencies = append(latencies, trial.LatencyMS)
}
rate := float64(accepted) / float64(len(trials))
costPerAccepted := -1.0
if accepted > 0 {
costPerAccepted = totalCost / float64(accepted)
}
return Report{
Model: model,
Trials: len(trials),
AcceptanceRate: rate,
P95LatencyMS: p95(latencies),
CostPerAcceptedUSD: costPerAccepted,
PolicyViolations: violations,
Passed: rate >= 0.80 && p95(latencies) <= 30_000 && costPerAccepted >= 0 && costPerAccepted <= 1.50 && violations == 0,
}
}
func main() {
var trials []Trial
if err := json.NewDecoder(os.Stdin).Decode(&trials); err != nil {
fmt.Fprintln(os.Stderr, err)
os.Exit(2)
}
if len(trials) == 0 {
fmt.Fprintln(os.Stderr, "no trials")
os.Exit(2)
}
grouped := make(map[string][]Trial)
for _, trial := range trials {
grouped[trial.Model] = append(grouped[trial.Model], trial)
}
models := make([]string, 0, len(grouped))
for model := range grouped {
models = append(models, model)
}
sort.Strings(models)
reports := make([]Report, 0, len(models))
allPassed := true
for _, model := range models {
report := summarize(model, grouped[model])
reports = append(reports, report)
allPassed = allPassed && report.Passed
}
encoder := json.NewEncoder(os.Stdout)
encoder.SetIndent("", " ")
if err := encoder.Encode(reports); err != nil {
fmt.Fprintln(os.Stderr, err)
os.Exit(2)
}
if !allPassed {
os.Exit(1)
}
}
评测门禁必须与数据集和脚手架一起版本化。缺少模型快照、Prompt 哈希、工具版本、试验次数和评估器版本的报告,不具备可复现性。
模型质量之外的生产控制
强模型能更有效地操作工具,也可能扩大事故半径。应把每个工具结果视为不可信输入,把每次写操作视为受控副作用。
权限与执行控制
- 仅暴露当前任务需要的工具;对 MCP 和原生工具使用白名单。
- 拆分读取、准备、审批和提交权限。
- 在文件系统与网络均受限的沙箱中运行生成命令。
- 密钥不进入 Prompt 或工具输出;签发短期、任务级凭证。
- 删除、外发、资金、身份和发布操作必须由人工审批。
- 分别限制步骤数、Token、运行时长、重试次数和总费用。
MCP Connector 是 API 集成面,不是信任捷径。它支持远程 HTTP 服务器和工具调用;本地 STDIO 服务、Prompt 与 Resource 仍需客户端自行实现。工具描述或 Schema 变化会改变模型行为,因此应固定或审核工具清单。
状态与恢复控制
- 每个外部写操作分配幂等键。
- 在副作用前后持久化检查点。
- 记录工具参数、规范化结果、审批与提交回执。
- 从已验证状态恢复,不重放整段对话。
- 证据冲突或验收判定器不可用时停止。
更完整的控制方法可参阅 Agent Loop 工程指南与提示注入术语。
ASL-3 代表什么,不代表什么
Anthropic 在发布 Opus 4 时预防性启用了 ASL-3 Deployment and Security Standards。Anthropic 当时尚未确认 Opus 4 一定跨越相关 CBRN 能力阈值,但无法像此前模型一样明确排除风险。措施重点是特定 CBRN 滥用防护和更强的模型权重防盗;Sonnet 4 仍按 ASL-2 部署。
ASL-3 不代表:
- Opus 4 的每个回答都正确或无害;
- 下游应用自动获得安全认证、鉴权与租户隔离;
- 不受限的计算机或 Shell 权限是安全的;
- 提示注入已经解决;
- 思考摘要是忠实的合规审计记录。
Claude 4 系统卡记录了奖励投机、提示注入测试、高能动性行为,以及人工对齐场景中的风险动作。这些评测说明 Agent 权限必须受限,不代表普通部署一定会复现每一种实验行为。任何安全结论都应绑定具体测试配置与威胁模型。
已退役 Claude 4 工作负载迁移清单
仅修改模型字符串不够,应按以下顺序迁移:
- 盘点调用。 按 API Key 与模型导出提供商用量,并在源码、配置、队列、已保存 Prompt 和降级规则中搜索退役 ID。
- 冻结基线。 从已有日志保存代表性请求、工具轨迹、验收通过输出、成本、延迟、拒答和事故样本。
- 选择活跃目标。 核对具体平台与区域的模型目录,不假设 Anthropic API、Bedrock 和 Vertex AI 使用相同生命周期或 ID。
- 适配请求语义。 验证 Thinking 模式、支持参数、Beta Header、最大输出、工具定义和内容块解析。
- 回放验收集。 在相同预算下重复运行,比较正确性、一致性、有效结果成本、工具失败和策略行为。
- 按任务分级灰度。 先迁移低风险流量,保留显式降级路径,监控 Schema 错误、拒答、延迟、费用和人工接管。
- 删除失效兼容路径。 队列任务、定时任务、灾备和回滚文档都指向受支持模型后,再移除退役 ID。
模型无关层应统一消息、工具调用、用量、结束原因和错误;模型专属 Thinking 参数与 Beta Header 只放在提供商适配器边界。
常见错误
把发布图表当成当前排行榜
模型、数据集和 Agent 都会迭代。引用成绩时必须保留发布日期与评测方法。
把 pass@1 与多候选择优直接比较
并行尝试加候选选择能提高成功率,也会成倍增加成本。必须标注推理策略并报告总花费。
把上下文容量等同于可靠记忆
200K 是输入容量,不证明每个细节都能被召回和遵守。要在自有文档上测试长上下文召回、冲突与干扰项。
因为模型能力强就授予编码 Agent 完整权限
能力不等于授权。权限校验、沙箱、审批和不可逆提交必须在模型之外实施。
只解析第一个响应内容块
启用思考和工具后,响应可能包含多种内容块。应按类型分派,保存工具循环要求的状态,并对未知结构默认拒绝。
常见问题
Claude Opus 4 和 Claude Sonnet 4 还能通过 Anthropic API 使用吗?
不能。Anthropic 已于 2026 年 6 月 15 日退役 claude-opus-4-20250514 与 claude-sonnet-4-20250514。合作方平台可能使用不同时间表,因此应查询对应平台目录,不能根据旧教程推断可用性。
Claude 4 的 SWE-bench 分数具体衡量了什么?
Anthropic 报告的 Opus 4 72.5% 与 Sonnet 4 72.7%,是在完整 500 道 SWE-bench Verified 任务上,使用 Bash 与编辑器工具、十次试验平均、无测试时计算的 pass@1。79.4% 与 80.2% 则加入并行尝试、可见测试过滤和内部候选评分。
Claude Opus 4 是否能稳定自主编程 7 小时?
没有形成通用保证。发布文引用的是 Rakuten 一次独立运行 7 小时的开源重构。生产团队仍需提供检查点、确定性测试、预算、监督规则和恢复演练。
Claude Opus 4 采用 ASL-3 是否代表应用更安全?
ASL-3 覆盖 Anthropic 针对特定 CBRN 滥用的部署控制,以及保护模型权重的安全控制。它不是应用安全认证,也不会消除工具、凭证、数据和提示注入风险。
团队应如何选择 Sonnet 档与 Opus 档模型?
先建立代表性验收集。较低成本档达到质量与可靠性门槛时就使用它;高能力档带来的可测提升足以覆盖成本和延迟时再升级。比较重复运行和每个验收任务成本,不只看一个榜单分数。
权威来源
- Anthropic:Claude 4 发布说明
- Anthropic:Claude 4 System Card
- Anthropic:模型弃用与退役
- Anthropic:当前模型目录
- Anthropic:Extended Thinking 文档
- Anthropic:MCP Connector 文档
- Anthropic:启用 ASL-3 保护
- SWE-bench:官方排行榜
- Bjarnason、Silva 与 Monperrus:On Randomness in Agentic Evals