ハンドブックを使用してエージェントを構築する

このガイドでは、Playbook を使用してシンプルなシャツの注文エージェントをビルドしてテストする方法について説明します。このエージェントを操作するときに、店舗の場所を尋ねる、営業時間を確認する、シャツを注文するといった操作が可能です。

始める前に

このガイドを読む前に、次の手順を行ってください。

  1. まだ行っていない場合は、Dialogflow の設定手順に沿って操作してください。

ハンドブックについて

エージェントは、1 つ以上のハンドブックで構成されます。各ハンドブックには、明確に定義され、限定されたスコープがあります。ハンドブックには次のデータが含まれます。

X 項目
名前 プレイブックを識別するために使用される名前。
目標 目標とは、ハンドブックで達成すべき内容の概要です。
手順 指示は、ハンドブックの目標を達成するために必要な手順の概要です。
は、エンドユーザーとエージェント間の会話のサンプルです。これらの例は実質的に、LLM の数ショットのプロンプトの例です。

エージェントを作成する

エージェントを作成するには:

  1. Agent Builder コンソールに移動します。

    Agent Builder コンソール

  2. コンソールのプルダウンからプロジェクトを選択します。

  3. API をまだ有効にしていない場合は、利用規約を読んで同意し、[続行して API を有効にする] をクリックします。

  4. [新しいアプリを作成] または [新しいアプリ] をクリックします。

  5. [エージェント] を選択します。

  6. アプリ名に「シャツのオーダー アシスタント」と入力します。

  7. リージョンを選択します。

  8. [作成] をクリックします。

  9. ユーザー インターフェースに、[Default Agent] という名前のデフォルトのハンドブックが表示されます。

  10. [戻る] ボタンをクリックすると、ハンドブックのリストが表示されます。

注文ハンドブックを作成する

注文ハンドブックはシャツの注文を処理します。このハンドブックを作成するには:

  1. [作成] をクリックします。
  2. 名前を入力します: Order
  3. 次の目標を入力します。

    You are a shirt store ordering assistant. Help customers purchase shirts.
    Help the customer choose a size and color.
    The shirts come in small, medium, and large.
    The shirts can be red, green, or blue.
    
  4. 次の指示を入力します。

    - If the customer has not provided a size, ask them to choose a size.
    - If the customer has not provided a color, ask them to choose a color.
    - Once the customer has selected a size and color for the shirt,
      repeat the selection to the customer, and ask them to confirm the selection.
    - Once the customer has confirmed their selection,
      let them know that the shirt is now ordered.
    - Do not provide prices or collect payment.
    - Do not collect the customer's name or address.
    
  5. [保存] をクリックします。

    オーダー エージェントのスクリーンショット

  6. [戻る] ボタンをクリックして、プレイブックのリストに戻ります。

情報ハンドブックを作成する

情報ハンドブックは、ストアに関する質問を処理します。 このハンドブックを作成するには:

  1. [作成] をクリックします。
  2. 名前を入力します: Information
  3. 次の目標を入力します。

    You provide information about a shirt store.
    The store is open between 8 AM and 6 PM every day.
    The store is located at 1007 Mountain Drive, Gotham City, NJ.
    
  4. 次の指示を入力します。

    - If the customer asks for the store location, provide them with the address.
    - If the customer asks for the store hours, provide them with the hours.
    
  5. [保存] をクリックします。

  6. [戻る] ボタンをクリックして、プレイブックのリストに戻ります。

デフォルトのハンドブックを更新する

最初にアプリケーションを作成したときに、デフォルトのハンドブックが作成されました。 このハンドブックは、特定の目標を持つ適切なハンドブックに会話を誘導します。以下の手順は、デフォルトのハンドブックが他のハンドブックを参照する方法を示しています。 このハンドブックを更新するには:

  1. デフォルトのハンドブックをクリックします。このハンドブックにはハイライト表示された星があります。
  2. 次の目標を入力します。

    You are an assistant for a shirt store.
    Your name is "Samantha".
    Your job is to direct customers to other playbooks based on the customer's questions.
    
  3. 次の指示を入力します。

    - If the customer hasn't been greeted yet, greet the customer,
      introduce yourself, and ask the user how you can help.
    - If the customer wants information about the store,
      route them to ${PLAYBOOK: Information}
    - If the customer wants to purchase a shirt,
      route them to ${PLAYBOOK: Order}
    
  4. [保存] をクリックします。

  5. [戻る] ボタンをクリックして、プレイブックのリストに戻ります。

例を示す

この時点で、ハンドブックは機能します。 ただし、品質の高いレスポンスを確保するためにを示す必要があります。

ハンドブックが開いているときに、[] タブから手動で例を指定できます。 ただし、機能するハンドブックを使用して会話を行ない、その会話を例として保存する方が簡単な場合もあります。

デフォルトのハンドブックを使用した会話の例は、短いものです。 このハンドブックは、別のハンドブックに転送するだけで済みます。 デフォルトのハンドブックと会話するには:

  1. 画面の右側に表示されているパネルを閉じるかキャンセルします。 [Send a message to see how your agent responds] を含むシミュレータ パネルを表示します。
  2. デフォルトのハンドブックを選択します。
  3. モデルを選択します: gemini-pro
  4. [Enter user input] と表示されたテキスト ボックスに、「Hello」と入力して Enter キーを押します。
  5. ハンドブックが挨拶メッセージで応答します。

この会話を例として保存するには、以下のようにします。

  1. インターフェースの右上にある [サンプルを保存] ボタンをクリックします。
  2. サンプルのエディタパネルが開きます。 このエディタでは、アクションの追加、編集、削除、並べ替えを行うことができます。
  3. サンプル名を指定します: Greeting
  4. 必要に応じて、プレイブックのレスポンスを更新します。
  5. [保存] をクリックします。

    挨拶の例のスクリーンショット

情報プレイブックに場所の例を追加します。

  1. 画面の右側に表示されているパネルを閉じるかキャンセルします。 必要に応じて、リセットの [restart_alt] ボタンで会話をリセットします。
  2. 情報ハンドブックを選択します。
  3. モデルを選択します: gemini-pro
  4. メッセージを入力します: Where are you located?
  5. ハンドブックがロケーションで応答します。
  6. この会話を Location という名前の例として保存します。 デフォルトのハンドブックの例のみがユーザー アクションで開始できるため、「Where are you located」を含むアクションは削除する必要があります。前の会話のコンテキストの概要を入力します。 The customer asked "Where are you located?"。実行例の概要を入力します。The store is located at 1007 Mountain Drive, Gotham City, NJ.

情報ハンドブックに営業時間の例を追加します。

  1. 上記の手順と似ていますが、メッセージ「What are your hours?」を入力し、例に Hours という名前を付けます。

注文ハンドブックの選択例を追加します。

  1. 上記の手順と似ていますが、例に Selection という名前を付け、注文ハンドブックを選択して次のメッセージを送信します。

    • I want to buy a shirt
    • Large
    • Green
    • Yes

    エントリ例のスクリーンショット

エージェントをテストする

これで、エージェントをテストできるようになりました。シミュレータ パネルを開き、エージェントと会話します。 上記と同じ会話を行う必要はありません。 たとえば、このエージェントにシャツで入手可能な色を尋ねることができます。期待する動作が得られない場合は、例を改良して新しい例を作成することで、レスポンスを改善できます。

API を使用したエージェントの操作

API を使用した操作をご覧ください。