Chain of Thoughtプロンプトとは何か、AIが段階的にどう推論するかは、この概念を単なるAIの流行語としてではなく、実際の判断に結び付けると理解しやすくなります。このAI Tools Radarガイドでは、実務上の考え方、重要なトレードオフ、ツールやワークフローを導入する前に検討すべき問いに焦点を当てます。

Chain of Thoughtプロンプトは、最終回答を出す前に中間的な推論手順を生成するようモデルへ指示するAI手法です。一つのプロンプトを、短い論理的推論の流れへ変えます。タスクに複数の手順が含まれる場合、大規模モデルと小規模モデルの両方で機能します。この方法はWeiらによる2022年の論文「Chain-of-Thought Prompting Elicits Reasoning in Large Language Models」で発表され、その後、数学、論理、計画に関する質問の標準的な手法になりました(GoogleのAI進歩を扱ったThe Vergeの記事も参照)。

この手法が最初に注目されたのは、直接回答に隠れた計算ミスが含まれることが多かったためです。各手順を書かせることで、研究者はベンチマーク上の誤りを減らしました。現在では同じパターンが、コーディングアシスタント、調査ツール、意思決定支援システムに使われています。

• Chain of Thoughtプロンプトは、最終回答の前に各推論手順をモデルに示させます。 • ゼロショット版は、例を与えず「段階的に考えてください」という文を加えます。 • Few-shot版は、手順と回答の両方を含む、解答済みの例を二〜三件与えます。 • Tree of Thoughtへの拡張は、複数の推論分岐を探索し、必要に応じて引き返します。 • 複数ステップのタスクで精度を高めますが、トークン費用と多少の遅延が増えます。

Chain of Thoughtプロンプトは、結論に達する前に、明示的な推論手順の連なりを生成するようモデルへ求めます。最終回答も表示されますが、そこへ至る道筋も見えるようになります。各手順は自然言語で書かれるため、利用者や別のシステムが論理を確認できます。基盤モデルの重みを変えず、テキスト、コード、記号的な問題で利用できます。

この方法は三つの特徴で定義されます。第一に、推論をモデル内部に隠さず、書き出す必要があります。第二に、人が検証できる論理的な順序で手順を並べます。第三に、通常は「したがって」や「回答」のような明確な目印の後に、最後の行で最終回答だけを示します。

プロセスは、見える推論を求める、慎重に書かれた指示から始まります。次にモデルは、問題を順序付きの部分へ分解した短い文章を生成します。各部分は、次の手順へ渡す中間結果で終わります。最後の手順が終わると、モデルは回答を独立した行に示します。

手順1:プロンプトの作成—見える手順を求める。 利用者は、「結論を出す前に各手順を書いてください」のような指示を加えます。この一文で、モデルは直接回答するパターンから、手順を示すパターンへ移ります。モデルは、手順を含む解答例を数多く学習しているため、この指示が機能します。

手順2:中間生成—順序付きの推論を作る。 モデルは、人が紙に書く途中計算をまねた番号付きまたは箇条書きの行を出力します。各行には、元の問いから得た事実または小さな計算を記します。モデルは自分の前の手順を再利用し、追いやすい短い連鎖を作ります。

手順3:回答の抽出—最終結果を分離する。 推論の連鎖が終わると、モデルは結論を表示します。開発者は抽出しやすくするため、「答えは」のような終了用の語句を加えることがあります。この分離により、後続のコードは連鎖全体を読まず、回答だけを解析できます。

初心者は、紙に書く長除法を想像すると理解しやすくなります。モデルは商へ一気に進まず、引き算と桁を下ろす各手順を書きます。文章量が増えてトークン使用量も増えますが、複数の演算を含むタスクでは、見えるようになることで正確さが高まります。

実際の成功例:プロンプト=「Q:Rogerはテニスボールを5個持っています。さらにテニスボールを2缶買いました。各缶には3個入っています。今、ボールは何個ありますか?段階的に考えてください。」モデル出力=「Rogerは最初に5個持っていた。2缶×1缶当たり3個=6個。5+6=11。回答:11。」(Weiらのベンチマークで正解)。

単純な想起での失敗例:プロンプト=「Q:フランスの首都はどこですか?段階的に考えてください。」モデル出力=「フランスはヨーロッパの国です。最大都市は名所で知られるパリです。したがって首都はリヨンのはずです。」(もっともらしいものの誤った中間手順であり、Chain of Thoughtが助ける代わりに誤りを加えた)。

再帰関数をデバッグするプログラマーは、最終出力の前に各戻り値を一覧にするようモデルへ依頼できます。並べられた呼び出しから、スタックの深さが想定を超える場所が分かります。

金融アナリストは、すべての収益と支出の項目を示す月次キャッシュフロー予測を依頼できます。見える手順により、モデルが最終値を合計する前に手動で調整できます。

幾何学の証明を解く学生は、定理の記述前に各補題を受け取れます。順序付きの補題は教科書の解答と対応し、自分の作業を確認する助けになります。

サプライチェーンの担当者は、各都市への訪問と距離計算を示した配送ルートを依頼できます。推論の連鎖があれば、プロンプト全体を再実行せずに二つのルートを簡単に比較できます。

Chain of Thoughtプロンプトでよくある質問。

Q:Chain of Thoughtプロンプトは、どの規模のモデルでも機能しますか?

A:大規模モデルほど大きな改善を示します。小規模モデルも単純な計算では向上しますが、長い問題では中間手順が弱くなることがあります。

Q:Chain of Thoughtプロンプトは、標準的なプロンプトとどう違いますか?

A:標準的なプロンプトは最終回答だけを求めます。Chain of Thoughtプロンプトは、問いと回答の間に見える推論手順を示すよう、明示的に求めます。

Q:Chain of Thoughtプロンプトはコストを増やしますか?

A:はい。追加の推論トークンにより、入力と出力の両方が長くなります。複雑なタスクでの精度向上と比べると、追加費用は通常わずかです。

Q:Chain of Thoughtプロンプトはハルシネーションを減らせますか?

A:計算手順を飛ばすことで生じる事実誤認を減らします。ただし、モデルが中間の事実を作り出す可能性は残るため、すべてのハルシネーションをなくすことはできません。

Q:どのような場合にTree of Thoughtへの拡張を使うべきですか?

A:一つの直線的な連鎖が行き止まりに達する可能性がある場合に選びます。分岐型の方法は複数の経路を探索し、早い段階の確認に失敗したものを除外します。

Q:Chain of Thoughtプロンプトの主な限界は何ですか?

A:単純な事実想起を必要とするタスクでは、Chain of Thoughtは失敗するか、ほとんど価値を加えません。手順を強いることで、もっともらしくても誤った中間の主張をモデルが生成する可能性があります。トークン費用と遅延も増えます。モデルに基礎的な能力がなければ、追加の連鎖は正解ではなく、自信に満ちた誤りを表面化させるだけかもしれません。

実務上の判定基準は、このアプローチが、出典、コスト、失敗モードを見えにくくすることなく、反復可能な作業を改善するかどうかです。代表的なタスクから始め、誤りが重大になる場所には人による確認点を残し、モデルや製品の変化に合わせて結果を見直してください。

編集方針

一次情報、製品ドキュメント、実際の利用シーンをもとに、あなたのワークフローに合うツールかどうかを判断しやすくする記事を作成しています。

参考資料

ツールディレクトリを見る