Claude Sonnet 5.5 (claude-sonnet-5-5、2026年9月28日リリース) は、Sonnet 5 と同じく、入力トークン100万個あたり2ドル、出力100万個あたり10ドルで、同じトークナイザーを使用します。はるかに強力で、Anthropicによると30%以上高速です。発表されたベンチマークでは、Terminal-Bench 4.0が10.3%から70.6%に、CursorBench 4.0が34.1%から55.5%に、OSWorld 2.1が57.0%から80.1%に上昇しています。問題はAPIにあります。Sonnet 5で動作していた5つのリクエスト形式が400エラーを返すようになり、1つの変更はエラーなしで応答形式を変えてしまいます。評決:アップグレードすべきですが、まずこれら6つの点を修正してください。
以下に、各破壊的変更について、正確なエラーメッセージと変更前/変更後のJSON、そしてチェックリストを示します。仕様については、Claude Sonnet 5.5とはをご覧ください。以前のバージョンアップについては、Claude Sonnet 5 と Sonnet 4.6 の比較をご覧ください。Apidog は、テスト中に古いリクエストと新しいリクエストを並べて保持します。
Sonnet 5 と Sonnet 5.5 の比較概要
| Claude Sonnet 5 | Claude Sonnet 5.5 | |
|---|---|---|
| 100万トークンあたりの料金 (入力 / 出力 / キャッシュ読み取り) | $2 / $10 / $0.20 | $2 / $10 / $0.20 |
| コンテキストと出力 | 1Mコンテキスト | 1Mコンテキスト、128K出力 |
受け入れられる thinking.type |
adaptive, disabled |
adaptive, between_tools |
デフォルトの display |
omitted |
omitted |
| エフォート | low から max |
レベルは同じだが再調整済み。APIデフォルトはhigh |
| キャッシュ可能なプロンプトの最小値 | 1,024トークン | 512トークン |
| メッセージごとのエフォート、会話途中のシステムメッセージ | いいえ | はい |
強制的な tool_choice |
サポートされています | 400エラー |
| Opusスタイルのサイバーセーフガード | いいえ | はい。高リスクのサイバー関連はSonnet 5にフォールバック |
| Thinkingブロック | 会話チェックなし | モデル、会話、アカウントにバインドされる |
| Terminal-Bench 4.0 | 10.3% | 70.6% |
| CursorBench 4.0 | 34.1% | 55.5% |
| FrontierCode 1.1 (メイン) | 42.4% | 46.2% (max), 52.1% (xhigh) |
| GDPval-AA v2.1 (Elo) | 1449 | 1844 |
| OSWorld 2.1 (部分的) | 57.0% | 80.1% |
| HLE (ツール使用時) | 54.9% | 64.5% |
| 廃止 | サイバーフォールバックとして引き続き提供 | 2027年9月28日より前ではない |
AnthropicはTerminal-Bench、HLE、OSWorldを実行しました。CursorはCursorBench、Cognition FrontierCode、Artificial Analysis GDPval-AAを実行しました。Artificial Analysis自身のTerminal-Benchの実行では63.6%対14.1%という結果が出ており、その差は維持されています。FrontierCodeに2つの5.5の数値があるのは、最大設定でレビューサブエージェントをより頻繁に展開し、ベンチマークが範囲外の編集をペナルティの対象とするためです。Claude Sonnet 5.5のベンチマークをご覧ください。
5つの破壊的変更点
Sonnet 5で正常に動作するコードでも、それぞれが400 invalid_request_errorを返します。
1. thinking: disabled は廃止。between_tools を送信してください
Sonnet 5.5 は thinking: {"type": "disabled"} を拒否します。
"thinking.type.disabled" is not supported for this model. Use "thinking.type.between_tools" for the lowest thinking setting, or "thinking.type.adaptive" and "output_config.effort" to control thinking behavior.
最低設定である between_tools を送信してください。これは事前の思考をスキップします。ツール呼び出し間の進行状況メモは thinking ブロックとして引き続き届き、それを変更せずに返します。これは low、medium、high のエフォートレベルでのみ機能し、他のフィールド (`display`、`budget_tokens`、`block_binding` は400エラーを返します) を受け入れず、会話のエフォートを固定します。
// 変更前 (claude-sonnet-5)
{"model": "claude-sonnet-5", "max_tokens": 16000,
"thinking": {"type": "disabled"},
"output_config": {"effort": "xhigh"}}
// 変更後 (claude-sonnet-5-5)
{"model": "claude-sonnet-5-5", "max_tokens": 16000,
"thinking": {"type": "between_tools"},
"output_config": {"effort": "high"}}
xhigh または max が必要な場合は、thinking を省略して適応思考が実行されるようにします。
2. 強制的な tool_choice は400エラーを返します
`any` または `tool` の `tool_choice` は、トークンカウントエンドポイントでも失敗します。
tool_choice: type "tool" and "any" are not supported for this model.
`auto` を送信し、ツールを `strict: true` とマークし (すべてのオブジェクトは `additionalProperties: false` を必要とします)、プロンプトでいつ使用するかを伝えます。モデルはテキストで応答できるようになるため、ツール呼び出しがないターンも処理してください。
// 変更前 (claude-sonnet-5)
"tool_choice": {"type": "tool", "name": "get_weather"}
// 変更後 (claude-sonnet-5-5)
"tools": [{"name": "get_weather",
"input_schema": {"type": "object",
"properties": {"location": {"type": "string"}},
"required": ["location"], "additionalProperties": false},
"strict": true}],
"tool_choice": {"type": "auto"},
"messages": [{"role": "user",
"content": "What's the weather in Paris? Use the get_weather tool."}]
1リクエストあたりの厳密なツールの上限は20です。Amazon Bedrockでは、Sonnet 5.5で厳密なツールは利用できません。`strict`なしで`auto`を送信し、コードで入力を検証してください。
3. Thinkingブロックはモデル、会話、アカウントにバインドされます
各Sonnet 5.5のthinkingブロックは、それ以前のすべて、すなわち`system`、`tools`、および以前のメッセージに対して署名されます。2026年8月31日(00:00 UTC)以降に作成されたアカウントの場合、編集後にブロックをリプレイすると、Claude API、Bedrock、Google Cloudで400エラーが返されます。
messages.1.content.0: Invalid `signature` in `thinking` block. The block is bound to a different conversation. Remove the block, or set `thinking.block_binding.prefix_mismatch_behavior` to "drop_block".
古いアカウントではデフォルトでこれが強制されないため、古いキーでのクリーンな実行は何の証明にもなりません。会話は追加のみとし、会話途中のシステムメッセージで指示やツールを変更してください。編集する必要がある場合は、`anthropic-beta: thinking-binding-controls-2026-08-01` を送信し、不一致のブロックを破棄してください。
"thinking": {"type": "adaptive",
"block_binding": {"prefix_mismatch_behavior": "drop_block"}}
これは適応思考でのみ機能します。`between_tools` の場合、編集されたターンから thinking ブロックを削除してください。Sonnet 5.5はSonnet 5、Opus 4.8、Haiku 4.5以前のブロックを読み取りますが、Opus 5、Opus 5.5、Fable、Mythosのブロック、および別のアカウントからのSonnet 5.5ブロックはリクエストを失敗させることなく破棄します。他のモデルはSonnet 5.5のブロックを読み取りません。Claude Fable 5.1のthinkingの保存をご覧ください。
4. computer_20251124 は Claude API と Google Cloud で失敗します
そこでは、コンピューターの使用に新しいツールセットが必要です。エラーは次のように始まります。
'claude-sonnet-5-5' does not support tool types: computer_20251124.
// 変更前 (claude-sonnet-5)
"tools": [{"type": "computer_20251124", ...}]
// 変更後 (claude-sonnet-5-5, Claude API と Google Cloud)
"tools": [{"type": "computer_toolset_20260801"}]
古いコンピューター使用ベータヘッダーを削除し、メンバー`tool_use`ブロック、バッチアクション、結果の`toolset_name`に対応するようにループを更新してください。Bedrockは引き続き`computer_20251124`を受け入れますが、`computer_20250124`はすべての場所で失敗します。
5. 一部のアドバイザーの組み合わせが拒否されます
アドバイザーツール(ベータ版)を使用する場合、Sonnet 5.5のエグゼキューターはアドバイザーとしてOpus 5、Opus 5.5、Sonnet 5.5、Fable 5、Fable 5.1、Mythos 5、またはMythos 5.1のみを受け入れます。Sonnet 5、Opus 4.8、Opus 4.7のアドバイザーは現在400エラーを返します。アドバイスは`advisor_redacted_result`ブロックとして暗号化されて届くため、アドバイステキストを解析するコードは何も取得できません。
サイレントな変更点:ツール呼び出し間のテキストがthinkingブロックに移動します
この変更では何も失敗しません。Sonnet 5では、ツール呼び出し間のメモは`text`として返されました。Sonnet 5.5では、1〜2文より長いものはすべて進行状況更新の`thinking`ブロックとして届き、デフォルトの`display: "omitted"`では空になります。これらのメモをストリーム表示するエージェントUIは、エラーなしで静かになります。3つの修正方法があります。
- `display: "updates"` (適応思考、ベータヘッダー`thinking-display-updates-2026-08-18`)は更新のみを返します。ヘッダーがない場合、拒否されます。
- `display: "summarized"` は更新と推論の要約を混ぜて返します。
- `between_tools` は`display`なしでテキストを返します。
// ヘッダー: anthropic-beta: thinking-display-updates-2026-08-18
"thinking": {"type": "adaptive", "display": "updates"}
コード変更なしの動作変更
これらはリクエストを失敗させるわけではありませんが、出力とコストを変更します。プロンプトガイドに修正方法が記載されています。
- エフォートが再調整されます。 名前は同じですが、思考の量は異なります。スイープを再実行してください: 適切に指定されたエージェントコーディングには`high`から`medium`、チャットには`medium`または`low`から開始し、計測された改善のために`xhigh`と`max`を確保します。
- リクエスト間でトップレベルの`effort`を変更すると、プロンプトキャッシュが無効になります。 代わりにベータ版のメッセージごとのエフォートを使用してください。
- `medium`以上では、ほぼすべての返信の前に思考します。 エフォートを下げてください。思考を減らすように促すのは信頼できません。
- 長いエージェントタスクでは、`low`および`medium`で早期にチェックインします。
- `xhigh`および`max`では、要求されていないテスト、ドキュメント、ファイル、さらにレビュアーサブエージェントを追加します。Anthropicが提案するプロンプトにより、`max`でのセッションコストが約3分の1削減されました。
- 拒否が増えます。 これはOpusスタイルのサイバーセーフガードを備えた最初のSonnetです。拒否は`stop_reason: "refusal"`と`stop_details`カテゴリを持つHTTP 200です。Claude APIのベータ版サーバーサイドフォールバック (`fallbacks: "default"`) は、Sonnet 5で`cyber`および`frontier_llm`による拒否を再試行します。
- サンプリングパラメーター。 デフォルト以外の`temperature`、`top_p`、または`top_k`は400エラーを返します。AnthropicはこれをSonnet 4.6以前からの変更点として挙げており、すでに対処済みである可能性が高いです。
タスクあたりのコスト:価格は同じだが、結果あたりのコストは低減
Anthropicの発表記事によると、Sonnet 5.5は「前身のモデルよりもタスクあたりのコストが最大30%削減される」とされています。価格は同じであるため、この節約はトークン数とステップ数の削減によるものです。エフォートごとのチャートでは、5.5の低いエフォートがSonnet 5の最高記録を上回っていることが示されています。
| ベンチマーク (Anthropicのチャート) | Sonnet 5.5 | Sonnet 5、最高記録 |
|---|---|---|
| Terminal-Bench 4.0 | mediumで28.8%、$0.83 | maxで10.3%、$11.62 |
| FrontierCode 1.1 | highで49.4%、$0.42 | xhighで42.7%、$10.07 |
| CursorBench 4.0 | lowで35.8%、$0.50 | maxで34.1%、$7.17 |
CursorBenchのコストは、Anthropicが提示価格で推定したものです。その反対に`max`を使用した場合、OfficeChaiによるArtificial Analysisデータの記事によると、Sonnet 5.5の`max`ではインデックス作成タスクあたり約193,000の出力トークンを使用し、タスクあたりのコストはSonnet 5よりも約50%高くなります。節約効果は`high`以下で得られます。Claude Sonnet 5.5の料金をご覧ください。
移行チェックリスト
claude-sonnet-5 を claude-sonnet-5-5 に交換し、Anthropicの移行ガイドから6つのチェックを実行します。
disabledをbetween_toolsに置き換え、エフォートは`high`以下に設定します。- 強制的な `tool_choice` を `auto`、`strict: true`、およびプロンプト行に置き換えます(Bedrockではコード内で検証)。
- 履歴は追記のみとし、変更には会話途中のシステムメッセージを使用します。
- Claude APIとGoogle Cloudでは、コンピューターの使用を`computer_toolset_20260801`に移行します。
- サポートされているアドバイザーを選択し、アドバイステキストの解析を停止します。
- UIがツール呼び出し間のテキストを表示する場合は、`thinking.display`を設定します。
その後、エフォートスイープを再実行します。Claude Codeは移行を自動化できます。
/claude-api migrate this project to claude-sonnet-5-5
Opusの同等品はClaude Opus 5.5 vs Opus 5 の移行です。
Apidogで移行を回帰テストにする
Apidogで、`https://api.anthropic.com/v1/messages` への3つのリクエストを同じ環境の1つのプロジェクトに保存します。

- ベースライン: 現在のSonnet 5の本体。
- 古い本体、新しいモデル: `model`のみ`claude-sonnet-5-5`に変更。ステータス400と`between_tools`または`tool_choice`に言及するエラーメッセージをアサートします。
- 移行済み: 修正された本体。ステータス200と、`refusal`または`max_tokens`ではない`stop_reason`、およびツールリクエストの`tool_use`ブロックをアサートします。
環境に`ANTHROPIC_API_KEY`を保持し、`x-api-key`ヘッダーで`{{ANTHROPIC_API_KEY}}`として参照してください。独自にタスクあたりのコストを算出するために、エフォートレベル間で`usage.output_tokens`を比較します。テストシナリオとして保存しておけば、`disabled`への回帰は本番ではなく実行を失敗させます。リクエストの基本:Claude Sonnet 5.5 APIの使用方法。
よくある質問
- Claude Sonnet 5.5はSonnet 5よりも高価ですか? いいえ。どちらも100万トークンあたり$2/$10で、$0.20のキャッシュ読み取り費用がかかり、トークナイザーも同じです。
- Sonnet 5.5で「thinking.type.disabled is not supported」というエラーが出るのはなぜですか? `disabled`は削除されました。`low`、`medium`、または`high`のエフォートで、他の思考フィールドなしで`thinking: {"type": "between_tools"}`を送信してください。
- Sonnet 5の会話はSonnet 5.5に引き継がれますか? はい。Sonnet 5.5はSonnet 5のthinkingブロックを読み取ります。しかし、元のモデルに戻すとそれらは失われます。他のモデルはSonnet 5.5のブロックを読み取りません。
- すべてをSonnet 5.5に移行すべきですか? ほとんどのワークロードでははい。ただし、Sonnet 5にフォールバックする可能性のあるサイバー関連の作業や、厳密モードが失われるBedrockのツール呼び出しには注意してください。Claude Sonnet 5のガイドでは、以前のモデルについて説明しています。
次のステップ
Sonnet 5のリクエストと、その5.5版を並べて保存し、400エラーを確認して修正し、修正が通過したらトラフィックを移行してください。このテストを構築するには、Apidogをダウンロードしてください。
