Claude Opus 5.5 の effort はどれを選ぶ?Claude Code の /effort 設定、API パラメータの書き方と実測(low から max まで)

Opus 5.5 の effort(努力レベル)は low、medium、high、xhigh、max の 5 段階で、デフォルトは medium です。最近、xhigh や max から high や medium に下げて「品質はほぼ同じで token はずっと少ない」という声が増えています。本記事では Anthropic 公式ドキュメントと Artificial Analysis のデータで各レベルの違いを確認し、Claude Code での /effort・--effort・settings.json の設定方法、API の output_config.effort の書き方、よくあるエラー、当サイトの Key で測った所要時間をまとめます。

12 分钟阅读
Claude Opus 5.5 の effort はどれを選ぶ?Claude Code の /effort 設定、API パラメータの書き方と実測(low から max まで)

結論から:effort は Opus 5.5 がどれだけ考え、どれだけ自分で検証するかを決める設定です。low、medium、high、xhigh、max の 5 段階があり、デフォルトは medium で、Opus 5 のデフォルト high より 1 段低くなっています。

  • 範囲がはっきりした日常の開発(機能の実装など)はデフォルトの medium で十分です。既存コードのバグ修正やエッジケースの多い作業は high に、モデルが自分で何度も検証する数十分以上の長いタスクには xhigh や max を使います。これは Claude Code 公式ドキュメントの分け方です。
  • ユーザーの報告によると、Opus 5.5 を xhigh から high に下げた多くの人が「同等かむしろ良い」と感じています。Artificial Analysis の計測では、評価一式を回すのに xhigh は約 100M、high は 56M の出力 token を使い、約 1.8 倍の token で 5 ポイント高い(57 対 52)という結果です。
  • Claude Code の落とし穴:~/.claude/settings.json の最上位にある古い書き方 "effortLevel": "high" は Opus 5.5 には効かず、medium のまま動きます。Opus 5.5 を選んだ状態で一度 /effort high を実行すると、Claude Code がモデルごとに modelSettings へ保存します。私たちの実測でも確認しました。
  • API では "output_config": {"effort": "high"} を送ります。省略すると medium です。

API Key を作成して、Claude Code・Codex・Cursor で Opus 5.5 を使う →

5 つの effort レベルの意味

effort は厳密な token 上限ではなく、そのタスクにどれだけ力を使うかをモデルに伝えるものです。考える長さだけでなく、返答の量やツール呼び出しの回数にも影響します。公式ドキュメントによると、低いレベルでも十分難しい問題では考えますが、考える量は減ります。Opus 5.5 は adaptive thinking が常にオンで切れないため、思考の深さを決める主なつまみが effort です。

下の表は、Anthropic の推奨と、Artificial Analysis が Intelligence Index v5 を各レベルで回した結果を並べたものです(low / medium、high、xhigh / max の比較ページ参照):

レベルAnthropic が勧める用途AA スコア評価一式の出力 token1 問あたりの平均時間
lowブレスト、たたき台、名前の変更などの小さな修正、サブエージェント35約 21M約 153 秒
medium(デフォルト)範囲がはっきりした日常の開発、新機能の実装など48約 43M約 347 秒
high検証が重要な作業、エッジケースが多い作業、既存コードのバグ修正など52約 56M約 474 秒
xhighより深い推論、30 分以上の長いタスク57約 100M約 793 秒
max脆弱性探しなど Claude に任せきりにする難題。考えすぎることがある58約 218M約 1141 秒

high から xhigh へは約 1.8 倍の token で 5 ポイント、xhigh から max へは token が 2 倍以上になって 1 ポイントです。AA は medium、high、xhigh、max の 4 つがいずれも「知能と 1 問あたりの負担」のパレート最前線にあるとしており、この 4 つにはそれぞれ向いた場面があり、どれか 1 つが一番というわけではありません。

なぜ effort を下げる人が増えているのか

話題になったのは 10 月 31 日です。Theo (t3.gg) の投稿によると、同僚の Julius に勧められて 1〜2 週間前に Opus 5.5 を extra high から high に変えたところ「ほぼ毎回こちらの方が良い」とのことです。翌日には effort レベルのランキング画像も投稿し、high が 1 位、medium と xhigh が次点、max が最下位でした。

ほかの代表的な声:

  • @zwb44 によると、AA のデータをグラフにして「xhigh は 1.8 倍の token で 5 ポイント増」とまとめ、自分も high を常用にしたら使用量と速度の差がはっきりわかったそうです。
  • swyx によると、スループット重視なら low に自己レビューのループを組み合わせる方がよいとのことです。
  • @jayleaton によると、95% の時間は medium で、CUDA カーネルの難しい最適化のときだけ high を使っています。
  • 一方で、コーディングには high か xhigh でないと足りず、low は弱すぎるという反対意見もあります。

X の話題まとめには「Anthropic は多くの作業で high を最適なバランスとして推奨」という一文もあります。公式ドキュメントを確認しましたが、Opus 5.5 についてこの記述は見つかりませんでした。Opus 5.5 のデフォルトと出発点は medium で、「high が品質と token 効率の最適なバランスになることが多い」という一文は Opus 4.7 の推奨にあるものです。本記事は Opus 5.5 のドキュメントに沿って書いています。

Anthropic 公式の説明

  • medium から始め、Opus 5 の設定を持ち込まない:Opus 5.5 プロンプトガイドによると、Anthropic のテストでは Opus 5.5 の medium がコーディングと知的作業の評価で Opus 5 の high と同等以上で、いくつかのコーディング評価では low もそれに近い結果でした。同じレベルでも Opus 5.5 は 1 ターンあたり Opus 5 より多く考え、特に xhigh と max で顕著です。古い設定のままだとターンが長くなり token も増えます。
  • xhigh と max は効果を測ってから:自分のタスクで複数のレベルを試してから決めるよう勧めています。考える量を減らしたいなら、プロンプトで指示するより先に effort を下げる方が確実です。
  • ブログ著者の使い方:公式ブログ claude.dev で Thariq Shihipar は Spending your effort の中で、新機能では Claude に仕様についてインタビューさせ、low で実装し、自分で確認してから high で検証とテストをする流れを紹介しています。彼のテストでは effort が高いほど Claude はエッジケースを多く試し、自分で判断することも増えました。low は早く叩き台を返すので、人がそばで見ながら進める作業に向いています。

ステップ 1:API Key を作成して Claude Code に接続

  1. aicodewith.ai に登録してログインし、キー管理画面で Key を作成し、作成時に表示される文字列をすべてコピーします。
  2. ターミナルで URL と Key を設定し、Opus 5.5 で Claude Code を起動します:
bash
export ANTHROPIC_BASE_URL="https://api.aicodewith.ai"
export ANTHROPIC_AUTH_TOKEN="YOUR_API_KEY"
claude --model claude-opus-5-5

設定を保存したい場合、Windows の場合、ログインの競合が起きた場合は Claude Code をサードパーティ API に接続する方法を参照してください。Codex や Cursor でも Claude モデルを選べます。接続方法は同じ記事にあります。

ステップ 2:Claude Code で effort を設定・切り替える

Claude Code の下部のステータス行に現在のレベルが表示されます(例:◐ medium · /effort)。よく使うコマンド:

text
/effort status      # Effort level: auto (currently medium)
/effort high        # Set effort level to high (saved as your default for new sessions)
/effort             # interactive slider: low / medium / high / xhigh / max
/effort auto        # clear the saved level for the current model
  • /effort high のようにレベルを直接書く方法や、/effort スライダー・/model 選択画面で Enter を押す方法は、そのモデルのデフォルトとして保存され、再起動後も残ります。スライダーで s を押すと今のセッションだけに適用されます。
  • max は保存されず、今のセッションだけに適用されます(環境変数で設定した場合を除く)。
  • 新しいレベルは次に送るメッセージから有効になります。

保存済みのデフォルトを変えずに一時的に切り替える方法:

bash
# one session only
claude --model claude-opus-5-5 --effort high

# headless run (-p), this run only
claude -p "Fix the failing test" --model claude-opus-5-5 --effort low

# environment variable, overrides everything else
export CLAUDE_CODE_EFFORT_LEVEL=high

Claude Code がレベルを決める優先順位は、環境変数 CLAUDE_CODE_EFFORT_LEVEL、セッション内で /effort や /model で選んだレベル、起動オプション --effort、settings に保存したレベル、モデルのデフォルトの順です。

落とし穴:古い effortLevel は Opus 5.5 に効かない

以前の /effort は ~/.claude/settings.json の最上位に effortLevel を 1 行書いていました。現在はモデルごとに保存され、/effort high を実行するとファイルはこうなります(実測で得た内容):

json
{
  "modelSettings": {
    "claude-opus-5-5": {
      "effortLevel": "high"
    }
  }
}

ユーザー設定がまだ古い書き方のままだと:

json
{
  "effortLevel": "high"
}

実測では、このファイルで Opus 5.5 を起動すると /effort status は Effort level: auto (currently medium) と表示され、古い high は無視されました。同じファイルで Opus 5 を起動すると high でした。これは公式ドキュメントと一致します。ユーザー設定の最上位にある effortLevel は Opus 5.5 以降のモデルには数えられず、プロジェクト・ローカル・管理設定の最上位にある effortLevel はすべてのモデルに適用されます。Opus 5 から Opus 5.5 に移ったら、まず /effort status で実際のレベルを確認しましょう。

effort は skill やサブエージェントのファイルの frontmatter にも書けるので、特定の skill やサブエージェントだけ別のレベルで動かせます。1 ターンだけ深く考えさせたいときは、セッションのレベルを変えずにプロンプトに ultrathink と書けば済みます。

ステップ 3:API リクエストでの effort の書き方

effort は output_config の中に書き、beta ヘッダーは不要です。当サイトの Key を使う curl の例:

bash
curl https://api.aicodewith.ai/v1/messages \
  -H "x-api-key: YOUR_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-opus-5-5",
    "max_tokens": 32000,
    "output_config": { "effort": "high" },
    "messages": [{ "role": "user", "content": "Write parse_duration(s) ..." }]
  }'

Python SDK:

python
import anthropic

client = anthropic.Anthropic(base_url="https://api.aicodewith.ai")
resp = client.messages.create(
    model="claude-opus-5-5",
    max_tokens=32000,
    output_config={"effort": "high"},   # low / medium / high / xhigh / max
    messages=[{"role": "user", "content": "Write parse_duration(s) ..."}],
)
text = "".join(b.text for b in resp.content if b.type == "text")  # thinking block comes first

注意点:

  • output_config.effort を送らなければモデルのデフォルトで、Opus 5.5 は medium です。"medium" を明示しても省略しても動作はまったく同じです。
  • レベルが高いほど max_tokens を大きくします。思考の token も max_tokens に含まれるためです。Anthropic によると、長いエージェント型コーディングでは Opus 5.5 の上限である 128000 がうまくいったそうです。
  • content の最初のブロックは多くの場合 thinking です。返答は最初のブロックを取るのではなく type == "text" のブロックを探して読みます。
  • 会話の途中で最上位の effort を変えるとプロンプトキャッシュが無効になります。Opus 5.5 はメッセージ単位での effort 変更(beta、ヘッダー mid-conversation-output-config-2026-07-01)に対応しており、キャッシュを保てます。書き方は公式ドキュメントを参照してください。

実測:当サイトの Key で各レベルを試す

テスト日は 2026 年 11 月 1 日、モデルは claude-opus-5-5、すべて当サイトの Key 経由です。

API:同じ問題を各レベルで

課題は "1h30m" や "2d4h" のような文字列を秒数に変換する parse_duration(s) 関数で、大文字小文字、空白、順序違い、単位の重複、小数、負の数などの不正な入力を扱う必要があります。各レベルのコードを 25 件のケース(正常 10 件、不正 15 件)で採点しました:

effort所要時間出力 token25 ケース
指定なし(デフォルト)約 9.8 秒411すべて合格
low約 9.7 秒410すべて合格
medium約 10.7 秒512すべて合格
high約 12.1 秒473すべて合格
xhigh約 19.8 秒798すべて合格
max約 258.5 秒5980すべて合格

指定なしと low がほぼ同じなのは、この問題が Opus 5.5 には簡単で、デフォルトでも少ししか考えないためです。max では 4 分以上考え、出力 token は high の 10 倍以上でしたが、結果は同じ 25/25 でした。max を非ストリーミングで送ったときは 4 分あまりで接続が切れ、ストリーミング("stream": true)に変えると結果を受け取れました。xhigh と max はストリーミングで使うことをお勧めします。

Claude Code:1 つのバグを 4 つのレベルで修正

区間をマージする関数にバグがあり、接している区間や隣り合う区間がマージされず、6 件中 2 件のテストが失敗します:

python
# ranges.py
def merge_ranges(ranges):
    """Merge overlapping or touching [start, end] integer ranges."""
    ranges = sorted(ranges)
    out = []
    for s, e in ranges:
        if out and s < out[-1][1]:
            out[-1][1] = max(out[-1][1], e)
        else:
            out.append([s, e])
    return out

Claude Code 2.1.310 で low、medium、high、xhigh をそれぞれ実行しました:

bash
claude -p "Fix merge_ranges in ranges.py so all tests in test_ranges.py pass, then run python3 -m unittest. Reply with one short summary line." \
  --model claude-opus-5-5 --effort high \
  --permission-mode acceptEdits --allowedTools "Bash(python3 -m unittest*)"
effortEnter から結果まで結果
low約 8.8 秒6 件すべて合格
medium約 10.2 秒6 件すべて合格
high約 14.2 秒6 件すべて合格
xhigh約 30.3 秒6 件すべて合格

4 つのレベルとも同じ 1 行を変更しました:

diff
-        if out and s < out[-1][1]:
+        if out and s <= out[-1][1] + 1:

ユーザーの声と一致する結果です。範囲がはっきりしていてテストもある小さなタスクでは、レベルを上げても遅くなるだけで結果は良くなりません。 レベルの差が出るのは、エッジケースが多い、既存のテストがない、モデル自身の検証が必要といったタスクです。そのときにレベルを上げましょう。

API Key を作成して、自分のタスクで複数のレベルを試す →

タスク別のレベルの選び方

タスク最初に試すレベルメモ
質問、名前の変更、下書き、サブエージェントlow速い。人が見ながらその都度修正
範囲がはっきりした機能追加、日常の開発medium(デフォルト)Anthropic によると Opus 5 の high 相当
既存コードのバグ修正、テストで検証する作業highユーザーの報告によると、xhigh から下げた人の多くはこれで十分
数十分以上の長いタスク、移行、監査xhightoken がかなり増える。max_tokens を大きくし、ストリーミングで
セキュリティ監査など Claude に任せきりにする難題maxAnthropic は考えすぎに注意を促している。まず小さな範囲で

サブスクリプションの場合、レベルが高いほど token が増え、利用枠も早く減ります。API Key の場合、token 使用量はレベルとともに増え、リクエストごとの使用量は呼び出し履歴で確認できます。

よくあるエラーと質問

エラー「Opus 5.5 effort 必须为 low、medium、high、xhigh 或 max」

effort に "ultra" や "adaptive" を指定したところ、当サイトは次のように返しました(effort は low、medium、high、xhigh、max のいずれかでなければならない、という意味です):

text
HTTP 400
Opus 5.5 effort 必须为 low、medium、high、xhigh 或 max

有効なのはこの 5 つの名前だけです。adaptive は thinking のモードで effort のレベルではなく、Claude Code の ultracode も API のレベルではないので、どちらも output_config.effort には書けません。

high に設定したのに Opus 5.5 が medium のまま

多くの場合、上で説明した古い effortLevel の問題です。Opus 5.5 を選んだ状態で /effort high を実行し、/effort status で確認してください。環境変数 CLAUDE_CODE_EFFORT_LEVEL が設定されていないかも確認しましょう。これが最優先されます。

thinking disabled や budget_tokens で 400 になる

effort の公式ドキュメントと Opus 5.5 移行ガイドによると、Opus 5.5 は思考が常にオンで、thinking: {"type": "disabled"} や budget_tokens は公式 API で拒否されます。thinking フィールドを削除し、思考の深さは effort で調整してください。temperature、top_p、top_k も外します。

返答が途中で切れる、thinking だけで本文がない

max_tokens が小さすぎて思考で使い切っています。高いレベルでは max_tokens を大きくし、長いタスクはストリーミングにしてください。

Opus 4.6 や Sonnet 4.6 で xhigh を選んだ

この 2 つのモデルには xhigh がありません。Claude Code は選んだレベル以下で使える最も高いレベルに自動で下げるので、Opus 4.6 では xhigh が high として動きます。

Fast mode と effort は同じもの?

違います。effort はモデルがどれだけ考え検証するかを決めるもので、Fast mode は別のスイッチです。有効にする方法と向いている場面は Claude Opus 5.5 Fast Mode の使い方を参照してください。

Opus 5.5 を低いレベルで使うか、Sonnet 5.5 にするか

どちらも時間と token を節約できます。どちらが合うかはタスク次第なので、自分のタスクで両方試して比べてください。モデルの比較は Claude Sonnet 5.5 vs Opus 5.5 にまとめています。

関連記事

参考資料

相关文章

DeepSeek Harness Creator Mode の使い方:インストール、サードパーティ API 接続、初めてのプラグイン作成を実機検証

DeepSeek Harness Creator Mode の使い方:インストール、サードパーティ API 接続、初めてのプラグイン作成を実機検証

11 月 2 日、DeepSeek Harness 公式アカウントが Creator Mode を紹介しました。作りたいツールを一文で伝えると、エージェントがプラグインを書き、Harness にインストールし、読み込まれたかまで確認します。本記事では Creator Mode とは何か、npx での Harness の起動方法、OpenAI 互換のサードパーティ API(aicodewith の Base URL と Key)をつないで Claude・GPT・DeepSeek モデルを使う方法、Creator Mode で todo_scan プラグインを作る手順を、実際の出力、よくあるエラー、Claude Code / Codex での対応方法とあわせて解説します。

Claude Code の auto mode が中継経由で毎ターン失敗?2.1.317 でゲートウェイの 403/422 を修正(アップデートと検証)

Claude Code の auto mode が中継経由で毎ターン失敗?2.1.317 でゲートウェイの 403/422 を修正(アップデートと検証)

Claude Code 2.1.317(11 月 3 日リリース)は、ANTHROPIC_BASE_URL が LLM ゲートウェイを指し、そのゲートウェイがサーバー側の安全チェックに 403 や 422 を返すと auto mode が毎ターン失敗する問題を修正しました。変更点、影響を受けるサードパーティゲートウェイや中継の利用者、アップデートとバージョン確認、Base URL とキーの設定、auto mode の有効化、2.1.316 と 2.1.317 の比較検証、エラー対照表と FAQ をまとめます。

Claude Message Threads の使い方:Messages API メッセージスレッド公開ベータ、新しいメッセージだけ送信・初回トークン約 35% 高速化(Claude Code / API 検証)

Claude Message Threads の使い方:Messages API メッセージスレッド公開ベータ、新しいメッセージだけ送信・初回トークン約 35% 高速化(Claude Code / API 検証)

Anthropic は 11 月 2 日、Messages API の Message Threads(メッセージスレッド)を公開ベータにしました。最初のリクエストで会話全体を送ってスレッドを作り、以降は新しいメッセージと直前の応答の id だけを送ります。長い会話では最初のトークンが早く返りますが、トークン使用量と課金は変わりません。本記事では公式ドキュメントに沿って thread パラメータ、ベータヘッダー、5 分での失効と 404 時の再送を説明し、curl・Python・TypeScript の例を示します。さらに aicodewith の Key で検証した結果、aicodewith 経由では現在 thread フィールドが無視され、継続ターンで前の文脈が失われること、Claude Code には影響がないこと、代替の書き方とよくあるエラーをまとめます。