結論から:Sonnet 5.5 は価目表の一行も動かさず、リクエスト契約を動かした。2026 年 9 月 28 日、Anthropic は Claude Sonnet 5.5(claude-sonnet-5-5)を出した。入出力は $2 / $10 のまま;キャッシュ読みは $0.20 のまま。公式は出力が 30% 以上速く、大半の仕事はおよそ 30% 安いと言う——その節約はタスクあたりの token であり、値札ではない。本番を壊すのは、Sonnet 5 からコピーした旧スイッチである:thinking: {"type": "disabled"} は 400 を返す;tool_choice の any と tool も 400;既定以外の temperature、top_p、top_k も 400。より静かな罠は JSON 抽出だ:ツールなしのリクエストでは、between_tools はモデルが先に考えないことを意味し、Structured Output でも歪む。Anthropic のプロンプトページは、そのケースを “Reasoning tasks with JSON output” に置いている。
本稿は 2026 年 9 月 29 日時点。その日なお有効なモデルページ、What's new、移行ガイドに拠る。本サイトにはすでに Opus 5.5 が tool_choice で JSON を強制できなくなった理由(9 月 24 日)がある。本稿はあの四处の失敗を書き直さない。答えるのは、Sonnet 5 → 5.5 の JSON パイプラインが、その上で何を変えねばならないかだけ。Haiku 5.5 はなお「今後数週間」。本稿はその日付を借りない。
9 月 28 日に出たもの
Claude Sonnet 5.5 は Claude 5.5 家族の第二弾。公式の位置づけは、速度と知性の中間;日常のコーディング、バグ修正、文書と表。ID は Claude API、Google Cloud、Microsoft Foundry、Claude Platform on AWS では claude-sonnet-5-5;Bedrock は anthropic.claude-sonnet-5-5。退役は 2027 年 9 月 28 日より早くない。tokenizer は Sonnet 5 と同じなので、同じテキストは同じ token 数になる。
百万 token あたりの価格:入力 $2、出力 $10、5 分キャッシュ書き $2.50、1 時間キャッシュ書き $4、キャッシュ読み $0.20。バッチは半額。コンテキストは 1M;同期の最大出力は 128K。Message Batches は output-300k-2026-03-24 で 300K まで出る。キャッシュ可能なプロンプトの下限は、Sonnet 5 の 1,024 token から 512 へ下がる。既定の effort は high——Opus 5.5 の既定は medium。effort を省略するとリクエストは high で走る。Sonnet 5 との無言の互換ではない。
発表は Sonnet 5.5 を、Opus 5.5 のより速くより安い補完として置く。本稿はランキングでモデルを選ばない。見るべきは、価目表は動かず、thinking、tool_choice、JSON 抽出の契約が動いたことだ。
五つのハード失敗、表一枚
ドキュメントは、5.5 で 400 になるリクエストをはっきり列挙している。最初の三条は Opus 5.5 と Fable 5.1 と根を共有する。最初の行の代替だけが違う:
| 旧リクエスト(Sonnet 5) | 5.5 では | 代わりに送るもの |
|---|---|---|
thinking: {"type": "disabled"} または enabled に budget_tokens | 400 invalid_request_error、between_tools を指す | 前置の思考を切るなら {"type": "between_tools"};推論が要るなら thinking を省略するか adaptive を送る |
tool_choice: {"type": "any"} または {"type": "tool", "name": "..."} | 400;token 計数エンドポイントも同じ検査をする | auto(または none)に strict: true、または Structured Output |
| system / tools / より前のメッセージを直したあと thinking ブロックを再生する | 2026 年 8 月 31 日以降に作ったアカウントでは既定で 400 | 会話は追記のみ;指示の変更は会話途中の system メッセージで |
Claude API または Google Cloud 上の computer_20251124 | 400 | computer_toolset_20260801;Bedrock は旧ツールをなお受け付ける |
| advisor を Opus 4.8 / 4.7 または Sonnet 5 にしたもの | 400 | 5.5 が受け付ける advisor を使え(Opus 5.5、Fable / Mythos 5.1、または 5.5 自身を含む) |
もう一箇所、リクエストは落とさないが静かになる:ツール呼び出しのあいだの長い注記は、thinking ブロックで来る。既定の display: "omitted" ではテキストは空。それらの文を進捗バーとして流していた UI は黙る。adaptive thinking で進捗が要るなら thinking.display をセットせよ(updates は beta ヘッダが要る)。between_tools は要約テキストを戻すが、この型は display を拒む。
サンプリングはもうつまみではない。既定以外の temperature、top_p、top_k は 400。以前は温度を下げて「JSON を安定」させていたリクエストは、いま Schema を安定させねばならない。
disabled は消えた;between_tools が下限
Sonnet 5 では thinking を disabled で切った。5.5 ではその行は 400 であり、メッセージは between_tools を指す。最低設定はこう見える:
{
"model": "claude-sonnet-5-5",
"thinking": { "type": "between_tools" },
"output_config": { "effort": "high" }
}
between_tools に beta ヘッダは要らず、モデルを出すすべてのプラットフォームが受け付ける。切るのは前置の思考だけ。ツール呼び出しのあいだの長い進捗は、なお thinking ブロックで戻る。手を入れずにそのまま返せ;モデルが得るのは全文であり、要約ではない。ツールなしでは、応答はたいてい text だけ——旧 disabled の形。
制限は厳しい。受け付けるのは low / medium / high。xhigh または max を添えると 400。display、budget_tokens、block_binding を足しても 400。会話途中で output_config.effort を変えるのも 400——ターンごとの effort は adaptive thinking が要る。サーバ側 fallback が Sonnet 5 に落ちたとき、between_tools はそちらの disabled に訳される。
だから 5.5 は thinking を常時フルにはしない。外したのは旧 disabled スイッチだ。スイッチがなくなれば、思考を切りたい人は新しい型を送らねばならない。安定した JSON が要る人は、たいてい切るべきではない——次の節を見よ。
ツールなしの JSON 抽出では thinking を切るな
Anthropic のプロンプトページは、この件に独立した節を置いている:Sonnet 5.5 に、数ステップの計算が要る JSON 題(合計、規則、順位)を出すと、low / medium では先に考えずに答えることが多い。Structured Output があると、見える本文は JSON だけなので、計算は thinking の中でしか起きない。thinking を飛ばすと精度が落ちる。
公式の順は:
- できるなら Structured Output を使え。本文は Schema に合うオブジェクトになる。チャットの散文を
JSON.parseするな。Structured Output とは何か を見よ。 - adaptive thinking を使え、
between_toolsではない。ツールなしのリクエストでは、between_toolsは先に考えないことを意味する。プロンプトに「答える前に考えよ」と書いても、そこでは効かない。「答え、それから JSON」を二回のリクエストに分けると、テストではスコアが良く、遅延と token が高すぎて既定にはできない。 - システムプロンプトの末尾に
Think the problem through before you answer.を置け。highでは精度がxhighに近づき、出力 token の増分は小さい。low/mediumでも上がるが、token はより食う。 max_tokensに thinking の余地を残せ。Structured Output をlow/mediumにすると、モデルはたまに上限まで考える。stop_reasonがmax_tokensの応答は、本文が合法 JSON でも失敗として扱い、再試行せよ。
Structured Output がないと、モデルはしばしば散文で計算し、JSON を最後に置く。返信全体をパースすると失敗する。公式のフォールバック:text ブロックだけを読み、各 { または [ からパースを試し、最後の完全な値を残せ。最初の { から最後の } までの区間を取るな——途中に下書きが挟まることがある。JSON.parse が失敗する理由 を見よ。これはフォールバックであり、契約ではない。
強制ツールは 400、Opus 5.5 と同じ
5.5 家族は同じエラーを共有する:
tool_choice: type "tool" and "any" are not supported for this model.
代替はなお:tool_choice は auto のまま、ツールに strict: true を付け、パラメータを JSON Schema で固定する。最終返答は Structured Output へ置け。散文で答えずツールを呼んでほしいなら、いつそのツールが当てはまるかをプロンプトに書け。プロンプトは auto がどのツールを選ぶかに影響する。Schema の代わりにはならない。長い版は Opus 5.5 が tool_choice で JSON を強制できなくなった理由 と Tool Calling が JSON Schema に依存する理由 にある。
5.5 は許容を一つ足す:たまにツールを誤った大文字小文字で呼ぶか、パラメータ名が少し違う。致命傷にするな。一意に当たるなら受け、そうでなければ is_error: true を返し正確な名前を書け。Schema は厳しく保て。名前の照合は一段階緩めてよい。
価目表は動かない;既定 effort は high
表示価格は Sonnet 5 と同じ。公式の「およそ 30% 安い」はタスクあたりの token 減であり、メニューではない。独立した記事はすでに裏を見せている:タスクが出力を自分で制限しないと、新モデルのほうが高くなり得る。ルーティングを変える前に、同じ Schema で抽出を一通り回せ。
effort の段階は再較正されている。同じ high でも、考える量は Sonnet 5 と同じではない。公式は日常を high から;仕様のはっきりした Agent コーディングとツールループを medium から;チャットと遅延に敏感な仕事を medium または low から始める。トップレベルの effort を変えると prompt cache が壊れる。ターンごとの変更は、adaptive thinking 下の per-message effort(beta)が要る。between_tools は会話途中で effort を動かさない。
Opus 5.5 と既定値を混ぜるな:あちらは既定 medium;Sonnet 5.5 は既定 high。モデル文字列だけ替えると、請求も遅延も跳ねる。thinking ブロックも自由には渡らない。5.5 は Sonnet 5、Opus 4.8、Haiku 4.5、およびそれ以前のブロックを読める。Opus 5、Opus 5.5、Fable、Mythos は読まない。他のモデルも Sonnet 5.5 のブロックを読まない。会話を Opus 5.5 から Sonnet 5.5 へ移すと、API は推論を落とす。リクエストはなお 200;落ちたブロックは課金されない。
温度、キャッシュ、コンピュータツール、advisor
既定以外の temperature / top_p / top_k は 400。サンプリングで「JSON を締めていた」パイプラインは、いま Schema を締めねばならない。キャッシュの下限は 512 token なので、短いシステムプロンプトは当たりやすい。トップレベルの effort を変えると、そのキャッシュはなお無効になる。
Claude API と Google Cloud では、コンピュータツールは computer_toolset_20260801 だけを受け付ける。Bedrock はなお computer_20251124 を受け付ける。advisor(beta)は、5.5 の実行役に Opus 4.8 / 4.7 または Sonnet 5 を組ませない。5.5 が受け付ける advisor は、暗号化された advisor_redacted_result を返す;クライアントは助言本文を読めない。
会話の途中でツール Schema を変えるなら、inline-tools-2026-09-15 は会話途中の system メッセージに完全な定義を載せられる。トップレベルの tools 配列は直さない。これは prefix 束縛の thinking と同じ規則である:履歴は追記する。compaction(compact-2026-09-04)は thinking を有効なまま、署名付き要約ブロックへ差し替えられる。条件は Anthropic の Compaction ページを見よ。
モデル文字列を変える前に確かめる五件
thinkingを探せ。disabledとbudget_tokensを消せ。前置の思考を切るならbetween_toolsを送れ、effort はhigh以下。JSON の推論タスクは adaptive thinking を使え。tool_choiceを探せ。any/ 名指しのtoolはすべてautoに替えよ。strictを開き、input_schemaを締めよ。temperature/top_p/top_kを探せ。既定以外は消せ。JSON の安定は Schema で、サンプリングではない。effortを明示せよ。既定の high を継承するな。Opus 5.5 と経路を共有するなら、既定値は二つある。- 再生とキャッシュ。8 月 31 日以降のアカウントでは、履歴の tools / system を直すな。Opus 5.5 から来るなら、thinking が落とされる前提で置け。
ローカル JSON ツールで Schema を見る
モデルを claude-sonnet-5-5 にする前に、ブラウザで三つのテキストを広げよ:古い input_schema、disabled または強制 tool_choice で取っていた arguments 一通、Structured Output に載せる予定の Schema。
- JSONバリデーター — 文法が合法か;Schema があれば必須と余分なキーを合わせて見る。
- JSONフォーマッター — 一行に潰したツール定義を展開し、
additionalPropertiesが書いてあるかを見る。 - JSON Diff — 「thinking を切ったときのサンプル」と「strict Schema が許す最小オブジェクト」を比べる。
データはブラウザを出ない。契約が安定してから、モデル文字列を変えよ。5.5 は effort を変え、disabled と旧 tool_choice を拒む。フィールド名と required は一緒に緩めてはならない。
FAQ
model を claude-sonnet-5-5 に変えるだけで出せるか?
既定としてはできない。リクエストになお thinking.disabled、budget_tokens、tool_choice の any/tool、既定以外の温度、または Claude API 上の computer_20251124 があれば 400 になる。
between_tools は新しい disabled か?
ツールなしのときだけ、そう見える。ツールがあると、進捗はなお thinking ブロックで来る。display / budget_tokens / 会話途中の effort 変更を拒み、xhigh や max とは組めない。JSON の推論タスクには使うな。
価目表が動かないなら、請求はなぜ動くか?
既定 effort は high であり、段階は再較正されている。公式の 30% 節約はタスクあたりの token であり、値札ではない。タスクが出力を制限しないと、独立した測定ではより高い請求が出ている。同じ Schema を自分で回せ。
9 月 22 日の Opus 5.5 と同じことか?
強制ツール、束縛された thinking ブロック、旧コンピュータツールは根を共有する。Sonnet 5.5 が足すのは disabled→between_tools、既定 effort high、温度の固定、advisor の組み合わせ、および「ツールなし JSON では thinking を切るな」。二本の線は分けて移せ。
Structured Output なしで、どうやって JSON を集めるか?
text ブロックだけを読み、最後の完全な JSON 値をパースせよ。返信全体をパースするな。stop_reason が max_tokens なら再試行せよ。これはフォールバックだ。できるなら Schema を置け。
Haiku 5.5 は出たか?
2026 年 9 月 29 日時点、公式はなお「今後数週間」。まだ出ていない段階に、この breaking change を先に割り当てるな。
まとめ
Sonnet 5.5 は価目表を押さえ、disabled を 400 に変えた。Sonnet 5 のリクエストをコピーすると、thinking、tool_choice、温度の三箇所でハード失敗する。前置の思考を切るなら between_tools を送れ。安定した JSON が要るなら、adaptive thinking に Structured Output、または auto に strict と JSON Schema。ツールなしの推論タスクで thinking を切ると、公式はすでに精度が落ちると測っている。
先にローカル検証で Schema、サンプル arguments、strict 契約を平らに見てから、claude-sonnet-5-5 へ切り替えよ。値札はそのままでよい。フィールド契約は一緒に緩めてはならない。