チェーンプロンプト:プロンプトチェーン(Prompt Chain)を活かしたプロンプトテクニック
今回はプロンプトチェーン(Prompt Chain)を活かしたプロンプトテクニック、
『チェーンプロンプト』
について述べていきたいと思います。
これは、普通にAIを使えば、自然に使うことなのですが、それを精密に使う方法をここでは述べていこうと思います。
実際に用いるプロンプト指示文も載せますので、そこだけでも参考にしていただければと思います。
プロンプトチェーンとは
AIを勉強した人なら「プロンプトチェーン(Prompt Chain)」という言葉を聞いたことがあると思います。
【参考】
簡単に言うと、AIとチャットを進めていくと、AIが前のチャットの内容を引き続き参照し、それを基に制度の高い新たな応答を生成する、というものです。
つまり、一気にAIに出力させるのではなく「ステップバイステップ」で段階的にチャットをしていった方がいいってことです。精度の向上が起こるのは、「思考の連鎖(CoT)」が関係するからです(後述)。
しっかりとした定義は以下になります。
実例として、チャット・文章生成ではわかりにくいので、画像生成でみていこうと思います。
チェーンプロンプトの実践
AIでイラストを描きたいとします。
そのイラストの要素を、
①形態(ラフスケッチ)
②色彩(色付け)
③全体バランス(仕上げ)
の三つに分けるとします。
これを一気にやるのではなく、三回のチャットに分け、更に連鎖させて段階的に行なっていきます。このようにすることで、イラストが美しく深化していく様子を見ていきましょう。
※使用するのはChatGPT・DALLE3ですが、ChatGPTは前回の画像プロンプトを見て、プロンプトを改善していると思われます(イラストそのものではなく、イラストのプロンプトが連鎖しています)。
①形態(ラフスケッチ)
まず、ChatGPT・DALLE3で女の子のラフスケッチを描きます。
服が着物っぽいので、洋服に変更します。
②色彩(色付け)
この服でいこうと思います。
次に、ここに色付けをします。ここは仮塗りの段階です。
いい感じで色付けできたので、これでいこうと思います。
③全体バランス(仕上げ)
そして、最後に背景を入れて仕上げていきます。
※この場合、女の子が主なので、背景はこの女の子に合った背景を描くという文脈となります。
とても美しく仕上がりました❣️
今回は文章よりも視覚の方が一発でわかるので、イラストでチェーンプロンプトを使っていますが、是非、文章でも行なってみてください。
文章でのプロンプトチェーンの説明は以下になります。
更に、その応用として、AI検索のクエリ(質問)を連鎖させる「クエリチェーン」については以下です(AI検索用SEO対策をしたい方は必見)。
次に、その入力方法を述べたいと思います。
チェーンプロンプトの入力方法
特に何も入力しなくてもプロンプトチェーンは行われますが、これをプロンプト化したのが「チェーンプロンプト」です。
プロンプトとしては、
「上記の○○と連鎖してください」
と明示することです。
これはタスクを頭の中でいくつかに分解して行う場合のプロンプトです。
そのタスクの分解もAIに任せる場合は、
「[タスク名を入力]を[数を入力]つの要素に分けてください」
とプロンプトを入力し、AIの提示した複数の要素を、段階的に入力して連鎖させていくものです。
チェーンプロンプトの評価
このプロンプトチェーンを活かした「チェーンプロンプト」をAIに評価してもらいました。それが以下です。
ということで、AIも太鼓判を押してくれてますので、使ってみてください。
ステートフルプロンプトとの違い
これは、以前に述べた「ホップ・ステップ・ジャンプ」の、ステートフルプロンプトと類似の概念となります。
その違いですが、ステートフルプロンプトは以前のものをできるだけ維持することにあります。つまり、変化しないことを狙います。しかし、チェーンプロンプトは変化します。両者の明確な違いは、維持するか、変化するかにあります。これを明確に使い分けていくと、よい情報生成ができると思います。
ChatGPTに説明してもうと、以下のようになります。
チェーンプロンプトの定義
ということで、チェーンプロンプトの定義は、
「一つのプロンプトの出力を次のプロンプトの入力として使用し、これを連鎖させることで複雑なタスクや問題を解決する方法」
となります。
以下、ChatGPTの定義です。
指定チェーンプロンプト
チェーンプロンプトで気をつけたいのは、どの情報を連鎖させるかです。不必要な情報と連鎖してしまっては、正確な回答を出すことはできません。そこで、どの情報と連鎖させるかを指定するのが「指定チェーンプロンプト」です。
例えば、ざっくりと「三つ前の会話から連鎖させて回答を生成してください」とやるような感じです。
また、更に、その中で、どの概念と連鎖させるかを細かく指定すると、更に精密な指定チェーンプロンプトとなり、回答の精度があがると思います。
ということで、指定チェーンプロンプトの定義を以下に出しておきます。
プロンプトチェーンと思考の連鎖(CoT)
それでは、なぜプロンプトチェーンによって連鎖させていくと、精度が向上するのでしょうか。ここには
「思考の連鎖(Chain of Thought, CoT)」
というプロンプトエンジニアリングの概念が関係します。
思考の連鎖(Chain of Thought, CoT)とは、タスクを小さなステップに分解し、それらを段階的に処理するプロンプトエンジニアリングの手法です。このアプローチにより、AIモデルは複雑な問題を論理的に解決できるようになり、推論の精度が向上するとされています。
具体的なプロンプトの例としては、「段階的に考えてください」という指示があります。このシンプルな表現が、AIに中間的な推論ステップを促し、より正確で論理的な解答を生成する助けとなります。
プロンプトチェーンと思考の連鎖の関係性は以下です。
チェーンプロンプトの指示文(AI共創版)
更に、チェーンプロンプトを進化させたプロンプトが以下です。
チェーンプロンプト(進化版):
「今までの対話内容を連鎖させ総合し、蓄積された情報を用いて、最終的な応答を生成してください。」
これが私とChatGPTでAI共創したチェーンプロンプトの指示プロンプトです。これは何回かにタスクを分けると、各要素がバラバラになりがちです。そうした時の最後の総仕上げに使用するためのチェーンプロンプトになります。つまり、最初から最後までの全要素にプロンプトチェーンが働き、
「巨大な思考の連鎖」
を生むという強力なプロンプトとなります。
これは、例えば、ブログなどの結論を書くのに、とても有効だと思いますので、文章のまとめとして是非、使ってみてください。
もちろん、今回のこの記事の結論も、この指示プロンプトで作成していますので、最後まで読んでみてください。
他にも、有効なチェーンプロンプトはあると思いますので、様々なパターンを考えて使用してみてください。以下は、ChatGPTに、その他のチェーンプロンプトを聞いてみました。
知識統合ライティング
このAI共創した「チェーンプロンプト」による、「巨大な思考の連鎖」を用いた超強力なライティングGPTsを『AI共創イノベーター』でAI共創生成しました。
それが『知識統合ライティング』です。
こうしたGPTsアプリを自動生成する『AI共創イノベーター』にも「チェーンプロンプト」の原理は使用されています。
こちらも便利なので、是非ご利用ください。
結論
ということで、前述した以下のチェーンプロンプト
「今までの対話内容を総合し、蓄積された情報を用いて、最終的な応答を生成してください。」
これを用いて、ChatGPTに結論を出してもらいます。
それが以下のような完璧な回答となりますので、ご覧ください。
チェーンプロンプトでヘッダー生成
ブログ記事作成への応用ですが、結論を書いた後に、前述のチェーンプロンプト、
「今までの対話内容を総合し、蓄積された情報を用いて、ブログのヘッダーを描いてください」
とプロンプト指示を出します。
それで生成したイラストが以下です。
なかなか、いい感じにできたと思います✨
「ブログのヘッダー」と指示すると、こんな感じで細長いのを作ってくれますので、これを切り取って使ってください。
それでは、また!
Xもやっていますので、お気軽に繋がってください。こちらはAIイラスト垢になりつつありますw