生成フォールバック

生成フォールバック機能は、Google の最新の生成大規模言語モデル(LLM)を使用して、エンドユーザー入力がフォーム入力のインテントやパラメータと一致しない場合に仮想エージェントのレスポンスを生成します。

この機能には、LLM への応答方法を指示するテキスト プロンプトで構成できます。事前定義されているテキスト プロンプトを使用することも、独自のプロンプトを追加することもできます。事前定義されたプロンプトを使用することで、仮想エージェントは基本的な会話の状況に対処できます。次に例を示します。

  • 挨拶とユーザーに別れを伝えます。
  • ユーザーが理解できなかった場合に、エージェントが言ったことを繰り返します。
  • ユーザーの要求に応じて、行を保持します。
  • 会話を要約します。

生成フォールバックは、フロー、ページ、パラメータ入力時に使用される 不一致イベント ハンドラで有効にできます。不一致イベントで生成フォールバックが有効になっている場合、そのイベントがトリガーされると、Dialogflow は生成されたレスポンスを生成してユーザーに返します。レスポンスの生成に失敗した場合は、代わりに通常の所定のエージェント レスポンスが発行されます。

制限事項

この機能は現在、Vertex AI PaLM API でサポートされている言語で使用できます。

生成フォールバックを有効にする

フロー、ページまたはパラメータ入力時で使用できる 不一致イベント ハンドラでエージェントの生成フォールバックを有効にできます。

フロー全体の不一致イベントに対する生成フォールバックを有効にします。

  1. Dialogflow CX コンソールに移動
  2. プロジェクトを選択します。
  3. エージェントとフローを選択します。
  4. フローのスタートページを展開します。
  5. [イベント ハンドラ] で [sys.no-match-default] をクリックします。
  6. [エージェント レスポンス] で [生成フォールバックの有効化] をオンにします。
  7. [保存] をクリックします。

特定の不一致イベントで、生成フォールバックを有効にします。

  1. ターゲットの不一致イベント ハンドラに移動します(不一致で始まるイベント、不一致のデフォルト不一致 1など)。
  2. [エージェント レスポンス] で [生成フォールバックの有効化] をオンにします。
  3. [保存] をクリックします。

生成フォールバックの構成

前述のとおり、フォールバック機能は、生成されたレスポンスを生成するために大規模な言語モデルにリクエストを渡します。リクエストは、テキスト プロンプトの形式をとり、自然言語と、エージェントの現在の状態と会話に関する情報が混在したものです。プロンプトと生成されたレスポンスは、禁止フレーズのリストに対してチェックされます。禁止されたフレーズが含まれている場合や安全ではないと考えられる場合、生成は失敗し、代わりに通常の所定のレスポンス(同じ入力でエージェントが述べたレスポンス)が発行されます。

この機能は、複数の方法で構成できます。

  1. 事前定義のプロンプトを選択します。
  2. カスタム プロンプトを定義します。
  3. 禁止されているフレーズのリストから、フレーズを追加または削除します。

プロンプトを作成するときに、生成するコンテキストの種類を自然言語で記述するだけでなく、次のプレースホルダを使用することもできます。

用語 定義
$conversation エージェントとユーザーの会話(最後のユーザーの発話を除く)。
$last-user-utterance 最後のユーザーの発話。
$flow-description アクティブなフローのフローの説明
$route-descriptions アクティブなインテントのインテントの説明

フローとインテントの説明が適切なものであることを確認してください。

事前定義のプロンプトを選択する

  1. エージェントの設定 で [ML] タブに移動し、[生成 AI] サブタブに移動します。
  2. [テンプレート] プルダウンでいずれかのオプションを選択します。
  3. [保存] をクリックします。

この機能には、2 つのテンプレート プロンプトが用意されています。デフォルトのテンプレート(表示できません)とサンプル テンプレート(独自のプロンプトを作成するためのガイドとして機能します)です。デフォルト テンプレートを選択して、[生成 AI] サブタブに [データストアのプロンプト] が表示された場合、エージェントのレスポンスに影響するエージェントに関する情報を追加できます。

独自のプロンプトを定義する

  1. エージェントの設定 で [ML] タブに移動し、[生成 AI] サブタブに移動します。
  2. [テンプレート] プルダウンで [+ new template] を選択します。
  3. [テンプレート名] を追加します。
  4. テキスト プロンプトを追加します。
  5. [保存] を押します。

最初にサンプル テンプレートを編集して、新しいテンプレートとして保存することもできます。

  1. [テンプレート] プルダウンで [サンプル] を選択します。
  2. [編集] をクリックします。
  3. [テンプレート名] を編集します。
  4. テキスト プロンプトを編集します。
  5. [保存] を押します。

禁止フレーズのリストを変更する

  1. エージェントの設定 で [ML] タブに移動し、[生成 AI] サブタブに移動します。
  2. [禁止フレーズ] セクションで、リストから検査、追加、または削除を行います。
  3. [保存] をクリックします。

生成ォールバックをテストする

生成フォールバック機能は、シミュレータで直接テストできます。不一致イベントが生成レスポンスを生成(および生成が成功する)するように構成されたフロー/ページで、ユーザーの発話が不一致になるたびに、エージェントは生成されたレスポンスを出力します。

Codelab

生成フォールバック Codelab もご覧ください。