【プロンプト講座④】AIにもっと深く考えてもらうヒント

AI

皆さん、こんにちは!「下町AI探究者」のガジュマロです。

googleさんの技術資料、「Prompt Engineering」の内容をかみ砕いてお伝えするプロンプト講座を、以下の内容でお伝えしています。
なお、ご自身の興味や優先順位で、下記リンクから他の記事に飛んでいただいて大丈夫です!

前回の【AIにキャラ設定?!】では、AIに「役割」を与えたり、「ルール」や「状況」を伝えたりすることで、AIとの対話をもっとスムーズにする3つの工夫について見てきましたね。試してみて、「お、ちょっと反応が変わったぞ!」なんて発見はありましたでしょうか?

今回は、さらにAIの能力を引き出すための、ちょっと面白い「お願いのヒント」を2つご紹介したいと思います。これまでの「どう答えてもらうか」に加えて、「どう考えてもらうか」に焦点を当てた工夫です。

AIの思考力を引き出す? ちょっと賢い「お願い」のヒント2選

では、「どう考えてもらうか」とはどういうことでしょうか。
それには、2つのヒントがあります。

  1. 一歩引いて考えてもらう【ステップバックプロンプティング】
  2. 「どう考えたの?」も教えてもらう【思考の連鎖 CoT】

これらを意識すると、AIがただ答えるだけでなく、より深く、より慎重に考えてくれるようになるかもしれません。なんだかAIの「脳トレ」みたいで、ちょっとワクワクしますね! それでは、早速見ていきましょう。

ヒント1:一歩引いて考えてもらう【ステップバックプロンプティング】

皆さんは、何か難しい問題に取り組むとき、いきなり答えを出そうとせず、まず「そもそも、この問題で大事なことは何だろう?」とか「基本的な考え方はどうだったかな?」と、一歩引いて考えることはありませんか?

実は、AIにお願いする時にも、この「一歩引いて考える」というアプローチが有効な場合があるんです。これを「ステップバックプロンプティング(Step-back Prompting)」と呼びます。

どういうこと?

これは、いきなり具体的な質問や難しいお願いをするのではなく、まず、そのお願いに関連する、より大きな視点からの質問や、基本的な概念についてAIに問いかけてみる、という方法です。そして、そのAIの答え(一般的な考え方や原則)を踏まえた上で、改めて本来聞きたかった具体的な質問をする、という二段構えの頼み方なんですね。

なぜこれが効くの?

  • AIの知識を目覚めさせる: 事前に一般的な質問をすることで、AIの中にある関連知識や情報が活性化され、本題の質問に対する準備運動になるようです。
  • 広い視野で考える助けに: 具体的なことばかりに目を向けるのではなく、まず全体像や基本原則を考えることで、AIがより本質的な、偏りの少ない答えを出しやすくなる可能性があります。
  • 結果的に答えの質が上がるかも: 準備運動と広い視野を持つことで、最終的な答えがより的確で、深みのあるものになることが期待できるんですね。

例えば、こんな感じ…

Googleさんの資料にあった例を、少し分かりやすくしてみましょう。例えば、AIに「面白いゲームの新しいステージのストーリーを考えて」とお願いしたいとします。

  • いきなり頼む(通常のプロンプト):
    「挑戦的で面白い、FPSゲームの新しいステージのストーリーを1パラグラフで書いてください。」
    → これでも答えは出ますが、ありきたりな内容になるかもしれません。
  • ステップバックを使う場合:
    1. まず、一歩引いた質問をする(ステップバック): 「人気のFPSゲームで、挑戦的で面白いステージを作る上で、**大事な『設定』や『テーマ』**ってどんなものがありますか?いくつか例を挙げてください。」 → AIは「放棄された軍事基地」「未来のサイバーパンク都市」「宇宙船の中」…といったアイデアを出してくれるかもしれません。
    2. その答えを踏まえて、本題をお願いする: 「ありがとうございます。では、先ほど挙げてくれた**『放棄された軍事基地』**を舞台にして、挑戦的で面白いFPSゲームの新しいステージのストーリーを1パラグラフで書いてください。」 → AIは、より具体的なテーマに基づいて、深掘りしたストーリーを考えてくれる可能性が高まります。

どうでしょう? まるで、本題に入る前に「まず、基本的なことから確認させてください」とAIに問いかけるようなイメージでしょうか。「急がば回れ」で、結果的により良い答えにたどり着くためのヒントと言えそうです。

ヒント2:「どう考えたの?」も教えてもらう【思考の連鎖 CoT】

次に紹介するのは、AIに最終的な答えだけじゃなく、「どうやってその答えにたどり着いたのか」という途中の考え方や手順も一緒に説明してもらうようにお願いする方法です。これは「思考の連鎖(Chain of Thought, CoT)」と呼ばれています。AIの頭の中を、鎖のようにつなげて見せてもらうイメージですね。

なぜこれが効くの?

  • 間違いにくくなる(特に計算や論理パズル): 人間も、複雑な計算をするときに途中式を書くと間違いにくいのと同じで、AIにも手順を一つ一つ書き出させることで、より慎重に処理を進め、最終的な答えの精度が上がりやすくなります
  • 考え方が分かる: AIがどういう理屈でその結論に至ったのかが分かるので、もし答えが間違っていたとしても、「あ、ここで勘違いしたんだな」と原因を見つけやすくなります。これは、AIの答えを鵜呑みにせず、ちゃんと理解する上でとても大切ですね。

どんな風にお願いするの?

実は、意外と簡単なんです。プロンプトの最後に、「ステップ・バイ・ステップで考えて説明してください。」のような一文を付け加えるだけで、AIが思考プロセスを書き出してくれることが多くあります。

例えば、こんな感じ…

Googleさんの資料にあった、ちょっと意地悪な算数の問題を例にしてみましょう。

  • 普通の聞き方(ゼロショット):
    「私が3歳の時、パートナーは私の3倍の年齢でした。今、私は20歳です。パートナーは何歳ですか?」
    → AIによっては、単純に20×3=60歳、とか、ちょっと混乱して間違った答えを返してくることがあります。(資料の例では「63歳」と間違えていました!)
  • CoTを使う場合:
    「私が3歳の時、パートナーは私の3倍の年齢でした。今、私は20歳です。パートナーは何歳ですか? ステップ・バイ・ステップで考えて教えてください。」
    → こうお願いすると、AIは…
    1. 私が3歳の時、パートナーは 3 * 3 = 9歳だった。
    2. 現在、私は20歳なので、3歳の時から 20 – 3 = 17年経った。
    3. パートナーも同じく17歳、年を取ったはず。
    4. だから、パートナーの今の年齢は 9 + 17 = 26歳だ。 …というように、計算の過程をちゃんと書き出してくれて、正しい答え(26歳)にたどり着きやすくなります。(資料の例では、この方法で正解していました!)

さらに、前回の「フューショット(お手本を見せる)」と組み合わせるのも効果的です。似たような問題の考え方をお手本として先に見せてあげると、AIはよりスムーズに思考の連鎖を使ってくれるようになります。

CoTのちょっとした注意点

考え方を詳しく説明してくれる分、答え全体の文字数が長くなりがちです。また、AIが考える時間も少しだけ長くなるかもしれません。

他にもある!AIを賢くする工夫(ちょっとだけ紹介)

実は、AIの研究者の方々は、AIをもっと賢く、もっと正確に考えさせるために、今回ご紹介した以外にも、さらに高度なテクニックを色々と開発しています。

  • 自己一貫性 (Self-consistency): 何度か違う考え方をさせてみて、一番多く出てきた答えを採用する方法。
  • 思考の木 (Tree of Thoughts, ToT): 一つの考え方だけでなく、可能性のある色々な考え方を木の枝のように広げて探る方法。
  • ReAct: AIが考えながら、自分でインターネット検索などをして情報を集めたりする方法。
  • 自動プロンプトエンジニアリング (APE): AI自身に、より良い「お願いの仕方(プロンプト)」を考えさせる方法。

…などなど。なんだかすごいですよね!

私たちがいきなりこれらを使いこなすのは難しいかもしれませんが、「専門家はこんな工夫もしているんだなぁ」と知っておくだけでも、プロンプトの奥深さを感じられるのではないでしょうか。まずは、今回ご紹介した「ステップバック」と「思考の連鎖 (CoT)」を、面白そうだなと思った時に試してみるのが良さそうです。

ちなみに上で紹介した方法に興味のある方は、ブログの最後にある、コラムにも目を通してみてください。もうちょっとだけ詳しく解説しています。

まとめ:AIの「考え方」を引き出すヒント

今回は、AIにただ答えてもらうだけでなく、「もっと深く考えてもらう」ためのヒントとして、

  • ステップバックプロンプティング: 一歩引いた視点から考えてもらう
  • 思考の連鎖 (CoT): 考え方のプロセスも説明してもらう

という2つの方法をご紹介しました。

これらのテクニックは、特に少し複雑なことをお願いしたい時や、AIの答えの精度を高めたい時に役立つかもしれません。すぐに完璧に使いこなせなくても、「こういう頼み方もあるんだ」と引き出しに入れておくだけで、今後のAIとの付き合い方が、また少し広がるのではないでしょうか。

次回予告

さて、AIへのお願いの仕方も、基本から少し応用的なヒントまで見てきました。次回は、いよいよ実践編です! 私たちの多くが日常的に使っている**「Excel」作業**などを例に、AIにどんな風にお手伝いをお願いできるのか、具体的なヒントを探っていきます。

「あの面倒な作業、AIが手伝ってくれたらなぁ…」なんて思っている方、必見かもしれませんよ! どうぞお楽しみに!

最後までお読みいただき、ありがとうございました!


【☕ ちょっと寄り道コラム:AIをもっと賢くする工夫、もう少しだけご紹介】

さて、本文ではAIに「もっと深く考えてもらう」ためのヒントとして、「ステップバック」と「思考の連鎖 (CoT)」をご紹介しました。

このコラムではおまけとして、本文でちょっと触れた、さらに高度な4つのテクニックについて、もう少しだけご紹介します。

これらはかなり専門的なお話になりますので、「ふーん、そんな世界もあるんだな」くらいの軽い気持ちで読んでみてください。

1.自己一貫性 (Self-consistency):「三人寄れば文殊の知恵」作戦?
  • 考え方: 一人の考え(一つの思考プロセス)だけに頼るのではなく、色々な考え方をさせてみて、一番「みんなが言っている」答えを採用しよう、という作戦です。
  • 何をするか: 同じ質問をAIに何回か投げかけます。この時、AIの答えが少しだけ毎回変わるような設定(第1回で紹介した「自由度」のツマミを少し上げるイメージ)にしておきます。そして、前回ご紹介した「思考の連鎖(CoT)」を使って、答えに至るまでの考え方も一緒に出してもらいます。
  • どうするか: そうすると、AIは毎回少しずつ違う考え方で答えを出してくるかもしれません。それらの答えを集めてみて、「どの答えが一番多く出てきたか」を数えます(多数決ですね!)。そして、一番多かった答えを「これが一番確からしいだろう」と採用するわけです。
  • 良いところ: 一つの考え方の間違いに引きずられにくくなるので、特に複雑な問題や、ちょっとした間違いが許されないような場面で、より信頼性の高い答えを得られる可能性が高まります。
2.思考の木 (Tree of Thoughts, ToT):「もしも…」の枝分かれ思考作戦!
  • 考え方: 問題解決の道筋は一本道とは限りませんよね。「もしこっちの道を選んだらどうなる?」「あっちの方法も試せないか?」と、色々な可能性を探る考え方です。
  • 何をするか: 一つの考え方(思考の連鎖)を進めるだけでなく、途中で「別の考え方もあるのでは?」と、思考のルートを木の枝のように分岐させていきます。
  • どうするか: それぞれの枝分かれした思考ルートをAIが評価して、「こっちの考え方は有望そうだ」「こっちは行き止まりっぽい」と判断しながら、有望な枝をさらに伸ばしていく、というイメージです。
  • 良いところ: 単純な答えを出すだけでなく、複数の選択肢を比較検討したり、計画を立てたり、新しいアイデアを生み出したりするような、より複雑で探索的な問題解決に向いています。
3.ReAct(推論と行動):「調べながら考える」作戦!
  • 考え方: 私たち人間も、何か難しいことを考える時、分からないことがあれば本で調べたり、ネットで検索したりしますよね。AIにも同じように「調べながら考えてもらう」というのが、このReActという方法です。
  • 何をするか: AIがただ頭の中だけで考える(推論する)だけでなく、必要に応じて「行動」できるようにします。
  • どんな行動?: 例えば、プロンプトで指示されたら、AIが自分でインターネット検索を実行して最新の情報を取ってきたり、計算ツールを呼び出して計算させたりするんです。
  • どう進むか: 「まず、〇〇について最新のニュースを検索してみよう(推論)」→ 実際に検索する(行動)→ 「検索結果によると△△らしい。じゃあ、次は□□について考えてみよう(推論)」…というように、「考えて、行動して、その結果を見て、また考える」というサイクルを繰り返します。
  • 良いところ: AI自身の知識だけでは足りない情報(例えば、今日の株価や最新の天気予報など)を補うことができます。また、複雑な計算などを外部の得意なツールに任せることで、より正確な答えを出せるようになります。
4.自動プロンプトエンジニアリング (APE):「AI自身にお願いの仕方を考えてもらう」作戦!?
  • 考え方: 「餅は餅屋」ということわざがありますが、もしかしたら「良いプロンプト(お願いの仕方)」を考えるのも、人間よりAI自身の方が得意かもしれない?という発想から生まれた方法です。
  • 何をするか: 私たちが頭を悩ませてプロンプトを作る代わりに、AIに「このタスクをうまくやるには、どんなプロンプトが良いと思う?」と尋ねて、プロンプト自体を作らせてしまう、という試みです。
  • どうするか: まず「こういうことをしたい」という大まかな指示をAIに与えます。すると、AIはそのタスクを達成するためのプロンプト候補をいくつか提案してくれます。人間はその候補を評価したり、組み合わせたりして、一番効果的なプロンプトを選び出す、といった流れです。
  • 良いところ: 人間では思いつかないような、意外で効果的なプロンプトを発見できる可能性があります。また、プロンプト作成にかかる手間や時間を減らせるかもしれません。

いかがでしたか? なんだか未来の技術!という感じがしますよね。

これらは、より高度なAIの使い方を目指す上で考えられている、かなり専門的なテクニックです。なので、私たちがすぐに日常で使うのは少し難しいかもしれません。

ただ、「へぇ、AIを賢く使うために、こんなにも色々な工夫が考えられているんだなぁ」ということを知っておくだけでも、AIという技術の奥深さや、これからの可能性をもっと感じられるかもしれません。

以上、寄り道コラムでした。


コメント

タイトルとURLをコピーしました