コンテンツにスキップ

会話型エージェント

会話型エージェントは、ユーザーがAIエージェントと対話して、定義したタスクを完了できるチャネルです。ブランドのためにエージェントが何をすべきかを記述する会話ワークフローを作成します。例えば、ワークフローでユーザーの好みに基づいてアイテムの購入を手助けできます。

仕組み

会話型ワークフローとは、エージェントに完了させたいタスクのことです。各ワークフローには、目的、チャネル設定、ターゲットオーディエンス、自然言語で記述したステップが含まれます。ステップにツールを追加すると、エージェントはカタログの検索、属性の設定、イベントの記録、Webhook の呼び出しを実行できます。

ワークフローを作成したら、設定でブランドガイドラインとチャネルの動作を確認してください。会話をプレビューする、シミュレーションを作成する、会話履歴を確認するを使用して、エクスペリエンスをテストし、ツールの呼び出しを確認します。

Web チャットウィジェットを設定する

サイトに Conversational Agents のチャットウィジェットを表示するには、Braze Web SDKで次のステップを完了します。

ステップ 1:SDK認証を設定する

Web アプリの SDK認証を有効にします。

ステップ 2:Web SDKをインストールする

次のいずれかをインストールします。

オプション 詳細
npm 最新の @braze/web-sdk パッケージをインストールします。
CDN 会話型ビルドを読み込みます: https://js.appboycdn.com/web-sdk/latest/braze.conversational.min.js

ステップ 3:ユーザー提供の JavaScript を有効にして初期化する

initialize の呼び出しで、allowUserSuppliedJavascript: true を設定します。

braze.initialize("{YOUR_API_KEY}", {
  baseUrl: "{YOUR_SDK_ENDPOINT}",
  allowUserSuppliedJavascript: true
});

{YOUR_API_KEY} を Web SDKの API キーに、{YOUR_SDK_ENDPOINT} を SDKエンドポイントに置き換えます。

ステップ 4:チャットウィジェットを有効にする

セッションを開く前に、braze.automaticallyManageChat() を呼び出します。

braze.automaticallyManageChat();
braze.openSession();

会話型ワークフローを作成する

会話型ワークフローを使用して、タスクを定義し、チャネルとオーディエンスを選択し、各ステップでエージェントが行うことを指示します。

ステップ1: ワークフローの詳細を設定する

エージェントコンソール > 会話型エージェントに移動し、ワークフローの詳細を設定します。

  1. ワークフローの名前を入力します。
  2. このワークフローの目的を入力します。エージェントがいつこのワークフローを使用すべきか判断できるよう、ワークフローの内容を説明してください。
  3. このワークフローを有効にするチャネルを選択します。サポートされているチャネルは、SMS、RCS、WhatsApp、Web です。
    • Web の場合は、このワークフローを有効にする Web アプリを選択します。
    • SMS、RCS、WhatsApp の場合は、このワークフローを有効にする購読グループを選択します。
  4. このワークフローにアクセスするためにユーザーが所属している必要があるセグメントを選択します。

SMS、RCS、WhatsApp では、一部のインバウンドメッセージトリガーによってエージェントがブロックされる場合があります。設定ページで、購読グループごとにエージェントをブロックする可能性のあるトリガーを確認してください。

ステップ2: ワークフローのステップを記述する

ワークフローを完了するためにエージェントが実行するステップを追加します。1つのワークフローには最大10個のステップを含めることができます。各ステップには指示が必要で、指示は最大5,000文字まで入力できます。

目的が1つのステップでは、指示を1~3文程度の短い文で記述してください。ルールは明確にし、最後に明示的な質問や確認を入れることで、エージェントがユーザーへの次の返答をどのように表現すればよいか判断できるようにします。

ステップ3: ステップにツールを追加する

ステップには、エージェントが作業中に使用するツールを含めることができます。ステップの指示で / を入力するとツールが挿入され、指示内にタグとして表示されます。1つのステップで参照できるツールは最大10個です。

ワークフローステップの指示テキストボックス。ツールを挿入するためのスラッシュメニューが開いている。

ツール

ステップには、次のツールを追加できます。

ツール 説明
ナレッジソースを検索 ナレッジソースを介してカタログをクエリします。
ワークフロー属性を設定 このワークフローにスコープされた値を保存します。
ワークフロー属性を取得 前のステップで設定したワークフロー属性を取得します。
カスタムイベントを記録 Braze のカスタムイベントを記録します。
カスタム属性を設定 ユーザーにカスタム属性を設定します。
カスタム属性を取得 ユーザーからカスタム属性を取得します。
ユーザー属性を取得 標準のユーザープロファイルフィールドを取得します。
Webhook を呼び出す 外部エンドポイントに HTTP リクエストを送信します。
Webhook レスポンスを取得 以前の Webhook レスポンスから抽出したフィールドを取得します。

ナレッジソースを検索

このツールを使用すると、エージェントが Braze カタログをクエリして理解できるようになります。次のようなカタログのナレッジソースを作成します。

  • 商品カタログ
  • FAQ
  • サイズ表

まず、ナレッジソースページでナレッジソースを作成します。次に、指示のテキストボックスに / を入力し、ナレッジソースを検索を選択します。既存の会話型ナレッジソースツールを選択するか、新しい検索ツールを作成を選択します。

新しいツールを作成する場合は、名前と説明を入力し、ナレッジソースを選択します。ナレッジソースを選択したら、エージェントがアクセスできるフィールドを選択します。

ワークフロー属性を設定する

このツールを使用すると、同じワークフロー内でエージェントが後で再利用できる属性を設定できます。ワークフロー属性は、設定されたワークフローにスコープされます。カスタムイベントプロパティ、カスタム属性の値、Webhook パラメーターとして使用できます。

属性を作成するときに、オプションで許可された値を追加できます。

  • 許可された値を空のままにすると、エージェントは会話に基づいてその型の任意の値を設定できます。
  • 許可された値を追加すると、エージェントが設定できる値を定義したサブセットに制限できます。後続のツール (Webhook を呼び出す、カスタムイベントを記録、カスタム属性を設定など) で、エージェントが自由に選んだ値ではなく、管理された値を再利用したい場合に使用します。

指示で / を入力し、ワークフロー属性を設定を選択します。既存のワークフロー属性を選択するか、新しい属性を作成を選択します。

新しい属性を作成する場合は、名前と説明を入力し、型を選択します。型を選択したら、オプションで許可された値を追加します。

ワークフロー属性を取得する

このツールを使用すると、前のステップで設定したワークフロー属性の値を取得できます。

カスタムイベントを記録する

このツールを使用すると、Braze のカスタムイベントを記録できます。指示のテキストボックスに / を入力し、カスタムイベントを記録を選択します。既存のカスタムイベント記録ツールを選択するか、新しいカスタムイベントツールを作成を選択します。

新しいツールを作成する場合は、カスタムイベントを選択し、名前と説明を入力します。カスタムイベントとともに送信するイベントプロパティを選択します。各カスタムイベントプロパティでは、次のいずれかのソースを使用できます。

ソース 説明
エージェント エージェントが指示とツールの説明に基づいて値を決定します。
ワークフロー属性 プロパティは、前のステップでエージェントが設定したワークフロー属性を使用します。
カスタム属性 プロパティは、ユーザーのカスタム属性を使用します。

すべてのプロパティに値を設定する必要はありません。一部のプロパティ型はサポートされていません。

プロパティの値が空の場合にツールを失敗させるには、必須を選択します。

ユーザーをキャンバスに送るには、キャンバスがエントリプロパティとして使用するカスタムイベントを記録します。

カスタム属性を設定する

このツールを使用すると、ユーザーにカスタム属性を設定できます。指示のテキストボックスに / を入力し、カスタム属性を設定を選択します。既存のカスタム属性設定ツールを選択するか、新しいカスタム属性ツールを作成を選択します。

新しいツールを作成する場合は、名前と説明を入力し、ツールで設定するカスタム属性を選択します。カスタム属性では、次のいずれかのソースを使用できます。

ソース 説明
エージェント エージェントが指示とツールの説明に基づいて値を決定します。
ワークフロー属性 ユーザー属性は、前のステップでエージェントが設定したワークフロー属性を使用します。

カスタム属性を取得する

このツールを使用すると、カスタム属性を取得できます。

ユーザー属性を取得する

このツールを使用すると、標準のユーザープロファイルフィールドを取得できます。指示のテキストボックスにスラッシュ (/) を入力し、ユーザー属性を取得を選択します。次のいずれかのフィールドを選択します。

  • External ID
  • Braze ID
  • メール
  • 名
  • 姓
  • 電話番号

Webhook を呼び出す

このツールを使用すると、Webhook を呼び出せます。指示のテキストボックスに / を入力し、Webhook を呼び出すを選択します。既存の Webhook ツールを選択するか、新しい Webhook を作成を選択します。

新しいツールを作成する場合は、名前と説明を入力し、変数を追加します。変数を使用すると、Webhook の URL、本文、ヘッダーにパーソナライズされた値を含めることができます。

変数では、次のいずれかのソースを使用できます。

ソース 説明
エージェント エージェントが指示と説明に基づいて値を決定します。
ワークフロー属性 変数は、前のステップでエージェントが設定したワークフロー属性を使用します。
カスタム属性 変数は、ユーザーのカスタム属性を使用します。
ユーザープロファイル 変数は、ユーザープロファイルのフィールド (external ID、Braze ID、メール、名、姓、電話番号) を使用します。

変数を設定したら、リクエストメソッドを選択します。次のリクエストメソッドがサポートされています。

  • GET
  • POST
  • PUT
  • PATCH
  • DELETE

次に、URL を入力します。URL で変数を使用するには、{{variable_name}} 構文で参照します。例:

https://myurl.com/create/{{user_id}}

次に、リクエスト本文を設定します。本文を空のままにするか、{{variable_name}} プレースホルダーを含めることができる文字列を入力します。ほとんどの API では、JSON 本文を送信します。例:

{
  "user": {
    "id": "{{external_id}}",
    "favorite_color": "{{favorite_color}}",
    "is_called_by_agent": true
  }
}

変数を使用してヘッダーを設定することもできます。認証情報については、ダッシュボードで Connected Content の認証情報を作成し、このツールで参照します。

Webhook レスポンスは大きくなる場合があるため、ワークフローに必要なフィールドだけを抽出できます。レスポンス本文内の値を指す JMESPath 式を使用して、レスポンスフィールドを作成します。これらのフィールドを正しく抽出するには、レスポンス本文が有効な JSON である必要があります。抽出したフィールドは、後で Webhook レスポンスを取得ツールで参照します。

Webhook レスポンスを取得する

このツールを使用すると、以前の Webhook を呼び出すステップから抽出した Webhook レスポンスフィールドを参照できます。

設定

会話型エージェントのブランド・ガイドラインとチャネルの動作を設定します。エージェントコンソール > 会話型エージェントに移動し、設定を選択します。

ブランド・ガイドライン

エージェントが応答時に従うブランド・ガイドラインを選択します。ガイドラインはコンテンツ > ブランド・ガイドラインで作成および管理し、ここで1つ選択します。

Web 設定

オープニングメッセージを設定します。これは、ユーザーが Web 会話を開始したときに最初に表示されるメッセージです。

SMS、RCS、WhatsApp の設定

次の項目を設定します。

設定 説明
1日あたりのターン上限 メッセージングチャネルでの、ユーザー1人あたり1日の最大ターン数です。
AI 開示メッセージ すべての SMS、RCS、WhatsApp 会話で、エージェントの最初の返信の冒頭に表示されるテキストです。文言は変更できますが、オフにすることはできません。デフォルトのメッセージを使用する場合は、フィールドを空白のままにします。
エージェントをブロックする可能性のあるトリガー ワークフローで有効になっている各購読グループに設定された、受信メッセージトリガーの一覧です。受信メッセージがこれらのトリガーのいずれかを起動すると、会話型エージェントは応答しません。

優先される可能性のあるトリガーには、次のものがあります。

  • キーワードトリガー
  • アクションベースのキャンペーン
  • アクションベースのキャンバスエントリ
  • キャンバスのアクションパス
  • キャンバスのエグジット

会話をプレビューする

プレビューには2つの方法があります。

  • 保存済みのワークフローを編集する際に、そのワークフローのみをプレビューします。新しいワークフローは保存するまでプレビューできません。
  • 設定ページで、Webアプリまたは購読グループのエクスペリエンスをプレビューします。必要に応じて下書きワークフローを含めるを選択すると、下書きのワークフローを有効にする前にテストできます。

いずれの場合も、特定のユーザーとしてプレビューします。

シミュレーションを作成する

エージェントコンソール > 会話型エージェントに移動し、シミュレーションを選択します。

ユーザーシナリオと期待される結果を記述したシミュレーションケースを作成します。シミュレーションを実行すると、ワークスペースの会話型ワークフローに対してそれらのケースをテストできます。Webhook のレスポンスをモックできるため、エージェントの動作を評価する間もケースの結果を予測可能な状態に保てます。

会話履歴を確認する

会話エージェントページで、会話履歴を選択します。このページには、実際のユーザーとの会話およびプレビューでの会話が表示されます。

会話履歴を使用して、ツール呼び出しを確認し、エージェントが期待どおりに動作しているかを確認します。

会話履歴ページ。ユーザーとの会話とエージェントのツール呼び出しが表示されている。

例

架空の衣料品小売ブランドである Flash & Thread では、次のような2ステップのショッピングワークフローを使用できます。

  • ステップ 1: ユーザーに、どの商品カテゴリーを探しているかを尋ねます。
  • ステップ 2: ワークフロー属性を設定ツールを使用して、product_category 属性を文字列として取得します。この属性には、ステップ 1 でユーザーが今日探していると答えた商品カテゴリーが記録されます。

ショッピング例の2つのワークフローステップ。ステップ1では商品カテゴリーを尋ね、ステップ2では product_category ワークフロー属性を設定して選択内容を確認します。

New Stuff!