Claude Opus 5.5への移行
以前のClaudeモデルからClaude Opus 5.5へ移行します:モデルID、破壊的変更、推奨される変更、移行チェックリスト。
動作の違いとモデル固有のプロンプトパターンについては、Claude Opus 5.5へのプロンプティングを参照してください。
Claude Opus 5.5はClaude Opus 5よりも低コストです(入力/出力100万トークンあたり$4 / $20 USDで、Claude Opus 5は$5 / $25です。Claudeの料金を参照してください)。また、Claude Opus 5の1Mトークンのコンテキストウィンドウと128kの最大出力トークンを引き継いでいます。Claude Opus 5ですでに実行されているコードには4つの「breaking changes」(破壊的変更)があり、破壊的変更で説明しています。機能のサポート状況については、Claude Opus 5.5の新機能を参照してください。
Claude Opus 5からClaude Opus 5.5への移行
モデル名を更新する
model = "claude-opus-5" # Before
model = "claude-opus-5-5" # Afterclaude-opus-5-5は日付サフィックスのない固定モデルIDで、claude-opus-5と同じ命名方式です。Amazon Bedrock、Claude Platform on AWS、Google Cloud、Microsoft Foundryでは、各プラットフォームのモデルIDを使用してください。提供状況を参照してください。
破壊的変更
各変更の説明はClaude Opus 5.5の新機能にあります。このセクションでは、それぞれに必要なコード変更を示します。
思考を無効にできない
thinking: {"type": "disabled"}とthinking: {"type": "enabled", "budget_tokens": N}はどちらも400エラー("thinking.type.disabled" is not supported for this model.または"thinking.type.enabled" is not supported for this model.)を返します。thinkingフィールドを削除し、effort(エフォート)レベルを選択してください。トークンを節約するために思考を無効にしていた箇所では、より低いレベルを使用してください。その場合、レスポンスはthinkingブロックから始まるため、コンテンツブロックはtypeで選択し、thinkingブロックはツール結果とともに変更せずに返してください。思考を無効にできないを参照してください。
変更前(Claude Opus 5では受け付けられ、Claude Opus 5.5では拒否されます):
client.messages.create(
model="claude-opus-5",
max_tokens=16000,
thinking={"type": "disabled"},
messages=[{"role": "user", "content": "..."}],
)変更後:
client.messages.create(
model="claude-opus-5-5",
max_tokens=16000,
output_config={"effort": "low"}, # thinking is always on; effort is the control
messages=[{"role": "user", "content": "..."}],
)強制ツール使用はサポートされていない
tool_choiceのタイプanyとtoolは、トークンカウントエンドポイントを含め、400エラー(tool_choice: type "tool" and "any" are not supported for this model.)を返します。「forced tool use」(強制ツール使用)の代わりに、厳密なツール使用または構造化出力と組み合わせてautoを使用し、ツールを使用すべき場面をプロンプトで伝えてください。強制ツール使用はサポートされていないを参照してください。
変更前:
client.messages.create(
model="claude-opus-5",
max_tokens=1024,
tools=tools,
tool_choice={"type": "tool", "name": "get_weather"},
messages=[{"role": "user", "content": "What's the weather in Paris?"}],
)変更後:
client.messages.create(
model="claude-opus-5-5",
max_tokens=1024,
# strict tool use(厳格なツール使用): すべての呼び出しがツールの input_schema に一致します
tools=[{**tool, "strict": True} for tool in tools],
tool_choice={"type": "auto"},
messages=[
{
"role": "user",
"content": "What's the weather in Paris? Use the get_weather tool.",
}
],
)思考ブロックはモデルと会話に紐づいている
Claude APIでは、Claude Fable 5.1とClaude Mythos 5.1はClaude Opus 5.5の思考ブロックを読み取りますが、それ以外のモデルは読み取りません。会話をClaude Opus 5.5から他のモデルに移すルーターやフォールバックでは、それらのターンは思考ブロックなしで実行されます。逆方向では、Claude Opus 5.5はClaude Opus 5およびそれ以前のOpus、Sonnet、Haikuモデルの思考ブロックを読み取りますが、Claude FableやClaude Mythosモデルの思考ブロックは読み取りません。ブロックが有効な状態を保つよう、会話は「append-only」(追記のみ)に保ってください(会話の途中でsystemプロンプト、tools、または以前のメッセージを編集しないでください)。Claude Code、claude.ai、Claude Managed Agents、Claude Agent SDKはすでにそのように動作しています。適用ルールはすべてのプラットフォームでClaude Fable 5.1と同じです。2026年8月31日00:00 UTC以降に作成されたアカウントでは、そのような編集の後に思考ブロックを再送すると、デフォルトで400エラーが返されます。追記のみの統合ではコード変更は不要です。思考ブロックはモデルと会話に紐付けられるおよび保持された思考を参照してください。
computer_20251124コンピュータ使用ツールはClaude APIとGoogle Cloudではサポートされていない
Claude APIとGoogle Cloudでは、タイプがcomputer_20251124のtoolsエントリは400エラー('claude-opus-5-5' does not support tool types: computer_20251124.の後に、モデルが受け付けるツールタイプが続きます)を返します。代わりにcomputer_toolset_20260801ツールセットを宣言してください。ベータヘッダーを削除し、nameや表示サイズを指定せずにエントリを送信します。エージェントループでは、メンバーのtool_useブロック(アクションはinput.actionではなくブロックのnameです)を1ターンに複数処理し、すべての結果でtoolset_nameをそのまま返してください。リクエストの変更は以下に示します。エージェントループの変更はcomputer_20251124からの移行に記載されています。Amazon Bedrockでは、以前のcomputer_20251124ツールはClaude Opus 5と同様にClaude Opus 5.5でも引き続き動作するため、変更は不要です。その他のプラットフォームについては、コンピュータ使用ツールの互換性セクションを参照してください。computer_20251124コンピュータ使用ツールはClaude APIとGoogle Cloudではサポートされていないを参照してください。
変更前:
client.beta.messages.create(
model="claude-opus-5",
max_tokens=4096,
betas=["computer-use-2025-11-24"],
tools=[
{
"type": "computer_20251124",
"name": "computer",
"display_width_px": 1024,
"display_height_px": 768,
}
],
messages=[{"role": "user", "content": "Open the display settings."}],
)変更後:
client.messages.create(
model="claude-opus-5-5",
max_tokens=4096,
# beta ヘッダーは不要です。toolset エントリには名前や表示サイズを指定しません
tools=[{"type": "computer_toolset_20260801"}],
messages=[{"role": "user", "content": "Open the display settings."}],
)ツール呼び出し間のテキストは思考ブロックで返される
Claude Opus 5では、モデルがツール呼び出しの間に書くテキストはtextブロックとして返されます。Claude Opus 5.5では、Claude Fable 5.1と同様に、そのナレーションは進捗更新のthinkingブロックとして、各ツール呼び出しの前に最大1つ返されます。thinking.displayがデフォルトの"omitted"の場合、そのthinkingフィールドは空です。リクエストが失敗することはありませんが、そのテキストを進捗更新としてユーザーにストリーミングしているアプリケーションでは、ツール呼び出しの間に何も表示されなくなります。更新を復元するには、thinkingブロックから読み取り、テキストを返すdisplay値を設定してください。"updates"(ベータ、thinking-display-updates-2026-08-18ヘッダー)は推論を非表示にしたまま進捗更新を返し、"summarized"は両方を混在させて返します。その後、空でない各thinkingブロックを、その直後にあるtool_useブロックの前にレンダリングし、ブロックはアシスタントターンの残りの部分とともに変更せずに返してください。ユーザー向けの進捗更新を参照してください。
安全性分類器とフォールバック
Claude Opus 5.5は、stop_detailsカテゴリとともにstop_reason: "refusal"を返すことがあります。その分類器はClaude Opus 5よりも幅広いカテゴリを対象としているため、"cyber"に加えて"bio"や"reasoning_extraction"などのstop_details.category値が返されることを想定してください。拒否カテゴリの表を参照してください。拒否を処理し、サーバーサイドフォールバックまたは独自のリトライを設定してください(サーバーサイドフォールバックは"reasoning_extraction"で拒否されたリクエストをリトライしません。その拒否はそのまま返されます)。拒否とフォールバックおよびセーフガードによる拒否を参照してください。
推奨される変更
- エフォートのスイープを再実行してください。 Claude Opus 5.5ではエフォートが唯一の思考制御であり、そのデフォルトはClaude Opus 5の
highに対してmediumです。そのため、effortを省略したリクエストはmediumで実行されるようになります。品質が維持される場合はレベルを下げ、最も要求の厳しい作業ではレベルを上げてください。エフォートを参照してください。 - モデル固有のプロンプト指示を再評価してください。 Claude Opus 5の動作に合わせて調整した指示は不要になっている可能性があります。Claude Opus 5.5へのプロンプティングを参照してください。思考を無効にして実行していた場合は、思考無効を前提に書かれたプロンプトも参照してください。
- 本番トラフィックを切り替える前に、開発環境でテストしてください。
移行チェックリスト
- モデルIDを
claude-opus-5-5に更新します。 thinking: {"type": "disabled"}とthinking: {"type": "enabled", ...}を削除し、代わりにエフォートレベルを選択します。effortを明示的に設定します。デフォルトはClaude Opus 5のhighに対してmediumです。tool_choiceのタイプanyとtoolを、autoと厳密なツール使用または構造化出力の組み合わせに置き換えます。- Claude APIまたはGoogle Cloudでコンピュータ使用を利用している場合は、
computer_20251124の代わりにcomputer_toolset_20260801(ベータヘッダーなし)を宣言し、エージェントループをツールセットに合わせて更新します。Amazon Bedrockではcomputer_20251124をそのまま使用します。その他のプラットフォームについては、コンピュータ使用ツールの互換性セクションを確認してください。 - ルーターやフォールバックによって会話がClaude Opus 5.5から別のモデルに移る可能性がある場合は、そのモデルがClaude Opus 5.5の思考ブロックなしで実行されることを想定してください(Claude API上のClaude Fable 5.1とClaude Mythos 5.1は例外で、思考ブロックを保持します)。Claude Opus 5.5自体は、Claude Opus 5およびそれ以前のOpus、Sonnet、Haikuモデルの思考を読み取りますが、Claude FableやClaude Mythosモデルの思考は読み取りません。
- コンテンツブロックは
typeで読み取り、ツール使用ループではthinkingブロックを変更せずに返します。 - インターフェースでツール呼び出し間のテキストをレンダリングしている場合は、
display: "updates"(ベータ)または"summarized"を設定し、空でないthinkingブロックをレンダリングします。 - コードが会話の途中で以前のターン、
systemプロンプト、またはtoolsを編集する場合は、保持された思考に従います。 stop_reason: "refusal"を処理し、フォールバックを設定します。- 選択したエフォートレベルでコストとレイテンシのベースラインを取り直します。
Claude Opus 4.8からClaude Opus 5.5への移行
まずClaude Opus 4.8からClaude Opus 5への移行を進めてください。そこでは、デフォルトで有効になった思考と、それに伴うレスポンス形式の変更について説明しています。その後、Claude Opus 5からの移行を適用してください。そこにあるClaude Opus 5の2つ目の破壊的変更(思考はhigh以下のエフォートでのみ無効にできる)は引き継がれません。Claude Opus 5.5では思考をまったく無効にできません。
移行チェックリスト
- Claude Opus 4.8 → Claude Opus 5のチェックリストのすべての項目。ただし、
thinking: {"type": "disabled"}は選択肢になりません。 - Claude Opus 5 → Claude Opus 5.5のチェックリストのすべての項目。
Claude Opus 4.7およびそれ以前のOpusモデルからClaude Opus 5.5への移行
Claude Opus 5移行ガイドでは、現在のモデルとClaude Opus 5の間の破壊的変更について説明しています。サンプリングパラメータの拒否、手動の拡張思考の拒否、プレフィルの削除、新しいトークナイザーです。そこで使用中のモデルに該当するセクションを、claude-opus-5ではなくclaude-opus-5-5を対象として進め、その後Claude Opus 5からの移行を適用してください。そのガイドで思考はhigh以下のエフォートで無効にできると説明されている箇所は、Claude Opus 5.5では当てはまりません。また、既存のcomputer_20251124統合は引き続き動作すると説明されている箇所は、Claude APIとGoogle CloudのClaude Opus 5.5では当てはまりません。これらのプラットフォームでは、Claude Opus 5.5はコンピュータ使用をcomputer_toolset_20260801ツールセットとしてのみ受け付けます(破壊的変更を参照してください)。Amazon Bedrockでは引き続き動作します。
Claude Sonnet 5からClaude Opus 5.5への移行
上位のモデルクラスに移行する際の変更点についてはClaude Sonnet 5からClaude Opus 5への移行を参照し、その後Claude Opus 5からの移行を適用してください。
Was this page helpful?