検索クエリー生成プロンプトの設定

このチャプターのゴール

  • 検索クエリー生成プロンプトについて理解ができている

検索クエリー生成プロンプト

前のチャプターでも紹介をした、RAGで利用する検索クエリーを生成するためのプロンプトです。 miiboでは、会話のラリーの度に検索クエリーがAIによって生成されます。 ※ 検索クエリーの生成には、GPT-4o(OpenAI)が利用されます。

以下のようなプロンプトを利用すると、検索を行う際のクエリーが生成されます。

以下はuserとaiの会話です。
@{history}

上記のuserが欲している情報を見つけるための検索用のクエリーを作成してください。(5語まで)検索クエリーのみを出力しダブルクォーテーション等の記号は用いないでください。なるべく最後のユーザーの質問の内容を優先してクエリーに含めてください。

生成された検索クエリーの確認方法

AIと会話を行ってから、左メニューの「分析レポート」->「ログ」を確認してください。エージェントと会話を行うと、会話の履歴のレポートに「クエリー」が出力されます。 実際に会話で生成されたクエリーが確認できます。

このクエリーがより会話の内容にマッチするよう、プロンプトを修正してチューニングします。

検索クエリー生成プロンプトのTips

1. @{history}の利用

@historyを記述することによって、直近の会話履歴を参照できます。

利用例

以下はuserとaiの会話です。
@{history}

上記のuserが欲している情報を見つけるための検索用のクエリーを作成してください。(5語まで)検索クエリーのみを出力しダブルクォーテーション等の記号は用いないでください。なるべく最後のユーザーの質問の内容を優先してクエリーに含めてください。

このように定義することで、直近の会話履歴を指し示し、クエリーを生成できます。 @{history}に格納されている情報は「ステート」と同じ概念で保持されています。 「分析レポート」->「ユーザー一覧」->「ステートの確認」 で@{history}に格納された情報を確認可能です。

2. ステートの利用

検索クエリー生成プロンプトでも、ステートが利用できます。

プロンプトの例

以下はuserとaiの会話です。
@{history}

以下はユーザーの現在の困りごとです。
困りごと: #{困りごと}

会話の履歴と困りごとを考慮して、検索クエリーを生成してください。クエリーは最大4つのキーワードまで含むものとします。

このようにユーザーの動的な情報を含め、よりパーソナライズされたクエリーも生成可能です。