拡張思考って何のこと?
Claudeに何かを頼むと、たいていはすぐに答えが返ってきます。ところが難しい問題では、答える前に「考える時間」を長めに取ったほうが精度が上がる。この「答える前にじっくり考える」動きを明示的に強めるのが拡張思考(Extended Thinking)です。
身近な例で言うと、数学のテストで暗算だけで答えを書く人と、余白に途中式を書いてから答える人の違いに近いです。簡単な足し算なら暗算で十分ですが、複雑な文章題だと途中式を書いた人のほうが正答率は上がりますよね。拡張思考は、Claudeに「余白に途中式を書いてから答えて」とお願いするようなものだと思ってください。
なぜわざわざ「考えさせる」必要があるのか
正直、最初は「AIなんだから常に全力で考えればいいのでは?」と思うかもしれません。でも考える時間を長く取るということは、それだけ処理に時間がかかり、コストもかかるということです。「今日の日付を教えて」みたいな質問に何十秒も熟考されても困ります。
だから普段は素早く答え、必要なときだけ思考の量を増やす、という使い分けになっています。
通常の応答
短い質問、単純な編集、決まりきった作業。速くて軽い。ちょっとした修正やファイルの中身の確認などはこちらで十分です。
拡張思考を使う場面
設計方針を決める、原因の見当がつかないバグを追う、複数の選択肢を比べる。時間はかかるが、筋の通った答えが返りやすい。
Claude Codeでの使い方
Claude Codeでは、プロンプトの中で「よく考えて」といった意図を伝えることで思考量を増やせます。英語の think や think hard、ultrathink といった言い回しが、思考の深さの段階を示す合図としてよく使われます。
> このバグの原因を think hard して調べてください
ポイントは、指示そのものを丁寧に書くことです。「よく考えて」とだけ言っても、何について考えればいいのかが曖昧だと、じっくり考えた末に的外れな答えが返ってきます。「どのファイルを見てほしいか」「何を判断してほしいか」を添えたほうが効果が出ます。
使うときに気をつけたいこと
まず、待ち時間が伸びます。数十秒黙っていることもあるので、固まったと勘違いして止めてしまわないように。
それから、深く考えたからといって必ず正解が出るわけではありません。前提となる情報が間違っていれば、丁寧に考えた分だけ、もっともらしい間違いが返ってきます。読む側のチェックはやはり必要です。
そして全部の質問に付ける必要はまったくありません。「これは自分でも迷うな」と感じた問題にだけ使う、くらいがちょうどいい距離感です。
どんなときに効くか、具体例で
- 既存のコードにどう新機能を組み込むか、複数のやり方を比べたいとき
- 再現条件がはっきりしないバグの原因を、コード全体から推理してほしいとき
- データベースの設計やディレクトリ構成など、後から変更しづらい判断をするとき
逆に「この関数にコメントを付けて」「変数名を統一して」のような作業では、深く考えさせても得られるものはほとんどありません。
使い分けの感覚を掴む
慣れてくると、「これは即答でいい」「これは考えてもらったほうがいい」という判断が自然にできるようになります。人に相談するときと同じで、雑談レベルの質問と、腰を据えて相談したい案件を分けている感覚に近い。その切り替えスイッチが拡張思考だと考えると分かりやすいはずです。
このページは役に立ちましたか?