Claude effortとは — low〜maxの使い分け方
effortはClaudeが応答に費やすトークン量を制御するパラメーターです。5段階のレベルの意味とモデルごとのおすすめ設定、API・Claude Code・Agent SDKでの設定場所をまとめます。
Claude effortは、Claudeが1回の応答にどれだけトークンを使うかを制御する設定です。lowからmaxまで5段階あり、応答の丁寧さとトークン効率をトレードオフできます。既定値は多くのモデルでhighで、effortパラメーターを省略した場合と完全に同じ挙動になります。API・Claude Code・Agent SDKのどこから使っても考え方は共通です。
Claude effortは何を制御する設定か
effortは、テキスト応答・ツール呼び出しの引数・拡張思考(有効な場合)を含む、応答に含まれる全てのトークンを対象に働きます。思考のオン/オフとは独立に効くため、拡張思考を使わない構成でもトークン効率をコントロールできる点が特徴です。低いeffortではClaudeが呼び出すツールの数自体が減る、という形で効率化が起こることもあります。
effortは厳密なトークン予算ではなく、挙動を誘導する信号です。低いeffortでも、十分に難しい問題に対してはClaudeはそれなりに考えます。ただし同じ問題に対して高いeffortのときより思考量は少なくなります。
レベルごとの意味と使い分け
公式ドキュメントが示す5段階の目安は次の通りです。
| レベル | 説明 | 典型的な用途 |
|---|---|---|
max | 説明トークン消費に制約を設けない最大性能 | 典型的な用途最も深い推論と徹底した分析が必要なタスク |
xhigh | 説明長時間の作業向けに拡張された性能 | 典型的な用途30分を超えるような長時間のエージェント・コーディングタスク |
high(既定) | 説明高い性能。パラメーター省略と同一挙動 | 典型的な用途複雑な推論、難易度の高いコーディング、エージェントタスク |
medium | 説明速度・コスト・性能のバランス型 | 典型的な用途バランスが必要なエージェントタスク |
low | 説明最も効率的。性能は落ちるがトークン消費が小さい | 典型的な用途サブエージェントなど、速度とコストを優先したい単純なタスク |
xhighは比較的新しいレベルで、maxに対応するモデルの中にもxhighには対応していないものがあります。
モデルごとのeffort対応状況
effortが使えるモデルは限られています。API上で対応するのは次のモデルです。
- Fable 5・Mythos 5・Mythos Preview
- Opus 5・Opus 4.8・Opus 4.7・Opus 4.6
- Sonnet 5・Sonnet 4.6
- 拡張思考専用モデルの中で唯一対応するOpus 4.5(
claude-opus-4-5-20251101)
Claude Codeで実際に選べるレベルは、このうちモデルによってさらに次のように分かれます。
| モデル | 使えるレベル |
|---|---|
| Fable 5・Opus 5・Sonnet 5・Opus 4.8・Opus 4.7 | 使えるレベルlow / medium / high / xhigh / max |
| Opus 4.6・Sonnet 4.6 | 使えるレベルlow / medium / high / max(xhighなし) |
対応していないレベルを指定すると、指定値以下でモデルが対応する最も高いレベルにフォールバックします。Claude Code側の/effortコマンドの具体的な操作・既定値のhold挙動・非対話モードでの注意点はClaude Code effortレベルの使い方と設定にまとめています。
モデル別のおすすめeffort
公式の推奨は、モデルの世代によって傾向が異なります。
コスト重視のワークロードなら、Sonnet 5は既定のhighを維持したまま複雑な推論・コーディング・エージェントタスクに使い、最も難しい局面だけxhighに上げます。段階的な引き下げにはmedium、チャットのような速度優先の非コーディング用途にはlowが向きます。maxは制約なしの最高性能が必要なタスク専用です。
既定値はhighのままでも、レイテンシの予測しやすさを重視するならSonnet 4.6では明示的にmediumを選ぶのが公式の推奨です。エージェント的コーディングやツール多用のワークフローでの速度・コスト・性能のバランスがmediumの狙いです。
コーディング・エージェント用途と知性重視の用途で目安が分かれるのがOpus 4.7とOpus 4.8です。コーディング・エージェント用途ではxhighを起点にし、知性が重要な用途全般ではhighを最低ラインとします。コスト重視ならmediumへ、評価セットでの検証(eval)でxhighにまだ余地があると確認できた場合のみmaxへ、という順で調整します。Opus 4.7のxhigh挙動とコスト試算はOpus 4.7 xhighとはで詳しく扱っています。
5段階すべてに対応するのがOpus 5です。既定のhighから始め、evalの結果を見ながら難しいコーディング・エージェントタスクにはxhigh、制約のないタスクにはmaxへ引き上げます。品質が保てる範囲ではlow・mediumをコスト・速度の主力コントロールとして積極的に使うのが公式の推奨です。以前のモデルからeffort設定をそのまま引き継がず、新たにevalを回し直すのが公式の推奨です。effortが動かすのは思考量であって目に見える応答の長さではありません。Opus 5ではeffortを変えても応答が短くなるとは限らないため、応答量そのものを調整したい場合はプロンプト側で長さを指定します。
Fable 5(Mythos 5も同様)では、effortが知性・レイテンシ・コストを調整する主要な手段です。既定のhighをほとんどのタスクの起点にし、性能が特に重要な作業にはxhigh、日常的な作業にはmediumやlowへ下げます。Fable 5は低いeffortでも性能が高く、以前のモデルのxhighを上回ることも珍しくありません。highやxhighで使う場合は、思考と応答テキストの合計に対するハードリミットとしてmax_tokensを大きめに設定しておきます。
どこで設定するか — API・Claude Code・Agent SDK
effortの設定場所は利用形態によって異なります。Anthropic APIではリクエストのeffortパラメーターに直接レベル名を渡します。Claude Codeには複数の経路があります。
/effortコマンド、または--effortフラグCLAUDE_CODE_EFFORT_LEVEL環境変数- 設定ファイルの
effortLevelキー /modelのスライダー操作
Agent SDKではeffortLevelをコントロールリクエストやapplyFlagSettings()で指定できます。SkillやSubagentのfrontmatterにeffortを書けば、その実行中だけ上書きすることも可能です。
環境変数がすべての経路より優先され、次に明示的に設定したレベル、最後にモデルの既定値という優先順位です。組織の管理者はモデルごとの上限を設定でき、上限を超えるレベルは/effortのメニューに表示されません。
effortと拡張思考の関係
拡張思考(Extended Thinking)は、Claudeが応答前に出力する思考過程そのものです。adaptive reasoning(適応的推論)に対応するモデルでは、思考量を決める主な手段はeffortレベルであり、拡張思考のオン/オフ設定は思考の表示方法を制御する側に回ります。Anthropic APIで拡張思考をオフにすると、その組み合わせを受け付けないモデル(Opus 5など)に対してはClaude Codeが自動的にhighを送るという調整も入ります。
Fable 5では拡張思考をオフにできません。セッションのトグルやMAX_THINKING_TOKENS=0を設定しても効果がなく、Fable 5はeffortレベルに応じてステップごとに思考量を自分で判断します。Opus 5も同様に、xhigh・maxのeffortでは拡張思考を明示的にオフにできず、その組み合わせでリクエストするとエラーになります。拡張思考のみに対応する唯一のモデルであるOpus 4.5は例外で、effortとbudget_tokens(思考に使うトークン数の上限)を組み合わせて使う設計になっています。
ツール呼び出しへの影響
effortは、Claude Codeのようにツールを多用するワークフローでの挙動にも直接影響します。低いeffortでは、複数の操作を1回のツール呼び出しにまとめる・呼び出し回数自体を減らす、といった傾向が出ます。前置きなしにすぐ実行し、完了後の確認メッセージも簡潔になります。逆に高いeffortでは、ツール呼び出しの回数が増え、実行前に計画を説明します。変更内容を詳しく要約し、コードコメントも充実します。「Claudeの説明が長すぎる」「逆に説明が素っ気ない」と感じたときは、まずeffortレベルを疑うと切り分けが早くなります。
よくあるつまずき
セッション途中でeffortを変えるとプロンプトキャッシュが効かなくなる
effortはレンダリングされるプロンプトの一部として扱われるため、同じ会話の途中でレベルを変更すると、それ以前のターンで作られたキャッシュのプレフィックスが再利用されなくなります。プロンプトキャッシュに依存する長いセッションでは、最初にeffortを決めたらそのセッション内では変えず、ワークロードが変わるタイミングでセッションごと切り替えるのが安全です。
前のモデルのeffort設定をそのまま引き継いで性能が落ちる
モデルごとにeffortの尺度は個別に較正されているため、同じレベル名でも実際の挙動は世代によって変わります。Opus 4.7からOpus 5へ切り替えたときのように、モデルを乗り換えたら以前のeffort設定をそのまま使い回さず、evalを回し直して最適なレベルを確認します。
xhighを指定したのにhighで動いている
xhighに対応していないモデル(Opus 4.6・Sonnet 4.6など)を使っている場合、指定は自動的にフォールバックします。モデル一覧の対応表で、使っているモデルがxhighに対応しているか先に確認します。
xhighやmaxでmax_tokensが足りずに途中で切れる
Opus 4.7やOpus 4.8をxhighやmaxで動かす場合、サブエージェントやツール呼び出しをまたいで考える余地を残すため、大きめのmax_tokensを設定するのが公式の推奨です。64kトークンを起点に調整するのが実務的な目安です。
よくある質問
effortを設定しないとどうなりますか
effortパラメーターを省略した場合の挙動は、highを明示的に指定した場合とまったく同じです。多くのモデルではhighが既定値のため、特別な理由がなければ省略しても実質的な違いはありません。
effortを下げるとコストはどれくらい下がりますか
公式ドキュメントは具体的な削減率を明示していません。lowは「大幅なトークン節約」、mediumは「中程度のトークン節約」とだけ説明されており、実際の削減幅はタスクの性質によって変わります。自分のワークロードでevalを回して確認するのが確実です。
すべてのモデルでeffortが使えますか
使えません。effortに対応するのはFable系・Mythos系・Opus 4.5以降・Sonnet 5・Sonnet 4.6に限られます。前段の対応表で自分が使っているモデルを確認してください。対応していないモデルではeffortパラメーター自体が無視されます。
Claude Codeの/effortとAPIのeffortパラメーターは同じものですか
同じ仕組みの上に成り立っています。Claude Codeの/effortコマンドは、内部的にAPIリクエストのeffortパラメーターへ値を渡しているだけで、レベルの意味やモデルごとの対応状況は共通です。Claude Code固有のultracode設定だけは例外で、xhighのeffortに加えて動的ワークフローによるオーケストレーションを追加する、Claude Code独自の機能です。
まとめ
Claude effortは、応答のトークン消費と品質をトレードオフするための5段階の設定です。既定のhighから始め、対応モデルと用途に応じてxhigh・maxで品質を、medium・lowでコストと速度を調整します。API・Claude Code・Agent SDKのどこから設定しても考え方は共通ですが、モデルを乗り換えたときは以前の設定を使い回さず、evalで確認し直すのが安全です。Claude Code上での具体的な操作方法や/modelとの連携は、前段で紹介した関連記事を参照してください。