Extended Thinking (拡張思考)
Claude には、回答する前に 頭の中でじっくり考える モードがあります。これを Extended Thinking (拡張思考) と呼びます。 難問に対する正答率が上がる代わりに、トークン (= 料金) と待ち時間が増えます。
📝 たとえるなら「計算用紙」 試験で難しい問題を解くとき、いきなり答えを書かずに 計算用紙で途中式を書きますよね。 Extended Thinking は、Claude に計算用紙を渡してから答えさせる仕組みです。 計算用紙に書いた分も「書いた量」としてカウントされる (= 課金される) 点も、実はそっくりです。
2026 年の書き方: adaptive thinking (適応思考)
以前は「計算用紙を何枚まで使ってよいか」を人間が 数字 (budget_tokens) で決めていました。
今は Claude 自身が「この問題は用紙が要るか・何枚要るか」を判断 します。これを adaptive thinking (適応思考) と呼びます。
人間が決めるのは effort (頑張り度) だけです (→ ch4-l8)。
res = client.messages.create(
model="claude-sonnet-5",
max_tokens=16000,
thinking={"type": "adaptive", "display": "summarized"}, # 思考の要約を見たいとき
output_config={"effort": "high"}, # 頑張り度: low〜max
messages=[{"role": "user", "content": "次の問題を解いて..."}],
)
モデルごとの違い (ここだけ押さえれば OK)
| モデル | thinking を書かなかったら? | 備考 |
|---|---|---|
| Fable 5.1 / Opus 5.5 | 常に考える (オフにできない) | 深さは effort だけで調整 |
| Opus 5 / Sonnet 5 | 考える (adaptive が既定) | |
| Opus 4.8 / 4.7 | 考えない | 使うなら {"type": "adaptive"} を明示 |
| Haiku 4.5 | 考えない | 旧方式 budget_tokens で有効化 (下記) |
🧭
budget_tokens方式は Opus 4.7 以降と Claude 5 世代では 400 エラー になります。ネットの古い記事のコードをコピペするときは要注意です。
旧方式 (Haiku 4.5 など): budget_tokens
Haiku 4.5 のように adaptive に対応していないモデルでは、今も「計算用紙の枚数」を数字で渡します。
res = client.messages.create(
model="claude-haiku-4-5",
max_tokens=8000,
thinking={"type": "enabled", "budget_tokens": 4000}, # 思考に使えるトークン上限
messages=[{"role": "user", "content": "次の問題を解いて..."}],
)
budget_tokensは 1024 以上 かつmax_tokensより小さく。思考もmax_tokensの中でカウントされるので、答えを書く分の余白を残す
思考内容を読む
content に thinking ブロックが返ります。
for block in res.content:
if block.type == "thinking":
print("[思考の要約]", block.thinking)
elif block.type == "text":
print("[最終回答]", block.text)
👀 最近のモデルは「思考を見せない」が既定です。Fable / Opus 5 / Sonnet 5 などでは、何も指定しないと
thinkingブロックの中身は 空文字 で返ります (考えてはいるし、課金もされている)。 中身を読みたいときはdisplay: "summarized"を付けると 要約 が読めます。生の思考そのものは返ってきません。 画面に「考え中…」を出すアプリでは、これを付けないと 長い沈黙に見えてしまう ので注意。
いつ使うか
✅ 使うべき: - 数学・パズル・複雑な推論 - バグの根本原因分析 - マルチステップの計画立案 - 安全性の高い判断 (拒否すべきか吟味) - 多変数の最適化問題
❌ 使うべきでない (effort を low にする or 思考オフにできるモデルならオフ):
- 単純な Q&A や生成
- レイテンシが厳しい UI
- 大量バッチで合計コストを抑えたいとき
通常 CoT との違い
| プロンプト CoT | Extended Thinking | |
|---|---|---|
| 制御 | プロンプトで指示 | API パラメータ (thinking / effort) |
| 出力に思考が混ざるか | 混ざる (タグで分離) | 別ブロックで自動分離 |
| 見せる・隠す | 自分で除去 | 既定で隠れている (要約は取得可) |
| 訓練 | 一般応答 | 思考専用に訓練済み |
注意
- 思考も 出力トークンとして課金 されます。effort を上げるほど計算用紙の枚数が増えるイメージ。
- 思考の要約を そのままユーザーに見せるかは設計次第。長すぎる/誤解を招くこともある。
temperatureなどのサンプリング設定は、最新モデル (Opus 4.7 以降・Claude 5 世代) では 指定すると 400 エラー。「ランダムさを調整する」発想自体が古くなりつつあります。
Tool Use と組み合わせる
Extended Thinking 中に ツールを呼ぶ計画 を立てさせることも可能です。 最近のモデルは「考える → ツールを使う → 結果を見てまた考える」を 1 回の応答の中で繰り返せます (interleaved thinking)。 複雑なエージェントワークフローでは強力な組み合わせです。
試す
簡単な推論問題で見比べましょう。「ステップを示して」と頼むのは プロンプト CoT (計算用紙を答案用紙に書かせる方式) です。
ある工場で、3 つの機械 A・B・C が部品を作っています。A は 2 分に 1 個、B は 3 分に 1 個、C は 5 分に 1 個作ります。3 台同時に稼働して 60 分で何個できますか?ステップを示してから答えてください。🎪 本物の Extended Thinking の「計算用紙」を見てみたい人は、wow ツアーのステーション 4 で実演できます (ログインが必要)。