Anthropic在发布Opus 5.5六天后推出Sonnet 5.5,后者Terminal-Bench 4.0得分70.6%领先前辈,成本降低42%且输出稳定性更好。
Anthropic 在 Opus 5.5 发布六天后推出了 Sonnet 5.5。该公司称其在 Terminal-Bench 4.0 上得分为 70.6%,高于 xhigh 努力程度下 Opus 5.5 的 66.4%。该公司还表示,Sonnet 5.5 生成输出的速度比 Sonnet 5 快 30% 以上,且每个任务消耗的 token 更少。
Sonnet 的价格为每百万输入 token 2 美元、每百万输出 token 10 美元,仅为 Opus 5.5 的每百万 4 美元和 20 美元的一半。
但每 token 价格减半并不能保证账单也减半。如果模型需要更多 token 才能完成任务,省下的钱就会缩水。Artificial Analysis 的独立测试在最大努力程度下正好发现了这一点:Sonnet 5.5 每个任务成本为 7.67 美元,而 Opus 5.5 为 5.98 美元。我上周的测试表明 Opus 5.5 才是新的性价比模型。Sonnet 5.5 让我重新验证了这一点。
但每 token 价格减半并不能保证账单也减半。
我从来不是 Sonnet 的粉丝。过去我尝试过它,因为它比 Opus 5 便宜,但我总是最终回到 Opus 5,因为当输出不那么出色时,便宜并不是优势。我一开始并不确定 Sonnet 是否有真正的用武之地,所以我用它与 Opus 5.5(我最可能用它取代的模型)进行了对比测试。
我通过 Anthropic API 调用两个模型,使用相同的 prompt、adaptive thinking 和最大努力设置。每个模型我各跑了五次测试以衡量一致性,并对每个 run 进行评分,评分依据是模型从未见过的隐藏测试套件。我记录了每次 run 的 token 数量、按标价计算的成本和耗时。
Agentic bug fix:模型获得一个小型 Python 订单定价仓库,里面植入了四个 bug 和一个 flaky test,外加读取文件、写入文件和运行测试的工具。一组包含 12 个测试的隐藏套件检查修复结果,我同时追踪了 tool calls,因为 Anthropic 引用的早期测试者表示 Sonnet 5.5 需要的 tool calls 更少。
Resolver spec:模型根据两页规格说明为一个虚构的包管理器编写依赖解析器,不运行任何代码。一组包含 120 个测试的隐藏套件对其进行评分。
Concurrency bugs:模型获得一个带有三个竞态条件的 asyncio 作业队列,以及一份描述重复扣费和从未运行的作业的事件报告。它需要修复每个 bug 且不运行代码,八个隐藏测试检查每个修复。
我没有在这里包含 prompt,因为每个测试都依赖于一个对于快速复制/粘贴来说太长的代码仓库、规格说明或模块。
两个模型在全部五次 run 中都修复了所有四个 bug,并通过全部 12 个隐藏测试。两个模型都没有编辑测试文件,且都标记了 flaky test。
Sonnet 5.5 平均耗时 5 分 8 秒,29 次 tool calls,42,608 个输出 token,每次 run 0.70 美元。Opus 5.5 平均耗时 3 分 21 秒,25 次 tool calls,20,625 个输出 token,每次 run 0.75 美元。Sonnet 5.5 使用的 token 是两倍,这几乎抵消了它所有的 per-token 折扣。
Sonnet 5.5 不是一次就完成的。在 agentic 测试中,模型分步骤工作,每一步有 32,000 token 的限制。在我第一次尝试时,Sonnet 5.5 在单一步骤中思考时间过长,以至于在五次 run 中有四次达到了该限制,这些 run 在完成前就停止了。Opus 5.5 在相同的限制下运行,从未接近该限制。我将限制提高到 128,000 并重新运行了四次,它们都通过了。失败的尝试花费了约 1.40 美元,这不在总计中。算上这些,Sonnet 5.5 在这个测试中每次 run 平均约 0.98 美元,高于 Opus 5.5 的 0.75 美元。
Sonnet 5.5 在单一步骤中思考时间过长,以至于在五次 run 中有四次达到了该限制……
Opus 5.5 赢得了这个测试。两个模型都修复了每个 bug,但 Opus 5.5 快了约 35%,且算上 Sonnet 5.5 失败的 run 后,每次 run 的成本更低。
Sonnet 5.5 赢得了这个测试。两个模型在全部五次 run 中都通过了全部 120 个隐藏测试,但 Sonnet 5.5 以更快的速度和更低的成本完成了任务。
Sonnet 5.5 平均耗时 8 分 58 秒,81,097 个输出 token,每次 run 0.82 美元。Opus 5.5 平均耗时 9 分 40 秒,70,687 个输出 token,每次 run 1.42 美元。Sonnet 5.5 多用了 15% 的 token 但成本降低了 42%,且完成得稍快一些。
这个测试最让我惊讶。Sonnet 5.5 在全部五次 run 中修复了全部三个竞态条件并通过了全部八个隐藏测试。Opus 5.5 在三次 run 中与其持平。在另外两次中,它用完了所有 128,000 个输出 token 进行思考,却从未产生答案。
Sonnet 5.5 平均耗时 12 分 13 秒,101,788 个输出 token,每次 run 1.02 美元。Opus 5.5 平均耗时 16 分 43 秒,111,428 个输出 token,每次 run 2.24 美元(包括失败的 run)。
Sonnet 5.5 明显赢得了这个测试。它每次都完美完成,速度更快,成本不到一半。
| 测试(各 5 次 run) | Sonnet 5.5 | Opus 5.5 |
|---|---|---|
| Agentic bug fix | 5/5 完美,5:08,42,608 out,29 tool calls,$0.70 | 5/5 完美,3:21,20,625 out,25 tool calls,$0.75 |
| Resolver spec | 5/5 完美,8:58,81,097 out,$0.82 | 5/5 完美,9:40,70,687 out,$1.42 |
| Concurrency bugs | 5/5 完美,12:13,101,788 out,$1.02 | 3/5 完美,16:43,111,428 out,$2.24 |
| 完美 run | 15 / 15 | 13 / 15 |
| 15 次 run 总耗时 | 2:11:36 | 2:28:39 |
| 15 次 run 总成本 | $12.69 | $22.07 |
Sonnet 5.5 在全部 15 次 run 中都表现完美,而 Opus 5.5 在 13 次中表现完美,其两次失误都在 concurrency 测试中。Sonnet 5.5 成本为 12.69 美元,而 Opus 5.5 为 22.07 美元,低了 42%。算上我重做的四次 run,成本为 14.09 美元,仍比 Opus 5.5 低约 36%。它完成全部 15 次 run 的总体速度也快了 11%。它赢得了 resolver 和 concurrency 测试。Opus 5.5 赢得了 agentic 测试,完成速度约快 35%,而 Sonnet 5.5 使用的 token 是两倍。
这些结果让我很意外。我确实以为 Opus 5.5 会比 Sonnet 5.5 表现得更好。
Artificial Analysis 发现 Sonnet 5.5 在最大努力程度下每个任务成本高于 Opus 5.5,而其 Intelligence Index 得分略低。这在我的测试中没有发生。Sonnet 5.5 是更准确的模型,且即使算上我需要重做的四次 run,其总体成本仍比 Opus 5.5 低约 36%。
半价仍然不等于半账单。Sonnet 5.5 通常需要更多 token 才能完成,所以总体上它便宜了约 36%,而不是 50%。
将 Sonnet 5.5 作为硬编码工作的默认选择。一旦我提高了它的输出限制,它在每次 run 中都表现完美,所以把它设高一点,因为它比 Opus 5.5 每步思考的时间更长。对于 agent 循环,继续使用 Opus 5.5。它完成 agentic 测试的速度约快 35%,且一旦算上 Sonnet 5.5 的失败 run,成本更低。