今回は、生成AI(LLM:大規模言語モデル)の回答精度を飛躍的に向上させるプロンプティング手法「Chain-of-Thought(チェイン・オブ・ソート / CoT)」について解説します。
AIに複雑な計算や論理的な問題を質問した際、間違った答えが返ってきて困った経験はないでしょうか。Chain-of-Thoughtは、AIに「段階的に思考させる」ことで、複雑な問題に対する推論能力を引き出し、正確な回答を導き出すための重要な技術です。
Chain-of-Thoughtを一言でいうと
Chain-of-Thoughtとは、「AIに途中式や思考のステップ順を追って出力させることで、複雑な問題の正解率を高めるプロンプト(指示文)手法」のことです。
日本語では「思考の鎖」と訳され、最終的な答えだけを求めずに、答えに至るまでの過程(ステップ・バイ・ステップ)を指示の中や回答の中に組み込むことが特徴です。
詳細
Chain-of-Thought(以下、CoT)は、2022年にGoogleの研究者らによって発表された論文で提案されたプロンプティング技術です。
従来の大規模言語モデルは、文章の次に来る単語を確率的に予測して生成する仕組みであるため、複雑な数学の文章題や多段階の論理的思考が必要なタスクにおいて、いきなり最終回答を出力させようとすると計算ミスやロジックの飛びが発生しやすくなっていました。
CoTでは、人間が難しい問題を解く際に裏紙に途中式やメモを書いて段階的に整理するのと同様の手順をAIに実行させます。プロンプト内で「考え方の例(思考プロセスが含まれた例題)」を提示するか、回答文の中で思考ステップを出力させることで、AIの推論精度を大幅に向上させます。
何を解決できるか
CoTを導入することで、主に以下の3つの課題を解決できます。
- 算数・数学・論理パズルの回答精度の低さを解消: 複数ステップの計算や思考が必要な問題での間違いを劇的に減らせます。
- AIの回答のブラックボックス化を防ぐ: 回答に至るプロセスの途中式や思考ロジックが表示されるため、どこで間違えたかを人間が追跡・検証しやすくなります。
- モデルの再学習なしで性能を大幅向上: AIモデル自体を再学習(ファインチューニング)することなく、プロンプトの出し方を工夫するだけで精度を改善できます。
CoTの主な手法:Few-shot CoTとZero-shot CoT
CoTプロンプティングには、大きく分けて2つのアプローチが存在します。
1. Few-shot CoT(思考プロセス付きの例題を見せる)
質問の前に「問い+思考の過程+答え」というセットの例題(Few-shot)をプロンプト内にいくつか提示する方法です。AIは提示された例題の「考え方」のパターンを真似して、新しい問題に対してもステップ・バイ・ステップで思考して回答します。
2. Zero-shot CoT(魔法の言葉を添える)
例題を用意せず、質問の末尾に「ステップバイステップで考えてみましょう(Let’s think step by step)」という指示フレーズを1行追加するだけの手法です。これだけでAIは内部的に思考ステップを出力するようになり、正解率が向上します。
CoTを使う際の注意点
非常に便利なCoTですが、使用時には以下の点に留意する必要があります。
- 簡単な質問では効果が薄い・逆効果になる場合がある: 単純な事実確認や短い質問に対してCoTを使うと、不必要な思考プロセスが出力され、出力トークン数の増大(コストや応答時間の増加)につながります。
- 小規模なモデルでは効果が出にくい: パラメータ数が小さいAIモデルの場合、思考プロセス自体で間違いを犯してしまい、正しい結論に達しないケースがあります。一定以上の規模を持つモデルで真価を発揮します。
似た用語との違い
プロンプトエンジニアリングにおける関連用語との違いを表にまとめました。
| 比較項目 | Chain-of-Thought(CoT) | Few-shot Prompting | Tree-of-Thoughts(ToT) |
|---|---|---|---|
| 概要 | 思考のステップ(過程)を順番に出力させる手法 | 思考過程は含めず、「入力と出力の例」だけを複数提示する手法 | 思考を1本の直線ではなく「木の枝分かれ」のように複数展開・比較する手法 |
| 思考の構造 | 一本道の直線的な思考(ステップ1→2→3) | 構造化された指示のみ(例からのパターン学習) | 分岐・探索・評価を行う木構造の思考 |
| 適したタスク | 計算、推論、論理的文章題 | 特定のフォーマット変換、分類タスク | チェス、囲碁、複雑な戦略の検討や創作活動 |
例題
問題
以下の文章の( ア )〜( ウ )に入る最も適切な語句を答えてください。
Chain-of-Thought(CoT)は、AIに最終的な答えだけでなく、( ア )のプロセスを順を追って出力させる技術です。特別な例題を与えずに「ステップバイステップで( イ )」という魔法の指示文を付与する手法を( ウ )-shot CoTと呼びます。
解答
ア:思考(推論) イ:考えてみましょう(考える) ウ:Zero(ゼロ)
解説:
CoTは問題解決に至る「思考過程」を明示させる手法です。例題(shot)を一切与えずに「ステップバイステップで考えてみましょう(Let’s think step by step)」と指示する手法は「Zero-shot CoT」と呼ばれます。
問題
○×問題
【問題】
Chain-of-Thought(CoT)を適用するためには、AIモデルの内部重みを更新するためのファインチューニング(再学習)が必須である。〇か×か。
解答
正解:×
解説:
CoTはプロンプトエンジニアリングの手法の一つであり、モデルの再学習(ファインチューニング)は不要です。AIに入力するプロンプト(指示文)の書き方を工夫するだけで実行できます。
選択問題
【問題】
Zero-shot CoTにおいて、AIの推論能力を引き出すためにプロンプトの末尾に付け加える最も適切なフレーズはどれですか。
① 「答えだけを簡潔に出力してください」
② 「ステップバイステップで考えてみましょう」
③ 「過去のデータベースをすべて検索してください」
④ 「以下の例題を参考にフォーマットを統一してください」
解答
正解:②
① 不正解。思考過程を省略させる指示であり、CoTの効果が得られなくなります。
② 正解。Kojimaら(2022)の論文で効果が実証されたZero-shot CoTの代表的なプロンプトフレーズです。
③ 不正解。RAG(検索拡張生成)や検索指示に関する記述であり、CoTとは直接関係ありません。
④ 不正解。通常のFew-shotプロンプティングの説明に近い記述です。
ひっかけ問題
【問題】
Chain-of-Thought(CoT)に関する説明として、最も不適切なものを1つ選んでください。
① 算数の文章題や論理推論など、複数ステップの処理が必要なタスクで高い効果を発揮する。
② 思考プロセスを出力させるため、生成されるトークン数(文字数)が増加する傾向がある。
③ どのような規模の言語モデルであっても、一律で同じ割合の精度向上効果が得られる。
④ 思考の過程が表示されるため、人間のチェック(人間による不具合の分析)が容易になる。
解答
正解:③
① 正しい記述。文章題や計算・推論タスクにおいて特に大きな成果を上げます。
② 正しい記述。思考の過程を文章として出力するため、総出力トークン数が増加します。
③ 誤り(これが正解)。CoTによる精度向上効果は大規模なモデル(十分なパラメータ数を持つモデル)で顕著に表れ、非常に小さなモデルでは途中の思考プロセス自体を誤るため十分な効果が得られないことが分かっています。
④ 正しい記述。ブラックボックス化を防ぎ、回答の検証可能性が高まるというメリットがあります。
関連用語
| 用語 | 簡易的な説明 |
|---|---|
| Prompt Engineering | AIから望ましい出力を得るために、入力文(プロンプト)を最適化・設計する技術の総称。 |
| Few-shot Prompting | プロンプト内にいくつかの入出力例(解答例)を提示して、AIにタスクを理解させる手法。 |
| Zero-shot CoT | 例題を使わず「段階的に考えて」などの言葉を添えるだけで思考プロセスを促すCoT手法。 |
| Tree-of-Thoughts(ToT) | CoTを発展させ、複数の思考の選択肢(枝)を同時に生成・評価して最適解を探索する手法。 |



コメント