AIへの指示の出し方:プロンプト入門
ReActとは?AIに推論と行動を組み合わせさせる次世代プロンプト技術
先に、使わなくていい場面を決める
ReAct は、考えることと外に問い合わせることを交互にやらせる頼み方です。強力ですが、そのぶん往復が増えて遅く、高くつきます。まず、使わない場面をはっきりさせておきます。
- 答えが手元の資料の中で完結する仕事。資料を貼って読ませたほうが速く、正確です
- 検索が 1 回で終わる仕事。「今日の為替は」に思考と行動のサイクルを回させる意味はありません
- 待ち時間が数秒しか許されない仕事。1 回の依頼で何往復もするので、応答は確実に遅くなります
使うのは、調べた結果を見てから、次に何を調べるかが決まる仕事だけです。1 回目の結果を見るまで、2 回目に何を調べるべきか自分でも分からない。この形になったときが出番です。
考える、調べる、見る、をひと回りずつ
やらせるのは 3 つの動作の繰り返しです。次に何を知る必要があるかを書かせ、そのための行動を 1 つだけ実行させ、返ってきた結果を書き出させます。情報が足りていれば答え、足りなければもう一周します。
プレーンテキスト
あなたは調査アシスタントです。次の 3 行を 1 セットとして繰り返してください。
思考: 答えるために、次に何を知る必要があるか
行動: Search[検索語] または Calc[式] のどちらかを 1 つだけ
観察: 実行して得られた事実だけを書く
十分な情報が集まったら「最終回答」を書いてください。
質問: (調べたいこと)肝は、行動として使える手段を先に列挙しておくことです。Search と Calc しか無いと決めておくと、AI は「調べたことにする」余地を失います。手段を書かずに「必要なら調べて」と頼むと、調べたふりをして、それらしい結果を自分で作ります。
繰り返す回数の上限も書いておいてください。「5 セットまで。それでも足りなければ、分かったところまでと、分からなかったことを書く」と決めておくと、答えの出ない問いを延々と回し続けずに済みます。
観察の欄に、AI の記憶が混ざる
この頼み方のいちばんの落とし穴がこれです。観察の欄に、実際に取得した情報ではなく AI がもともと持っている知識が書かれてしまうと、外に問い合わせている見た目だけが残り、中身は最初と同じ推測になります。しかも手順が並んでいるぶん、読んだときに正しそうに見えます。
防ぐには、次の 1 行をプロンプトに入れてください。
観察で得られなかった情報は、推測で書かず「不明」と書くこと。
そのうえで、出てきた最終回答を確かめるときは、途中の観察に出典が入っているかを見ます。出典の無い観察が混ざっていたら、その回は捨てて、行動の定義をもっと狭めてやり直します。この確認を毎回手でやるのが重いと感じたら、それは書き方の工夫で粘る段階を越えています。検索を実際に実行できるツールにつなぐほうへ切り替えてください。
復習ミニクイズ
従来の「Chain of Thought (CoT)」と比較した際、ReActプロンプトの最大の特徴として正しいものはどれですか?