Claude Opus 4.8からOpus 5への移行:全ての破壊的変更

Claude Opus 4.8 から Opus 5 への破壊的変更すべて:デフォルトでの思考の有効化、思考無効化時の400エラー、努力の再調整、最小512トークンのキャッシュ、プライオリティティアの廃止。

INEZA Felin-Michel

INEZA Felin-Michel

25 7月 2026

Claude Opus 4.8からOpus 5への移行:全ての破壊的変更

Apidog エンタープライズ

オンプレミスデプロイ

SSO & RBAC

SOC 2 準拠

Apidog Enterpriseを見る

claude-opus-4-8claude-opus-5に交換するのは1行の変更に見えます。ほとんどその通りです。しかし、いくつかのデフォルト設定が知らぬ間に変更され、以前は有効だったリクエストの組み合わせが今ではハードな400エラーを返し、エンタープライズチームが費用を払って利用していた機能が新しいモデルでなくなりました。

Anthropicは2026年7月24日にClaude Opus 5をOpus 4.8と同じ価格(入力トークン100万あたり5ドル、出力トークン100万あたり25ドル)でリリースしました。したがって、これは予算に関する決定であることは稀です。これは正確性に関する決定です。以下に、既存の統合を壊す可能性のあるすべての違いを、初日に発生する可能性が高い順に、クライアントに貼り付けることができる前後のスニペットとともに示します。Anthropic独自のOpus 4.8からOpus 5への移行ガイドがAPI表面の主要な情報源です。各変更をライブエンドポイントで最初にテストするには、Apidogで1つのリクエストを保存し、バリアントごとにクローンを作成してください。

ボタン

要約

変更点 影響 対応策
デフォルトで思考がオン サイレントな出力切り捨て max_tokensを増やす
thinking: disabled + effort xhigh/max HTTP 400 どちらか一方を選択する
努力レベルの再調整 間違ったコスト/品質ポイント 再評価し、設定を引き継がない
1Mコンテキストにベータヘッダーは不要 ヘッダーは冗長になった 削除する
キャッシュ最小値が512トークンに低下 無料の節約 何もしない、またはより多くのプロンプトをキャッシュする
会話中のシステムメッセージ 以前は400、現在は許可 任意の簡素化
優先ティア Opus 5ではサポートされない そのトラフィックには4.8を維持する
高速モード Opus 5で動作するようになった オプション、$10/$50
fallbacks: "default" 新しいサイバー拒否セーフティネット オプションのベータヘッダー
サンプリングパラメータ、トークン数 変更なし 何もしない

1. 思考はデフォルトでオンになり、max_tokensがすべてを制限する

これは、静かに動作していたコードを壊す変更です。

Opus 4.8では、thinkingフィールドがないリクエストは思考なしで実行されました。Opus 5では、同じリクエストが適応型思考を実行します。JSONは変更されませんが、モデルは可視の回答を書き出す前に推論のためにトークンを消費します。そして、max_tokensは思考トークンと応答トークンを合わせたハードキャップのままであるため、4.8で1,024トークンの予算に快適に収まっていたリクエストが、その予算のほとんどを思考に費やし、切り捨てられた回答を返す可能性があります。

これは以前は安全だったリクエストの形式です。

{
  "model": "claude-opus-4-8",
  "max_tokens": 1024,
  "messages": [
    {"role": "user", "content": "Summarize this incident report in three bullets."}
  ]
}

モデルIDのみを変更し、他は何も変更しないと、切り捨てのリスクが生じます。修正策は、予算に余裕を持たせることです。

{
  "model": "claude-opus-5",
  "max_tokens": 8192,
  "messages": [
    {"role": "user", "content": "Summarize this incident report in three bullets."}
  ]
}

上限を上げた後、2つのことを確認してください。応答のstop_reasonを確認してください。max_tokensは途中で中断されたことを意味し、end_turnはモデルが完了したことを意味します。次に、usageブロックを読み取り、実際のプロンプトで思考が実際にどれだけの予算を消費したかを確認し、推測ではなく測定に基づいて数値を決定してください。

本当に以前の思考なしの動作が必要な場合は、明示的にthinking: {"type": "disabled"}を送信してください。ただし、このフィールドが努力と相互作用し、エラーを返すようになったため、次のセクションをまず読んでください。

2. 400エラー:思考を無効にし、xhighまたはmaxの努力レベルを指定した場合

これは、Opus 4.8では両方の要素が個別に有効だったため、エラーログに最も頻繁に表示される可能性のある落とし穴です。

Opus 5では、thinking: {"type": "disabled"}output_config.effortxhighまたはmaxに設定するとHTTP 400エラーを返します。Anthropicはこれをリクエストごとに強制するため、性能が低下することなく、即座に一貫して失敗します。論理は単純です。上位2つの努力レベルは、より多くの思考を得るために存在するため、思考をオフにした状態で最大の努力を要求することは矛盾します。

現在失敗するリクエスト:

{
  "model": "claude-opus-5",
  "max_tokens": 8192,
  "thinking": {"type": "disabled"},
  "output_config": {"effort": "xhigh"},
  "messages": [
    {"role": "user", "content": "Refactor this module and explain the tradeoffs."}
  ]
}

修正A、機能を維持する場合。thinkingフィールドを削除し、高い努力レベルを維持します。これはAnthropicが推奨する方向であり、コーディングやエージェント的な作業に選択すべきものです。

{
  "model": "claude-opus-5",
  "max_tokens": 32000,
  "output_config": {"effort": "xhigh"},
  "messages": [
    {"role": "user", "content": "Refactor this module and explain the tradeoffs."}
  ]
}

修正B、思考をオフにしたままにする場合。本当に思考が不要な、レイテンシに敏感なパスでは、disabledを維持し、努力レベルをhigh以下に下げてください。

{
  "model": "claude-opus-5",
  "max_tokens": 4096,
  "thinking": {"type": "disabled"},
  "output_config": {"effort": "high"},
  "messages": [
    {"role": "user", "content": "Classify this ticket into one of five categories."}
  ]
}

修正Bには注意点があります。Anthropicのドキュメントによると、思考を無効にすると時折発生する2つのアーティファクトがあります。それは、ツール呼び出しが実行されずにプレーンテキストとして書き出されること、および<thinking>のような内部XMLタグが可視出力に漏れ出すことです。エージェントループでは、漏れ出したテキストが後続のターンも汚染します。Anthropic自身の軽減策は、思考をオンにしたまま、より低い努力レベルでコストを制御することです。修正Bは、デフォルトではなく、特定の状況での選択肢として扱ってください。

3. 努力レベルが再調整されたため、設定をコピーするのではなく、再評価する

Opus 5はデフォルトでhighの努力レベルを使用し、レベル自体も再調整されました。lowmediumは以前のOpusモデルよりもOpus 5で意味のある強化がされています。そのため、4.8で調整した設定は、もはや同じコストと品質のポイントにはなりません。Anthropicは、4.8の設定を引き継ぐのではなく、新しい努力の再評価を実行することを明確に述べており、そのアドバイスは両方向に当てはまります。

コーディングや長期的なエージェント作業では、xhighが引き続き推奨される開始点です。思考が機能するための十分なmax_tokens(上位レベルでは64kが妥当な開始予算です)と組み合わせてください。

ベンチマークではなく、独自の評価セットで再評価を実行してください。プロンプトは固定し、努力値のみを変更して、各レベルでの出力品質、レイテンシ、usageを記録します。努力パラメータの詳細解説では各レベルのメカニズムについて説明しており、同じ決定のコスト面についてはOpus 5の料金内訳を参照してください。

4. 長いコンテキストのベータヘッダーを削除する

Opus 5は、デフォルトおよび最大値として1Mトークンのコンテキストウィンドウを備えてリリースされました。これを有効にするためのベータヘッダーはなく、長いコンテキストに関する料金プレミアムもありません。

もしクライアントがOpus 4.8の設定からanthropic-betaヘッダーに拡張コンテキストのベータ値を送信し続けている場合、それは現在、無駄なものです。削除してください。共有HTTPクライアント内の古いベータ値は、半年後に無関係なリクエストをデバッグする原因となります。

Messages APIでの最大出力は128kトークンです。さらに必要な場合は、Batch APIがoutput-300k-2026-03-24ベータヘッダーで300k出力トークンまで対応しており、これはコンテキスト長のために行っていたこととは別のオプトインです。

5. プロンプトキャッシュの最小値が512トークンに低下

Opus 4.8では、プロンプトセグメントがキャッシュの対象となるには1,024トークンに達する必要がありました。Opus 5では、その下限が512になります。コードを変更する必要はなく、100万あたり0.50ドルでのキャッシュ読み取りは、基本入力の5ドルと比較して、料金表上で最も安いトークンです。

検討する価値があるのは、レビューパスです。512から1,024トークンの間にあり、これまでcache_controlのブレークポイントの価値がなかったシステムプロンプト、ツール定義、数ショットブロックを探してください。これらは今やその価値があります。応答のusageブロックにあるcache_read_input_tokensを読み取ることで効果を確認してください。2回目の同一呼び出しでは、ゼロ以外の値になるはずです。Claude APIの料金を削減するためのガイドでは、より広範なキャッシュ戦略について説明しています。

6. 会話中のシステムメッセージが受け入れられるようになった

Opus 4.8では、messages配列内の{"role": "system"}エントリを400エラーで拒否していました。Opus 5では、これを受け入れます。これは追加的な変更であるため、何も壊れませんが、回避策を削除できる可能性があります。会話中に指示の変更を合成されたユーザーのターンに組み込むメカニズムを構築していた場合、その指示を本来の場所にインラインで配置できるようになりました。

{
  "model": "claude-opus-5",
  "max_tokens": 8192,
  "messages": [
    {"role": "user", "content": "Draft the release note."},
    {"role": "assistant", "content": "Here is a first draft..."},
    {"role": "system", "content": "From here on, keep responses under 150 words."},
    {"role": "user", "content": "Tighten it."}
  ]
}

これはモデルごとの機能です。同じ会話履歴をフォールバックとしてOpus 4.8にルーティングすると、古いモデルはそのメッセージで依然として400エラーを返します。

7. 優先ティアはOpus 5でサポートされない

これはエンタープライズチームにとっては痛手であり、エラーとしてgrepで検索できるものではなく、欠如であるため見落としやすい点です。Opus 4.8は優先ティアをサポートしています。Opus 5はサポートしていません。本番環境のパスでレイテンシを保証するためにコミットされたスループットを購入していた場合、そのパスを移行すると標準容量に戻ってしまいます。

賢い解決策はありません。レイテンシが重要なトラフィックはclaude-opus-4-8に維持し、他のすべてはOpus 5に移行するか、標準容量を受け入れ、テールレイテンシが実際に悪化するかどうかを測定するかのどちらかです。全システムを一斉に切り替えるのではなく、ワークロードごとに移行を分割してください。

8. 高速モードが動作するようになり、新しいサイバー拒否フォールバックが追加された

高速モードはOpus 5で動作します。Opus 4.7ではエラーを返し、Opus 4.6ではサイレントに標準速度で動作していました。Opus 5では、入力100万あたり10ドル、出力100万あたり50ドルで、約2.5倍の出力速度を実現します。これは研究プレビューであり、ファーストパーティAPIのみ(Amazon Bedrock、Google Cloud、Microsoft Foundryではない)で、Batch APIとは組み合わせできません。バックグラウンドジョブではなく、インタラクティブなパスで利用してください。

サイバー拒否に対するサーバーサイドフォールバック。server-side-fallback-2026-07-01ベータヘッダーとともにfallbacks: "default"を送信すると、Opus 5がサイバーカテゴリの理由で拒否したリクエストが自動的にOpus 4.8にフォールバックします。セキュリティツールがこの機能の真価を発揮する場所です。

また、プロンプトキャッシュを無効にすることなく、ターン間でツール定義を追加または削除できるmid-conversation-tool-changes-2026-07-01ベータヘッダーもあります。これは、ツールセットが変化する長いエージェントセッションのコストレバーとなります。

9. 変更されなかった点

変更されなかった点を知ることで、時間を節約できます。

APIが変更されていないにもかかわらず、1つの変更がありました。Opus 5はプロンプトなしで自身の作業を確認するため、引き継がれた「回答を再確認してください」という指示は過剰な検証を引き起こし、トークンを無駄にします。デフォルトの応答も4.8よりも長くなる傾向があり、努力レベルを下げると可視の長さを変えずに思考を削減するため、簡潔さを明示的に要求してください。これらはプロンプトレベルの修正であり、Claude Opus 5のプロンプト作成で説明されています。

移行をデプロイする前に確認する

上記の各項目はHTTPレベルの違いであり、アプリケーションの外部でテスト可能です。Apidogで実行可能なループは以下の通りです。

  1. キーを環境変数として保存し、本文にインラインで記述せずに、Messagesエンドポイントへのリクエストを1つ保存します。
  2. それをバリアントにクローンします。claude-opus-4-8のベースライン、デフォルトのclaude-opus-5、および努力レベルごとのクローン。
  3. 無効な思考とxhighの組み合わせを意図的に実行し、400エラーの本文を記録して、本番ログで認識できるようにします。
  4. stop_reasonでアサートし、切り捨てられたmax_tokens応答が静かにデプロイされるのではなく、テスト失敗として表面化するようにします。
  5. 同じキャッシュされたリクエストを2回送信し、2回目の呼び出しでusage.cache_read_input_tokensを確認します。
  6. ストリーミングリクエストを1つ実行し、SSEパーサーがデフォルトで送られてくるようになった思考ブロックを処理できることを確認します。

将来のすべてのモデル交換のために再利用可能なコレクションとして保持するために、Apidogをダウンロードしてください。

すべてを移行する前の正直な注意点

Opus 5はClaudeスタックの頂点ではありません。Fable 5はAnthropicの最も高性能な広くリリースされたモデルのままであり、Opus 5はサイバーセキュリティの悪用と自律的な生物学研究においてMythos 5に依然として劣っています。Anthropicは発表記事でそのように述べています。発表されたベンチマークの主張(Frontier-Bench、ARC-AGI 3、OSWorld 2.0、CursorBench 3.2)はベンダーが実施したものであり、2026年7月25日時点では独立した再現はされていません。これらをAnthropicが報告した数値として扱い、本番ワークロードをコミットする前に独自の評価を実行してください。正確な要約は次のとおりです。フロンティアクラスの機能をフロンティア価格の半分で提供し、その上に明確な上限が存在します。

移行チェックリスト

以下の項目を順番に実行してください。

  1. モデル文字列を正確にclaude-opus-5に変更します。日付サフィックスは不要です。
  2. 以前thinkingを省略していたすべてのリクエストでmax_tokensを増やします。思考はデフォルトで実行されるようになり、この予算を共有します。
  3. コードベースで"disabled"を検索し、それが努力レベルxhighまたはmaxとペアになっていないことを確認します。この組み合わせはハードな400エラーになります。
  4. anthropic-betaから長いコンテキストのベータ値を削除します。1Mウィンドウは現在デフォルトです。
  5. 独自の評価で努力の再評価を最初から実行します。4.8の設定は移植しないでください。
  6. 512から1,024トークンの間のプロンプトセグメントにcache_controlブレークポイントを追加します。
  7. 優先ティア上のトラフィックを特定し、ワークロードごとにclaude-opus-4-8に残すかどうかを決定します。
  8. プロンプトから引き継がれた検証指示を削除し、出力の長さが重要な場合は明示的な簡潔さの指示を追加します。
  9. ワークロードがサイバーカテゴリの拒否をトリガーする場合は、オプションでfallbacks: "default"を有効にします。
  10. テストスイートでstop_reasonをアサートし、切り捨てが微妙に悪い回答ではなく、失敗として表面化するようにします。

完全なリクエストのウォークスルーについては、Claude Opus 5 APIガイドを参照するか、スペックと可用性についてはClaude Opus 5とは何かから始めてください。もし一部で古いモデルをまだ実行している場合、Opus 4.8の説明とそのAPIウォークスルーは引き続き正確です。Anthropicのモデル概要は、ID、コンテキストウィンドウ、およびカットオフに関する正式な情報源です。

よくある質問

Opus 4.8からOpus 5への移行はドロップイン(置き換えのみ)で可能ですか? ほぼ可能ですが、完全にではありません。モデル文字列を変更するだけでほとんどのリクエストは動作します。ただし、2つの点で問題が発生する可能性があります。思考がデフォルトで実行されるようになり、max_tokens予算を共有すること、そしてthinking: {"type": "disabled"}xhighまたはmaxの努力レベルの組み合わせが400エラーを返すことです。Opus 5はサポートしていないため、優先ティアのトラフィックについても決定が必要です。

claude-opus-5に切り替えた後、なぜ400エラーが発生するのですか? 最も一般的な原因は、xhighまたはmaxの努力レベルを要求しながら思考を無効にすることです。thinkingフィールドを削除して高い努力レベルを維持するか、思考を無効にしたまま努力レベルをhigh以下に下げてください。非デフォルトのtemperaturetop_ptop_k値も、Opus 4.8と同様に400エラーを返します。

移行後、トークン数を再計算する必要がありますか? いいえ。Opus 5はOpus 4.8と同じトークナイザーファミリーを使用しているため、トークン数はほぼ変更がなく、既存の予算が引き継がれます。ツール利用のシステムプロンプトのオーバーヘッドは、290トークンに対して286トークンとわずかに低くなっています。基本料金も入力5ドル、出力25ドルで同一ですが、デフォルトで思考がオンになることで出力トークンが増加し、料金が変わる可能性はあります。

ApidogでAPIデザイン中心のアプローチを取る

APIの開発と利用をよりシンプルなことにする方法を発見できる