Claude Media
Claudeモデルの移行ガイド — Opus 5.5・Sonnet 5.5へ移すときのIDとコスト影響

Claudeモデルの移行ガイド — Opus 5.5・Sonnet 5.5へ移すときのIDとコスト影響

Opus 4.x・Opus 5からClaude Opus 5.5 / Sonnet 5.5へ移る手順。model IDの書き換え表、400が返る互換性の変更、トークナイザー増分とコスト、提供終了の期限と検証の進め方をまとめます。

Claudeモデルの移行は、移行元の世代で作業量が決まります。現行のOpusは2026年9月22日に登場したOpus 5.5(claude-opus-5-5)です。現行のSonnetは9月28日に登場したSonnet 5.5(claude-sonnet-5-5)です。自分がどの経路にいるかを最初に確定させ、必要な作業だけを拾う順序でまとめます。移行先を決める前提となるモデル階層と料金の並びは、Claudeとは — モデル・料金・使い方で全体像を確認できます。

移行の経路を先に確定させる

作業量を決めるのは移行先ではなく移行元です。次の表で自分の経路を探すと、読む節が決まります。

移行元移行先必要な作業
Opus 5移行先claude-opus-5-5必要な作業ID差し替え + 400が返る4つの変更 + effortの明示
Opus 4.8 / 4.7移行先claude-opus-5-5必要な作業上記 + thinking既定の確認
Opus 4.6 / 4.5移行先claude-opus-5-5必要な作業上記 + パラメータ3種の除去 + トークン再計測
Sonnet 5移行先claude-sonnet-5-5必要な作業ID差し替え + 400が返る5つの変更 + effortの再スイープ
Sonnet 4.6 / 4.5、Haiku 4.5移行先claude-sonnet-5-5必要な作業400が返る3つの変更(プレフィルはSonnet 4.5とHaiku 4.5のみ)+ thinking既定の確認 + トークン再計測 + Sonnet 5.5の5つの変更
Opus 4.1 / 4.0 / 3系、claude-3-7-sonnet などの終了済みID移行先各系統の最新必要な作業すでにリクエストが失敗する。まずIDを通し、最適化は分けて進める

Opusの行はOpusクラスに留まる想定です。Opus 5は引き続き提供されているので、Opus 5.5の破壊的変更への対応が間に合わない経路はOpus 5に留める選択肢もあります。Fable 5.1へ上げる判断は単価がOpus 5.5の2.5倍になる別の話です。判断を誤らないよう、Claude Fable 5.1の仕様解説とClaudeモデル比較(使い分けと組み合わせ)を先に読むほうが安全です。

model IDの書き換え対応表

Opus 5.5とSonnet 5.5のIDは日付サフィックスを持ちません。旧世代のIDに付いていた -20250514 のような日付を足した形のIDは存在しません。日付なしのIDでも挙動が固定されたスナップショットです。例外がHaiku 4.5で、日付付きの claude-haiku-4-5-20251001 と日付なしのエイリアス claude-haiku-4-5 の両方が通ります。

移行元のID移行先のID
claude-opus-5移行先のIDclaude-opus-5-5
claude-opus-4-8 / claude-opus-4-7移行先のIDclaude-opus-5-5
claude-opus-4-6 / claude-opus-4-5移行先のIDclaude-opus-5-5
claude-opus-4-1 / claude-opus-4-20250514移行先のIDclaude-opus-5-5
claude-sonnet-5 / claude-sonnet-4-6 / claude-sonnet-4-5 / claude-sonnet-4-20250514移行先のIDclaude-sonnet-5-5
claude-3-5-haiku-20241022(終了済み)移行先のIDclaude-haiku-4-5

クラウド経由の場合、同じ移行先でも文字列の形が分かれます。

経由Opus 5.5のID
Claude API / Claude Platform on AWS / Microsoft FoundryOpus 5.5のIDclaude-opus-5-5
Amazon BedrockOpus 5.5のIDanthropic.claude-opus-5-5
Google Cloud(Vertex AI)Opus 5.5のIDclaude-opus-5-5

Bedrockだけが anthropic. を前置きします。Sonnet 5.5も同じ形式で、Bedrockは anthropic.claude-sonnet-5-5、ほかは claude-sonnet-5-5 です。同じリポジトリで両方を叩いている構成では、置換をかける前に呼び出し側のクライアントを見分ける必要があります。Haiku 4.5は日付の付き方まで経由ごとに違います。BedrockのIDは anthropic.claude-haiku-4-5、Google Cloudは claude-haiku-4-5@20251001 です。

提供終了の期限と、すでに終了したモデル

モデルの状態は「現役 / レガシー / 非推奨 / 廃止済み」の4段階で示されます。非推奨になると代替モデルと廃止日が付き、廃止済みのモデルはリクエストが失敗します。廃止予定日の付かないレガシーのモデルは、現役の一種として使い続けられます。公開済みモデルの廃止には、少なくとも60日前の通知があります。エージェント定義やCIにモデルIDを書くときに「固定するかエイリアスに頼るか」で止まり方がどう変わるかはClaudeモデルの引退で自動化が止まる日 — バージョン固定とエイリアスの設計判断で扱っています。

モデル状態廃止予定日 / 終了日
claude-opus-5-5状態現役廃止予定日 / 終了日2027年9月22日より前には終了しない見込み
claude-opus-5状態現役(レガシー)廃止予定日 / 終了日2027年7月24日より前には終了しない見込み
claude-opus-4-8状態現役(レガシー)廃止予定日 / 終了日2027年5月28日より前には終了しない見込み
claude-opus-4-7状態現役(レガシー)廃止予定日 / 終了日2027年4月16日より前には終了しない見込み
claude-opus-4-6状態現役(レガシー)廃止予定日 / 終了日2027年2月5日より前には終了しない見込み
claude-opus-4-5(-20251101)状態現役(レガシー)廃止予定日 / 終了日2026年11月24日より前には終了しない見込み
claude-sonnet-5-5状態現役廃止予定日 / 終了日2027年9月28日より前には終了しない見込み
claude-sonnet-5状態現役(レガシー)廃止予定日 / 終了日2027年6月30日より前には終了しない見込み
claude-sonnet-4-6状態現役(レガシー)廃止予定日 / 終了日2027年2月17日より前には終了しない見込み
claude-sonnet-4-5(-20250929)状態非推奨廃止予定日 / 終了日2026年11月30日(確定)
claude-haiku-4-5(-20251001)状態現役廃止予定日 / 終了日2026年10月15日より前には終了しない見込み
claude-fable-5-1状態現役廃止予定日 / 終了日2027年9月1日より前には終了しない見込み
claude-fable-5状態現役(レガシー)廃止予定日 / 終了日2027年6月9日より前には終了しない見込み
claude-opus-4-1(-20250805)状態終了済み廃止予定日 / 終了日2026年8月5日
claude-sonnet-4-20250514 / claude-opus-4-20250514状態終了済み廃止予定日 / 終了日2026年6月15日
claude-3-7-sonnet-20250219状態終了済み廃止予定日 / 終了日2026年2月19日
claude-3-5-haiku-20241022状態終了済み廃止予定日 / 終了日2026年2月19日
claude-3-haiku-20240307状態終了済み廃止予定日 / 終了日2026年4月20日
claude-3-opus-20240229状態終了済み廃止予定日 / 終了日2026年1月5日

「現役」の廃止予定日は「この日より前には終了しない」という下限の予告で、確定日ではありません。廃止されたモデルの重み保存や退任面談としてAnthropicが約束している内容はClaudeモデル廃止でAnthropicが約束する重み保存と退任面談にまとめています。実際の廃止アナウンスはこれより後になることもあります。これらの日付はAnthropicが直接運用するプラットフォーム(Claude API・Claude Platform on AWS・Microsoft Foundry)向けです。Amazon BedrockとGoogle Cloud(Vertex AI)は提供元が別のスケジュールで廃止日を設定するため、同じモデルでも終了日がずれることがあります。

Opus 4.1からOpus 5.5へは世代がいくつも飛ぶため、後述する破壊的変更をまとめて踏みます。

これから期限が来るモデルは3つあります。

あゆみ

次に期限が来る3モデル

  1. 2026年10月15日Haiku 4.5(下限)

    claude-haiku-4-5-20251001。非推奨の通知は出ていません。

  2. 2026年11月24日Opus 4.5(下限)

    claude-opus-4-5-20251101。

  3. 2026年11月30日Sonnet 4.5(廃止日確定)

    2026年9月30日に非推奨が通知され、代替として claude-sonnet-5-5 が示されました。

廃止通知に添えられる代替モデルは、通知した時点の指定です。Opus 4.1(2026年6月5日通知)とOpus 4(同4月14日)は claude-opus-4-8、Sonnet 4は claude-sonnet-4-6 でした。この記事の移行先表はOpus 5.5とSonnet 5.5に寄せているので、廃止通知の代替と一致しないことがあります。Sonnet 4.5を含め、コード内の旧IDは廃止日の前に洗い出しておきます。

400が返る3つの変更

Opus 4.6以前、またはSonnet 4.6・Sonnet 4.5・Haiku 4.5から移行するなら、次の3つは必ず外します。思考量の指定とサンプリング系はOpus 4.7以降とSonnet 5.5で、プレフィルはOpus 4.6以降とSonnet 4.6以降で400になります。

budget_tokens による思考量の指定

thinking: {"type": "enabled", "budget_tokens": N} は受け付けられません。adaptive thinkingと effort の組み合わせに置き換えます。思考の深さをトークン数で切る発想そのものがなくなり、low / medium / high / xhigh / max の5段階で指定する方式になりました。

# 旧(400 が返る)
thinking = {"type": "enabled", "budget_tokens": 8000}
 
# 新
thinking = {"type": "adaptive"}
output_config = {"effort": "xhigh"}

サンプリング系パラメータ

temperature / top_p / top_k は、既定値以外を指定すると400エラーになります。省略するか既定値のままなら通ります。PythonのSDK(v1.0以降)にはそもそも引数が無く、渡すと TypeError です。エラー文言と回避策はClaude Sonnet 5でtemperature/top_p/top_kが400エラーになる理由にあります。temperature=0 は従来のモデルでも同一出力を保証していなかったと公式が注記しており、決定性のための調整はプロンプトで行うのが公式の案内です。逆に生成の揺らぎを作るために使っていた場合は、プロンプト側で「複数案を出させてから選ばせる」構成に組み替えることになります。

アシスタントターンのプレフィル

messages の末尾を role: "assistant" で埋めて出力の書き出しを固定する手法は使えません。JSON形式を強制していたなら output_config.format の構造化出力へ、前置きを消す目的だったならシステムプロンプトの指示へ移します。会話の途中に少数事例としてアシスタントメッセージを置く用法は、これまでどおり動きます。プレフィルの400はOpus 4.6とSonnet 4.6から始まっているので、この2つからの移行ではすでに対応済みです。新たに当たるのはOpus 4.5以前と、Sonnet 4.5・Haiku 4.5で、この3つはプレフィルを受け付けていました。

このほか thinking.display の既定値が "omitted" になっている点も、Opus 4.6以前からの移行では効きます。思考の要約をUIに出していた場合、そのままだと空文字が流れてきます。{"type": "adaptive", "display": "summarized"} を明示すると要約が返ります。

thinking既定の変化 — Opus 4.8 / 4.7とSonnet 4.x・Haiku 4.5から上げるとき

Opus 4.8やOpus 4.7からOpus 5世代へ上げる場合、上の3つはすでに対応済みのはずです。残るのは thinking の既定の変化です。

thinking を省略したリクエストの挙動が変わりました。Opus 4.8では思考なしで走っていたものが、Opus 5とOpus 5.5ではadaptive thinkingで走ります。max_tokens は思考と応答テキストの合計に掛かる上限なので、思考ゼロを前提に上限を詰めていた経路は応答が途中で切れます。

Sonnetも同じです。Sonnet 5.5は thinking を省略するとadaptive thinkingで走りますが、Sonnet 4.6以前とHaiku 4.5では思考なしでした。既定の display も変わり、Sonnet 4.6以前とHaiku 4.5の "summarized" に対し、Sonnet 5.5は "omitted" です。思考なしで書いたコードは、content[0].text を読む箇所と max_tokens を見直し、thinkingブロックをツール実行のループで変えずに返します。思考なしのまま動かしたいときは、Sonnet 5.5では {"type": "between_tools"} を使います。

Opus 5では thinking: {"type": "disabled"} がeffortがhigh以下のときだけ使え、xhighやmaxと組み合わせると400が返ります。Opus 5.5ではeffortにかかわらず無効化そのものができません(次節)。Opus 5の挙動の詳細はClaude Opus 5の使い方と仕様にまとめてあります。

Opus 5からOpus 5.5への移行 — 400が返る4つの変更

Opus 5.5はOpus 5から1Mトークンのコンテキストと128Kトークンの最大出力を引き継ぎ、単価は$5 / $25から$4 / $20に下がりました。そのかわり、Opus 5で動いていたコードが400を返す変更が4つあります。うち3つはFable 5.1と共通です。

thinkingを無効化できない

thinking: {"type": "disabled"} は400 invalid_request_error になります。thinking を省略するか {"type": "adaptive"} を指定し、深さは effort で調整します。トークン節約のために思考を切っていた経路は、effortを low に下げるのが置き換え先です。

強制ツール呼び出しが使えない

tool_choice の any と tool は400になります。エラー文言は tool_choice: type "tool" and "any" are not supported for this model. です。トークン数を数えるエンドポイントでも同じ検証が走ります。auto に切り替え、strict tool use(ツールの入力スキーマに厳密に合わせる指定)か構造化出力で形を担保し、どのツールを使うかはプロンプトで伝えます。

# 旧(Opus 5 では通るが Opus 5.5 では 400)
client.messages.create(
    model="claude-opus-5",
    max_tokens=1024,
    thinking={"type": "disabled"},
    tools=tools,
    tool_choice={"type": "tool", "name": "get_weather"},
    messages=[{"role": "user", "content": "パリの天気は?"}],
)
 
# 新
client.messages.create(
    model="claude-opus-5-5",
    max_tokens=1024,
    output_config={"effort": "low"},
    tools=[{**tool, "strict": True} for tool in tools],
    tool_choice={"type": "auto"},
    messages=[{
        "role": "user",
        "content": "パリの天気は? get_weather ツールを使って",
    }],
)

thinkingブロックがモデルと会話に紐づく

Opus 5.5はOpus 5以前のOpus・Sonnet・Haikuが生成したthinkingブロックを読めます。Sonnet 5.5のブロックも、Claude APIとGoogle Cloudでは読めます。FableやMythosのものは読めません。逆にClaude API上でOpus 5.5のthinkingブロックを読めるのはFable 5.1とMythos 5.1だけです。読めないブロックはAPIが落として処理を続けるので、リクエストは成功し、落ちた分は課金されません。ルーターやフォールバックでOpus 5.5の会話を他のモデルへ移す構成では、移った先は、Opus 5.5が出した過去のthinkingブロックなしで続きを処理します。

会話の途中で system・tools・過去のメッセージを書き換え、thinkingブロックを送り直したとします。2026年8月31日0時(UTC)以降に作成したアカウントでは、既定で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".

古いアカウントでは、この検査は prefix_mismatch_behavior を指定したリクエストにしか走りません。自分のキーで試してエラーが出なくても、新しいアカウントのキーを使う利用者の環境では400になりえます。prefix_mismatch_behavior を指定するなら、anthropic-beta ヘッダーに thinking-binding-controls-2026-08-01 が必須です。このヘッダーを付けると、古いアカウントでも検査に落ちたブロックがレスポンスに表れます。

対処は2つです。1つ目は、上のベータヘッダーを付けたうえでの "drop_block" の指定で、落ちたブロックとそれ以降のthinkingブロックをAPIが捨てて処理を続けます。課金はされませんが、プロンプトキャッシュは書き換えた位置から作り直しになり、捨てた思考を取り戻そうとしてトークン使用量が増えることがあります。2つ目は会話を追記専用にする方法で、指示やツールの変更は会話途中のシステムメッセージで渡します。Message Batches APIでは、指定のない項目は失敗せず、既定で検査が働くアカウントでは落ちたブロックが捨てられるだけです。バッチの項目を失敗させたいなら "error" を明示します。

computer useの旧ツールが受け付けられない

Claude APIとGoogle Cloudでは、computer_20251124 型のツール定義が400になります。ベータヘッダーを外し、名前や画面サイズを持たない computer_toolset_20260801 を宣言する形に移します。Amazon Bedrockでは computer_20251124 が引き続き動きます。

失敗はしないが形が変わる2点

ツール呼び出しの合間にモデルが書くテキストは、Opus 5では text ブロックでしたが、Opus 5.5では進捗を伝える thinking ブロックとして返ります。既定の thinking.display は "omitted" なので中身は空です。ツール実行中に進捗をストリーム表示しているアプリは、display に "updates"(ベータ)か "summarized" を指定しないと、ツール呼び出しの間ずっと無言になります。

もう1つは既定effortです。Opus 5の high に対し、Opus 5.5は medium です。effortを省略していたリクエストはOpus 5.5で一段浅く考えるので、評価セットで品質を測り直し、必要な経路だけ明示します。同じeffortでもOpus 5.5は1ターンあたりの思考が多く、特にxhighとmaxでは max_tokens に余裕を持たせておく必要があります。

Claude Codeを使っている場合は、v2.1.280以降で /model のOpusと、モデルを指定しないときの既定がOpus 5.5に切り替わっています。v2.1.219〜v2.1.279では、この opus はOpus 5でした。Opus 5のまま固定したいなら claude-opus-5 を明示するか、ANTHROPIC_DEFAULT_OPUS_MODEL で解決先を固定します。含まれる変更はv2.1.280のリリースノート、Opus 5.5の仕様全体はClaude Opus 5.5の解説を参照してください。

Sonnet 5からSonnet 5.5への移行 — 400が返る5つの変更

Sonnet 5.5は単価も、1Mトークンのコンテキストと128Kトークンの最大出力も、トークナイザーもSonnet 5と同じです。IDの差し替えだけで済まないのは次の5点で、仕様の全体はClaude Sonnet 5.5の解説にあります。

  • thinkingの disabled は400になる。 thinking: {"type": "disabled"} は400です。代わりにツール呼び出しの合間だけ考える between_tools を使います。between_tools を受け付けるのはeffortが low / medium / high のときで、xhigh と max では400です。その水準で動かすならthinkingを省略するか adaptive を指定します。
  • 強制ツール呼び出しが使えない。 tool_choice の any と tool は400です。auto に切り替え、strict: true で形を担保し、呼ばせたいツールはプロンプトに書きます。Amazon Bedrockでは、strict tool useを含む構造化出力がSonnet 5.5で使えないため、auto だけで運用します。
  • thinkingブロックが紐づく。Sonnet 5.5はSonnet 5・Opus 4.8・Haiku 4.5以前のブロックを読めます。Opus 5・Opus 5.5・Fable・Mythosのブロックは読めず、読めないものは黙って落とされて課金もされません。履歴を編集するとアカウントによって400になる点はOpus 5.5と同じです。Sonnet 5.5が出したブロックは、出したアカウントか連携アカウントでしか使えず、別のアカウントが送ると落とされます。
  • computer useの旧ツールが400。Claude APIとGoogle Cloudでは computer_20251124 が通らず、computer_toolset_20260801 へ移ります。Bedrockでは computer_20251124 が動きます。Sonnet 4.5・Haiku 4.5・Sonnet 4で使っていた computer_20250124 は、どの経由でも通りません。
  • advisorツールの組み合わせ。Opus 4.8・Opus 4.7・Opus 4.6・Sonnet 5・Sonnet 4.6はadvisorとして400になります。advisorに使えるのはMythos 5.1・Fable 5.1・Mythos 5・Fable 5・Opus 5.5・Opus 5と、Sonnet 5.5自身です。

失敗はしないが形が変わる点もあります。ツール間の1〜2文を超えるテキストは進捗を伝えるthinkingブロックで返り、既定の display: "omitted" では中身が空です。ストリーミング表示のUIが黙るので、between_tools か display の指定で防ぎます。

effortの既定はAPIで high(Sonnet 5と同じ)、Claude Codeとアプリで medium です。水準も再較正されているので、Sonnet 5の設定を持ち越さず、既定の high から始めて評価セットで掃き直します。エージェント型コーディングや多段ツール利用は medium から、チャットなど遅延に敏感な用途は medium か low から始める選択肢もあります。Claude Codeはv2.1.284以降、Anthropic APIの sonnet がSonnet 5.5に解決されます。変更の全体はv2.1.284のリリースノートにあります。

トークナイザーの増分は「どの経路か」で有無が変わる

移行のコスト試算でいちばん誤解されやすいのがここです。新世代のトークナイザーは同じテキストをより多くのトークンに割りますが、増分が発生するのは古い世代から新しい世代へ跨いだときだけです。

移行元移行先同じテキストのトークン数
Opus 4.7 / 4.8 / Opus 5移行先Opus 5.5同じテキストのトークン数ほぼ変わらない(同じトークナイザー)
Opus 4.6以前移行先Opus 5.5同じテキストのトークン数およそ1.0〜1.35倍に増える
Sonnet 5移行先Sonnet 5.5同じテキストのトークン数変わらない(同じトークナイザー)
Sonnet 4.6 / 4.5、Haiku 4.5移行先Sonnet 5.5同じテキストのトークン数およそ30%増える(内容で変動)

新しいトークナイザーはOpus 4.7で導入され、Opus 5.5を含むそれ以降のOpusが同じものを使います。Sonnet 5.5はSonnet 5のトークナイザーを使い、いずれも旧世代より多くのトークンに割ります。

Opus 4.6やSonnet 4.6から上げる構成では、単価の差だけで見積もるとトークンの増分を見落とします。増分の幅は、公式ページ同士で書き方が違います。Opus 5.5の移行ガイドは「およそ1倍〜1.35倍(最大で約35%増、内容で変動)」で、料金ページは4.7以降のモデルについて「同じテキストでおよそ30%多いトークン」とだけ書きます。幅で見積もるなら上限の1.35倍、点で見積もるなら1.3倍です。

倍率を推測せず、実測します。count_tokens は同じ本文を旧モデルと新モデルでそれぞれ1回ずつ叩くだけなので、代表的なプロンプトを数本流せば自分のワークロードでの増分が出ます。

def count(model, text):
    return client.messages.count_tokens(
        model=model,
        messages=[{"role": "user", "content": text}],
    ).input_tokens
 
before = count("claude-opus-4-6", sample)
after = count("claude-opus-5-5", sample)
print(after / before)

トークン数が増えると、影響は請求書だけに留まりません。1Mのコンテキストウィンドウに入る実テキスト量が減り、max_tokens の上限に当たるタイミングが早まり、圧縮を発火させる閾値の意味も変わります。旧モデル基準で詰めた数値は、移行後にひととおり見直す対象です。

コスト影響の全体像

トークナイザー以外にも、実請求を動かす要因が5つあります。

単価は下がります。Opus 4.8とOpus 5は入力$5 / 出力$25、Opus 5.5は入力$4 / 出力$20(いずれも100万トークンあたり)です。キャッシュ読み取りはOpus 5の$0.50(入力の0.1倍)からOpus 5.5の$0.20(入力の0.05倍)へ6割下がりました。キャッシュ書き込みは5分保持が$5、1時間保持が$8です。Sonnet 5.5は入力$2 / 出力$10でSonnet 5から据え置きです。Sonnet 5は当初「2026年8月31日までの導入価格」として発表されていましたが、2026年8月10日に恒久的な標準価格になることが公式発表されました。予定されていた$3 / $15への値上げは撤回されています。Sonnet 4.6($3 / $15)から移行するチームにとっても、単価は下がる方向です。

単価の差がどれだけ効くかを、1日あたり入力100万トークン(うち80万トークンがキャッシュ読み取り)・出力20万トークンのワークロードで机上計算すると次のとおりです。キャッシュ書き込みと思考トークンの変化は含めていません。

モデル計算式1日あたり
Opus 5計算式0.2×$5 + 0.8×$0.50 + 0.2×$251日あたり$6.40
Opus 5.5計算式0.2×$4 + 0.8×$0.20 + 0.2×$201日あたり$4.96

この条件では約22.5%の削減です。Anthropicは既定設定の典型的なワークロードでOpus 5より40%安いと説明しており、Opus 5.5は1タスクあたりのトークン数もOpus 5より少ないとしています。既定のmediumとhighでは思考量が違うため、削減幅もeffortで変わります。

Opus 5.5はPriority Tierに対応していません(Opus 4.8は対応のまま)。Priority Tierの契約がある組織は、容量を別に計画します。

思考が既定でオンになる分、出力トークンが増えます。Opus 4.8で thinking を明示していなかった経路では、Opus 5以降に上げた時点で思考のトークンが乗ります。単価が下がっても量が増えるので、Opus 4.8からの移行では実請求が上がる場合があります。effortを一段下げると、この増分は縮みます。

プロンプトキャッシュの最小長が下がります。短いプレフィックスはキャッシュに乗らず、エラーも出ないので、移行元によって効き方が大きく違います。次の値はClaude API・Claude Platform on AWS・Google Cloud・Microsoft Foundryのものです。Bedrockはモデルごとの最小長がAWS側の資料に載っています。

モデルキャッシュに乗る最小長
Opus 5.5 / Opus 5 / Sonnet 5.5キャッシュに乗る最小長512トークン
Opus 4.8 / Sonnet 5 / Sonnet 4.6 / Sonnet 4.5キャッシュに乗る最小長1,024トークン
Opus 4.7キャッシュに乗る最小長2,048トークン
Opus 4.6 / Opus 4.5 / Haiku 4.5キャッシュに乗る最小長4,096トークン

Haiku 4.5やOpus 4.6から上げると、これまで乗らなかった短いシステムプロンプトがコード変更なしでキャッシュ対象になります。移行後に cache_read_input_tokens がゼロのままでないかを確認しておくと、取りこぼしを拾えます。

ツールを1つでも渡すと、ツール利用用のシステムプロンプトが自動で入力に加わります。tool_choice が auto か none のときは、Opus 4.7が675トークン、Opus 4.6とSonnet 4.6が497、Opus 5.5とSonnet 5.5が286です。ツール定義そのもののトークンは別にかかるので、固定の入力が減るのは、この自動で入る分だけです。

レート上限は、モデルの系統ごとに枠の切り方が違います。

くらべる

レート上限の枠

旧世代

合算で1枠

Opus 4.8 / 4.7 / 4.6 / 4.5が1つの枠を分け合います。Sonnet 4.6 / 4.5も同様です。

新世代

それぞれ別枠

Opus 5.5とOpus 5は別々の枠を持ち、旧Opusの枠にも含まれません。Sonnet 5.5とSonnet 5も別々です。

旧Opusの枠が空いていても、トラフィックを移した先の枠が足りるとは限りません。Fable 5.1とFable 5は合算で1枠です。

小さく試す — 5ステップの検証手順

一括で切り替えず、次の順で確認すると事故が減ります。

ステップ1: スコープを決める

どのファイルとどのルートを移すかを先に確定させます。前述のとおり、定義側(レジストリ・料金テーブル・機能ゲート)は呼び出し側と扱いが違います。

ステップ2: 1リクエストだけ通す

IDを差し替え、レスポンスの model が期待どおりかを確認します。

response = client.messages.create(
    model="claude-opus-5-5",
    max_tokens=64,
    messages=[{"role": "user", "content": "ping"}],
)
assert response.model.startswith("claude-opus-5-5"), response.model

ステップ3: stop_reason の分岐を足す

Opus 5.5・Opus 5・Sonnet 5.5とFable 5 / Fable 5.1は安全分類器の判断でHTTP 200のまま stop_reason: "refusal" を返します。content[0] を無条件に読むコードは、ここで壊れます。分岐を入れたうえで、拒否を実際に回復させたいならサーバー側のフォールバックを有効にします。Opus 5.5の分類器はOpus 5より範囲が広く、stop_details.category には "cyber" に加えて "bio" や "reasoning_extraction"(内部推論を応答に再現させる要求)も返ります。

Sonnet 5.5の stop_details.category は5種です。cyber / bio / frontier_llm / reasoning_extraction / general_harms が並びます。サーバー側フォールバック(fallbacks: "default"、ベータ)でSonnet 5へ再試行されるのは cyber と frontier_llm だけで、ほかは再試行されません。

ステップ4: トークンとコストを測り直す

count_tokens で増分を確認し、max_tokens と圧縮の閾値を調整します。

ステップ5: effortを掃く

前世代向けに固めたeffortをそのまま使わず、medium / high / xhighを自分の評価セットで比べます。Anthropicの公表値では、Opus 5.5は既定のmediumでOpus 5の最大effortを上回るベンチマークがあり、下げる方向に余地がある場合があります。

APIの実装全体を組み直す場合は、Anthropic API完全ガイドに認証やストリーミングを含めた設計をまとめてあります。

よくあるつまずき

テストのシードデータの更新忘れが典型です。モデル名だけ差し替えても、課金ティアやモデル認可のシードリストを参照するテストは定義側に新モデルの行がないと実行時に落ちます。テストをスキップするのではなく、シードに行を足します。

強制ツール呼び出しの置き換え忘れに注意します。tool_choice を組み立てる箇所は、SDKのラッパーやエージェントフレームワークの設定に埋もれ、呼び出し側のコードを検索しても見つからない場合があります。

よくある質問

fast modeはBedrockでも使えますか

使えません。fast modeはresearch previewで、Claude API(Anthropic直営)だけが対象です。Opus 5.5・Opus 5・Opus 4.8で使え、単価はOpus 5.5が入力$8 / 出力$40、Opus 5とOpus 4.8が$10 / $50です(100万トークンあたり)。

まとめ

移行元が複数の世代に散らばっているなら、廃止日が確定しているSonnet 4.5(2026年11月30日)の経路から着手する選択肢があります。

移行先のスペックや料金はClaude Opus 5.5の解説に、旧Opus 5の使い方はClaude Opus 5の使い方と仕様にあります。

この記事を共有:XはてブLinkedIn