【文系さん必見】今からでも大丈夫!ChatGPTガイド15選 基礎編「プロンプトの種類」
Contents
今年の4月に野村総合研究所が関東地方の15歳~69歳の男女3,204人を対象に調査したところ、使用したことがあると答えたのは約12%でした(調査の詳細はこちらから)。
AIと言われると、文系には扱いが難しいという印象から、敬遠している方もいらっしゃるのではないでしょうか。
ChatGPTには普段、我々が話している言葉で指示(AIに出す指示のことをプロンプトや呪文とも言います)を出せば問題ありません。
プログラミング言語やAIに関する専門知識は必要ありません(もちろん、あればプラスです!)。
とは言うものの、ChatGPTとのコミュニケーションが上手くいかないと、返答の精度が上がらないことも。
それを避けるために、プロンプトのちょっとした知識やコツが役に立ちます。
知識やコツを15選としてまとめたところ、長くなってしまったので、基礎編と応用編に分けました。
基礎編にあたる本記事では、プロンプトの種類について説明します。
後編の応用編では、ChatGPTに指示を出すときのコツを紹介します。
これを機会にもっと多くの方にChatGPTのことを知っていただき、試していただきたいです。
1)出力を直接求める ゼロショットプロンプト
ChatGPTに質問を問いかけて答えを求めるプロンプトで、ゼロショットプロンプトとも呼ばれています。
ゼロショットとは、質問だけ(タスクの提示のみ)がされているという意味です。
質問をしたら、答えが直に戻ってくるタイプのプロンプトで、Q&Aのようなイメージです。
ちなみに、以下の画像の上の部分が筆者の入力したプロンプト。
下の少し色の薄い部分がChatGPTの回答です。
2021年より以前に起きた事実や記録を検索するときや単純なタスクをこなす際に使用します。
2)例を提示して精度を上げよう フューショットプロンプト
単語を50音順に並び替えるように、ゼロショットプロンプトでお願いしてみます。
(ちなみに改行するときはShift+Enterです)
上手くいきませんでした。
それでは、プロンプトを書き直してみましょう。
質問をする前に、同じような例題とその答えを例として、提示してあげます。
このように例を提示してあげるプロンプトを、フューショットプロンプトと言います。
今度は正解しました!
ゼロショットプロンプトで出力の精度が上がらない場合は、このプロンプトを試してみましょう。
ここでは例を1つだけ提示しましたが、もっと複雑なタスクの場合は例を増やすと精度が上がります。
3)「思考の連鎖(Chain of Thoughts/CoT)」を活用する
指示の意図をプロンプトに提示してあげることで、ChatGPTの出力に思考を連鎖(CoT)させるようなプロンプトを書くテクニックです。
ChatGPTが苦手だとされてきた推論や計算などのタスクに対して、出力の精度を上げることができるプロンプトです。
まずは、何も提示しないゼロショットプロンプトを打ってみましょう。
英単語を逆さまにしてほしいとプロンプトを打ちます。
どうやら、2回以上出てくる文字(ここではoとr)が複数ある英単語を逆さにするのがChatGPTは苦手なようです。
やはり間違えてしまいました。
それでは、例題と答え(フューショットプロンプト)に解法(思考)も加えて、思考の連鎖を促してみましょう。
このプロンプトで、ChatGPTに思考を連鎖させることができれば、正解するはずです。
無事に正答を導き出すことができました。
このように、例題の他に中間の思考プロセス(ここでは解法)をプロンプトに組み込んでいるものが、CoT(思考の連鎖)プロンプトです。
フューショットプロンプトで、正答を得られなかった複雑なタスクに有効です。
また、このCoTプロンプトとフューショットプロンプトを組み合わせて、さらに精度を高める自己正当性(Self-Consistency)というテクニックがあります。
プロンプト内のそれぞれのQとAが、それぞれ解法を含めたCoTプロンプトになっています。
また、このプロンプトは、解法(思考)も含めた例を複数提示しているので、フューショットプロンプトの特徴も併せ持っています。
このような複雑な推論問題をChatGPTは、苦手としていますが、自己正当性により正解することができました。
この問題は実際に、フューショットのみでも、CoTプロンプトのみでも正解することができませんでした。
4)「一つずつ考えよう(ゼロショットCoT)」を活用する
例を提示しないゼロショットであっても、「一つずつ考えよう」と入力するだけで、ChatGPTがCoTプロンプトと同じような考え方をしてくれます。
その結果、出力の精度が上がります。
ゼロショットプロンプトに、「一つずつ考えよう」の文言を加えるだけでOKです。
3までは順調だったのですが、最後の1行で間違えてしまいました。惜しいですね。
思考に大きなミスはなかったので、プロンプトを変えずに「Regenerate response」をクリックしたところ、正解しました。
「Regenerate response」については、応用編で紹介する「プロンプトの修正やフィードバックを積極的に」で詳しく説明します。
5)「思考の木(Tree of Thoughts/ToT)」を活用する
次にご紹介するのは、比較的新しい論文で紹介された思考の木(Tree of Thoughts/ToT)と呼ばれるテクニックで、GPT4.0(有料プログラム)で有効です。
「複数の案を提示→評価→検討→決断」というプロセスで、ChatGPTに戦略的な決断をさせます。
今まで見ていただいたプロンプトでは、一つの問いと一つの選択肢やタスクについて検討をさせて、答えを導き出すという直線的なアプローチでした。
この「思考の木(ToT)」と呼ばれる方法では、一つの答えに対する複数の策や選択肢を出力してもらいます。
それを同じ基準で評価と詳細を検討したうえで、戦略上有利な選択肢や正答を見つけてもらうというテクニックです。
ChatGPTの考え出す複数の選択肢が、木の枝のように広がっていくイメージからこの名前が付けられたものと思われます。
例えば、採用試験の方法を選ぶ際にToTプロンプトを使用したらどうなるのか、ChatGPT4.0で挑戦してみました。
まずは、思考の木の最初のプロセスである「複数の提案」をしてもらいます。
プロンプトで指示したとおり、3つの方法を提案してくれました。
次に、ChatGPTに一定の評価基準を与えて、3つの案を同時に「評価」してもらいます(画像はchatGPTの回答の一部)。
この「評価」が思考の木の第2プロセスです。
各案に対する評価をもとに、さらに「検討」をします。
これが思考の木の第3プロセスです。
前プロセスで得た「評価」をベースに、さらに深堀りしたいことをプロンプトで提示して「検討」を促します。
これまでの「評価」や「検討」をもとに、思考の木の最終プロセスである「決断」をしてもらいます。
ここでは、3つの案の中からブリリアント・フューチャー社のプロジェクトマネージャー職の採用試験として、有効なものから順位をつけてもらいました。
その理由も説明してもらいました。実際に導入するかを判断する際の材料になるはずです。
このように、思考の木を利用したプロンプトを使えば、人間の意思決定のプロセスと同じような方法で、戦略的に決断に至ることが可能です。
まとめ
プロンプトの種類について、代表的なものを取り上げました。
出力したい成果物に応じて、プロンプトをアレンジをしながら、試行錯誤してみましょう。
徐々に、どんなプロンプトを書いたら伝わりやすいのか分かってくるので、ChatGPTとのコミュニケーションもスムーズになっていきますよ。
応用編ではプロンプトを書く時のコツについて、紹介します。お楽しみに。