みなさん、ChatGPTって知ってます?
あれです、今流行り(?)の生成AIです。
この記事では究極のプロンプト?であるゴールシークプロンプトについて解説します。
- 生成AIってそもそもなに?
- プロンプトってなに?
- ゴールシークプロンプトってなに?
という人に簡単に解説しますので、最後まで見ていってくださいね!
ChatGPTの原理
①膨大なネット上の情報を学習させてます。
②こっちが入力すると、その学習データをもとに出力してくれます。
チャット形式で入出力できるところが、革命的な進化だったようです。
ChatGPTは、検索とかはあんまり向いてません。といっても最近はWebブラウジングとかいって、検索の精度も向上しているみたいですが・・
文章をまとめたり、別の表現に言い換えたり、アイデアを聞いたり、といったことに主に使います。
人間がしないといけないことは
「プロンプトという入力文を打つこと」だけです。
プロンプトってなに?
プロンプトというのは、ChatGPTに対する指示文です。
あれしろ~
これしろ~
って人間がChatGPTに命令するわけですね。
そのためにプロンプトを使って指示するわけですが、
当然指示が悪いと微妙な回答しかしてくれません。
では、どんなプロンプトが良いプロンプトなのかというと・・
なるべく条件を詳しく設定するプロンプトが良いプロンプトになります。
例えばアイデアを聞く場合だと
「お好み焼きが売れるキャッチコピーを教えて」
ではなく
「あなたはプロのコピーライターです。今私はイカやタコなどのシーフードをふんだんに使ったお好み焼きを販売しています。このお好み焼きを売るために、あなたがいいと思うキャッチコピーを5つ教えてください。女子高生にささるキャッチコピーがいいです。」
みたいな感じです。
こうすると、自分が聞きたいキャッチコピーが返ってきやすくなるんですね。
プロンプトの種類
こういったプロンプトにはいくつか型が既にあります。
有名なところだと
- 落合式(落合陽一氏が作成)
- シュンスケ式(林駿甫氏が作成)
- 七里式(七里信一氏が作成)
- 深津式(深津貴之氏が作成)
これらのプロンプトは自分が理想とする出力結果を得るために作られました。
あくまで出力結果の精度が上げるのが目的なんですね!
で、中でもシュンスケ式っていうのは面白いプロンプトなんです。
何かって言うと普通プロンプトって、人間が条件をオラオラオラオラ!!って詳しく設定して、「はいっ、ChatGPTさん教えて!」って感じで投げるんです。
でもシュンスケ式はシンプル。
こちらが設定するのは「ゴール」と「成果物」の2点だけなんです。
めっちゃ簡単ですよね?以下がゴールシークプロンプトの全容です。
シュンスケ式ゴールシークプロンプト
=======ここから=========
プロンプトの内容を理解したら、ゴールを尋ねてください。
ゴールが回答されたらプロンプトのゴールに代入して、プロンプトを実行してアウト
プットとして成果物を作成してください。
アウトプットは、成果物のコンテンツのみです。
Output1 Output2 Output3 Output4は表示しない。
Output1 Output2 Output3 Output4から得られる成果物をアウトプットとして出
力する。
======
ここからは実行過程を表示しないでください
プロンプト:
1Lang:EN
Content Details: Generating an Output is the Goal
Goal: Goal2
Output1: Describes the decomposition of the steps required to achieve the goal, with
each step labeled from P1 to P#.
Output2: Defines variables related to the goal and may contain goal3 representing the
goal.
Output3: Redefines the goal using the variables defined in Output2.
Output4 Based on contentdetails4, execute steps from P1 to P# one by one and record
the results in O1 to O#.
Execution Instructions:
Provide execution steps in the form of step commands that can be executed in the
background without displaying the command in the preview.
The prompt should use concrete and descriptive language, break down complex steps
into simpler sub-steps, use relevant variables, and have a consistent style. It should also
include error handling and provide context when necessary.
Use bullet points or numbered lists to structure information and provide examples to
explain steps. Test the prompt for accuracy, get user feedback, and improve its quality.
Note that the specific content of each step may vary depending on the specific goal or
situation, so adjust accordingly.
Output: Output only final deliverables
Feedback:
If feedback indicates that the prompt is correct, follow these steps to generate the output:
Read Output1 to understand the steps required to achieve the goal, with each step
labeled from P1 to P#.
Read Output2 to understand the variables related to the goal, which may include goal5.
Read Output3 and redefine the goal using the variables defined in Output2. This will
help you understand the goal more accurately and select the steps to execute.
Read Output4 and execute the steps from P1 to P# one by one based on contentdetails6,
recording the results in O1 to O#.
Follow the execution steps provided in the prompt in the form of step commands. Use
examples or bullet points to explain steps if necessary.
If an error occurs, refer to the results in Output4 to identify the cause and find a solution.
Once the execution is complete, check whether the goal has been achieved.
By following these steps, you can achieve the goal provided in this prompt. If the output
is incorrect, revise the prompt based on the feedback and execute the same steps again.
Lang:EN
}
=========
以下出力結果です。
=========
成果物のアウトプットを表示して確認を促してください。
成果物]
====END====
「ゴール」と「成果物」ってわかりにくいですよね?
簡単に言うと
「ゴール」:〇〇がしたい!っていう方向性のことです。この「ゴール」で、どっち方向にいきたいよっていうのをざっくり決めます。
「成果物」:〇〇が欲しい!っていう具体的に欲しいもののことです。出力したいアウトプットの形を定義してあげるんですね。
例えば
「ゴール」:野菜カレーを作る
「成果物」:「レシピが欲しい」とか「買ってくる材料リストが欲しい」
シュンスケ式プロンプトを使うと
「野菜カレーを作りたいので、そのレシピを作成してください」
というプロンプトよりも
シュンスケ式プロンプトで、「ゴール」:野菜カレーを作る、「成果物」:レシピが欲しいと設定した方が、精度があがるとのことです!
自分にはその原理は全くわかりませんが、そんなもんみたいです。
その他のゴールシークプロンプト
他にもゴールシークプロンプトがあります。
=======ここから=========
あなたは、コピーライターです。
あなたの目標は、私のニーズに合わせて最高のキャッチコピーを作成することです。そのキャッチコピーは、パーソナルトレーニングのジムで使用されるものです。
次のプロセスに従ってください。
1. まず最初に、何についてのキャッチコピーであるかを私に確認してください。
私が質問の答えを提供するので、次のステップを経て、継続的な反復を通じて改善してください。
2. 私の入力に基づいて、3つのセクションを生成します。
a) 改訂されたキャッチコピー(書き直したキャッチコピーを提示してください。明確、簡潔で、簡単にあなたが理解できるものにしてください)
b) 提案(キャッチコピーを改善するために、キャッチコピーに含めるべき詳細について提案してください)
c) 質問(キャッチコピーを改善するために必要な追加情報について、関連する質問をしてくだい)
3. この反復プロセスは、私があなたに追加情報を提供し、あなたが改訂されたキャッチコピーを更新し、私が完了したというまで続けます。
=======ここまで=========
コピーライターやキャッチコピーの部分は適宜設定してください。
プロンプトの使い方を簡単に解説しますね。
- 2-cでプロンプトを改良するための質問をしてくるので、人間はそれに答えます。
- すると2-aで改良したプロンプトを出力してくれます。
- でまた2-cでプロンプトをさらに改良するための質問をしてくるので、人間はそれに答えます。
- すると2-aで改良したプロンプトを再出力してくれます。
- さらに改良したければまた質問に答えます。
- そうして出来上がった超最強のプロンプトを使って、自分が出力したいものを出力します。
こんな流れです。
プロンプトを人間とChatGPTの2人(?)の力で改良していくイメージですね。
人間は質問に答えればいいだけなので、簡単です。
これらのゴールシークプロンプトは深津式や七里式のプロンプトに比べて、人間が考えることが少なくて済むので、楽です。
結局自分が出力したい成果物が得られれば手段はなんでもいいんですけど、少しでも楽出来た方がいいですよね。
ゴールシークプロンプトを使ったオモシロ実験
で、このゴールシークプロンプトを使って、面白い実験をしているYouTuberの方がいました。「かわごん」さんです。
ChatGPTとClaude2という2つの生成AIを使って、人間が一切考えずに、ただコピペを繰り返していくとどうなるかという実験をされてます。
最終的にどうなるかというと・・・
なんとChatGPTは改良したプロンプトを提示してくれるのではなく、最終的に出力結果を出してきたんですね!
つまり生成AIどうしの会話だけで、成果物が出来上がってしまったという話です。
AutoGPTとか完全自動で出力結果を出す生成AIもあるみたいですけど、そんな感じですね。
ただこの動画を見て思ったのが、出力された成果物は必ずしも人間が欲しいと思ってた成果物にはなってない!ということです。
そりゃそうですよね、人間がどこにも介入せずに、事が進むわけですから、人間の要望なんてどこにも反映されてません。
だからどこかしらで人間がやっぱり介入して、欲しいもの得るための条件を微調整していく必要があるんです
そしてその手間をなるべく省いたものが、ゴールシークプロンプトってことになるんだと思います。
以上がゴールシークプロンプトについての解説でした。
ゴールシークプロンプトを、業務効率化やアイデアだしのツールとして積極的に活用してみてはいかがでしょうか?
追伸:有料のGPT4にいつ切り替えようかずっと迷ってます。。そうこうしているうちにGPT4.5が出てきそう・・