Skip to content

カスタムエージェントをデプロイする

エージェントを作成した後、このページを参照して、Brazeでエージェントをデプロイする場所と方法を学びましょう。作成時に選択したエージェントタイプ(Canvasエージェントまたはカタログエージェント)によって、エージェントが実行できる場所が決まります。概要については、Brazeエージェントを参照してください。

カスタムエージェントのタイプ

カスタムエージェントは、タイプに応じてBrazeの異なる部分にデプロイされます。以下の表を使用して、エージェントに適したデプロイパスを見つけてください。

エージェントタイプ デプロイ先 実行タイミング セクション
Canvasステップエージェント Canvasのエージェントステップ ユーザーがステップに入ったとき Canvasステップエージェントを使用する
カタログエージェント カタログフィールド カタログ行が作成または更新されたとき カタログエージェントを使用する

エージェントタイプは、エージェント作成時にエージェントコンソールで選択します。設定手順については、カスタムエージェントを作成するを参照してください。

ベストプラクティス

エージェントが最大の投資対効果(ROI)をもたらせる高価値のユースケースをターゲットにし、反応する可能性が高いオーディエンスを選択してください。小規模で機会の多いオーディエンスは、機会の少ない大規模なオーディエンスよりも高いパフォーマンスを発揮することが多いです。

Canvasエージェントの場合、最近の検索、高いエンゲージメント、充実したプロファイルデータなど、強いシグナルを持つユーザーから始めて、より広いSegmentsに拡大してください。カタログエージェントの場合、必要な入力列がすでに入力されている行を優先し、各呼び出しが有用な出力を生成するのに十分なコンテキストを持つようにしてください。

エージェントを広く展開する前に小規模でROIをテストするには、実験パスステップを使用して、オーディエンスの一部のみがエージェントステップを含むブランチに入るようにしてください。

Canvasステップエージェントを使用する

Canvasエージェントを作成した後、エージェントステップとしてCanvasに追加し、メッセージをパーソナライズしたり、リアルタイムで意思決定を導いたりできます。

仕組み

ユーザーがCanvas内のエージェントステップに到達すると、Brazeは設定した入力データをエージェントに送信します。エージェントはモデルと指示を使用して入力を処理し、ステップで定義した出力変数に格納される出力を返します。この出力を意思決定、パーソナライゼーション、または下流の処理に使用できます。

エージェントステップはCanvasコンテキスト変数を使用して関連するコンテキストを取り込み、Canvas内で使用できる変数を出力します。前提条件と完全なリファレンスについては、エージェントステップを参照してください。

エージェントステップを追加する

Canvasにエージェントを追加するには:

  1. サイドバーからエージェントコンポーネントをドラッグ&ドロップするか、ステップの下部にある プラスボタンを選択してエージェントを選択します。
  2. このステップでデータを処理するエージェントを選択します。
  3. 出力変数名を定義します。出力データタイプはエージェントコンソールで設定します。
  4. (オプション)エージェントが実行時に参照する追加のコンテキスト値を追加します。これには、エージェントのセットアップでまだバインドしていない追加のLiquid変数やCanvasコンテキストを含めることができます。例えば、このステップから送信時にのみ渡したい値などです。
  5. ステッププレビューでエージェントの出力をテストしてプレビューします。

出力データタイプ、Liquidテンプレート、スクリーンショットについては、エージェントステップを参照してください。

ユースケース

ユースケース 説明
リードスコアリングとリードの選別 エージェントステップを使って、入ってくるリードをスケール(例: 1〜10)で評価します。スコアがしきい値を超えるユーザーをナーチャリングパスに振り分け、適合度の低いリードは除外します。
ダイナミックなメッセージパーソナライゼーション エージェントに、ユーザー属性や最近の行動に基づいて件名、商品のおすすめ、メッセージ本文を生成させます。応答はメッセージステップに直接挿入できます。
顧客フィードバックの対応 顧客のコメントをエージェントに渡し、感情を分析して共感的なフォローアップメッセージを生成させます。高価値ユーザーに対しては、エージェントが対応をエスカレートしたり、特典を含めたりすることもあります。
インテリジェントルーティング エージェントの出力(ブール値または数値)を使用して、ユーザーを異なるCanvasパスに振り分けます。例えば、ユーザーを「リスクあり」か「健全」に分類し、それに応じてメッセージングの頻度を調整します。
調査または回答の解釈 エージェントに自由回答形式の調査回答や自由記述フィールドを解析させ、構造化された値(例: 意図やニーズの分類)を返させることで、下流のパスを駆動します。
多段階推論 エージェントを設定してコンテキストフィールドを組み合わせ、複数のユーザー属性に基づいて次善のアクション(メール、SMS、または人間による対応)を推奨するなど、複雑な判断を行わせます。

エージェントの出力を使用する

エージェントの実行後、Canvas内で出力変数を使用します:

  • ジャーニールーティング: エージェントの応答に基づいて、ユーザーを異なるCanvasパスにルーティングします。数値、ブール値、または構造化された出力でオーディエンスパス条件分岐を使用します。
  • パーソナライゼーション: Liquidを使用して、エージェントの応答をメッセージステップに直接挿入します。
  • ユーザーデータの処理: ユーザーデータを分析・標準化し、ユーザープロファイルに保存(例: ユーザーの更新ステップを使用)するか、Webhookを使用して送信します。

例については、エージェントステップの仕組みを参照してください。

エラー処理とフォールバック動作

以下は、エージェントステップにおけるCanvasステップエージェントに適用されます。

  • 接続されたモデルがLLMプロバイダーからレート制限エラーを返した場合、Brazeは呼び出しが成功するか完了できないと判断するまで、エクスポネンシャルバックオフを使用してリクエストを継続的に再試行します。その後、ユーザーは次のCanvasステップに進みます。
  • その他の障害(タイムアウトや無効なAPIキーなど)の場合、エージェントコンソールでフォールバック値が設定されていない限り、出力変数は null に設定されます。
  • エージェントが1日の呼び出し制限に達した場合、Brazeはフォールバック値が設定されていればそれを適用します。設定されていない場合、出力変数は null に設定されます。

フォールバック値が設定されている場合、Brazeは再試行不可能なエラーおよび1日の制限による障害に対してフォールバック値を適用します。BrazeはユーザーごとにフォールバックをLiquidでレンダリングし、結果をエージェントステップの出力変数に格納します。フォールバック値がない場合、これらの障害では出力変数が null に設定されます。エージェントコンソールのフォールバックの代わりに、メッセージステップでステップ固有のデフォルトを設定したい場合は、下流でLiquidのデフォルト値を使用できます。そのためには、エージェントセットアップの出力セクションでフォールバックを空白のままにして、エージェントがnullを返したときにLiquidのデフォルトが適用されるようにします。

  • 同一の入力に対する応答はキャッシュされ、数分以内の同一の呼び出しに再利用される場合があります。キャッシュされた応答も合計および1日の呼び出し回数にカウントされます。
  • エージェントステップは、大量のユーザーバッチの処理に時間がかかる場合があります。Brazeは呼び出しフロー制御に従って呼び出しをキューに入れるため、大量送信時にはユーザーが保留中のままになる場合があります。

エージェントステップのセットアップとランタイムの詳細については、エージェントステップのエラー処理を参照してください。詳細については、Brazeエージェントのエラー処理を参照してください。

カタログエージェントを使用する

カタログエージェントを作成した後、カタログフィールドに適用して、各行の値を自動的に生成または計算します。エージェントは、将来カタログに追加される新しい行に対しても実行されます。

仕組み

起動後、エージェントは各行を実行して評価し、選択された列をコンテキストに取り込んで出力を生成します。エージェントは、デプロイ後に追加されたすべての新しい行に対しても実行されます。カタログ行の更新時に再計算を選択した場合、既存のソースフィールドが変更されると、このフィールドのすべての値が更新されます。

カタログエージェントの入力列を設定する際、エージェントが呼び出される前に、選択した列のうちどれが実行に必須であるかをマークする製品内コントロールを有効にします(ラベルはワークスペースによって若干異なる場合があります)。このコントロールを有効にした後、値を含む必要がある列のサブセットを選択します。選択された列はデフォルトで必須として開始されますが、エージェントをブロックせずに空のままにできる列を削除できます。エージェントは、必須のままにした列が空白または欠落している場合にのみ行をスキップします。例えば、まだ入力されていない gender フィールドなどです。必須のコンテキストなしで実行すると、トークンが無駄になり、低品質な出力が生成される可能性があります。

カタログエージェントは列間の依存関係も尊重します。列Dが列Bと列Cから生成される場合、エージェントはその行のBとCに値が含まれるまで列Dに対して実行しません。

エージェントを使用しているカタログのフィールドを更新したり編集したりできます。列からエージェントを削除するには、AIエージェントを適用の選択を解除します。この操作により、列は非エージェント列に戻り、フィールドにはエージェントがカタログ上で最後に実行された際に適用した最新の値が保持されます。

カタログ内の循環参照はサポートされていません。つまり、以下のシナリオは発生しません:

  • エージェント列1がエージェント列2を入力として使用する
  • エージェント列2がエージェント列1を入力として使用する

カタログフィールドにエージェントを追加する

カタログフィールド内のエージェントステップ。

カタログフィールドにエージェントを追加するには:

  1. カタログに新しいフィールドを追加します。
  2. AIエージェントを適用を選択します。
  3. このフィールドにエージェントを割り当てます。
  4. 入力として渡す列を選択します。何も選択しない場合、エージェントはカタログ内のすべての列にアクセスできます。
  5. (オプション)必須列に値がある場合のみ実行を有効にして、1つ以上の選択された入力列が空白の行をスキップします。このオプションがオンの場合、エージェントが実行するために入力列のどれが入力されている必要があるかを選択します。選択されたすべての列はデフォルトで必須として開始されますが、実行をブロックせずに空のままにできる列を削除できます。
  6. カタログ行の更新時にエージェントがフィールドを再計算するかどうかを決定します。このオプションを選択しない場合、エージェントは各行につき一度だけ実行されます。
  7. フィールドを追加を選択してエージェントをデプロイし、コスト見積もりを確認します。コスト見積もりモーダルには、エージェントがこのカタログで実行される回数が表示されます。これはおおよそ総行数に等しくなります。続行するには、確認を選択します。

カタログエージェントのベストプラクティス

エージェントをカタログフィールドに適用する前に、エージェントが必要とする列を計画してください。フィールドの必須入力コントロールを有効にした後、エージェントが読み取るべきデータを含む列を選択し、実行をブロックせずに空のままにできる列をクリアします。エージェントは、必須のままにした列が空白の場合にのみ行をスキップします。

一部の行で空のままになることが予想され、それでもエージェントを実行したい場合は、列を必須のままにしないでください。代わりに必須セットから削除してください。不完全な行をスキップすることで、不正なトークン使用を回避し、出力品質を高く保つことができます。

シナリオ 動作
プレースホルダー付きの事前入力行 IDとファンド名のみでカタログ行を追加し、後から他の列を入力する場合、エージェントは必須入力列に値が入るまでそれらの行をスキップします。
行が存在した後にエージェントを適用 すでに行があるカタログのフィールドにエージェントを適用すると、エージェントはすべての行を評価しますが、必須入力列が入力されている行でのみ実行されます。
部分的に完成したカタログ 例えば、100行のカタログで leader が2026年のエントリに入力されているが、他の行にはIDとファンド名のみで他のフィールドが空白の場合。エージェントは leader の値がある行で実行され、leader が必須のままの場合は値がない行をスキップします。
依存列 列3が列1と列2に依存する場合、エージェントはその行の列1と列2に値が入るまで列3に書き込みません。

ユースケース

ユースケース 説明
商品説明を生成する 新しいカタログエントリに対して、短いマーケティングコピーを自動生成します。例えば、商品名、カテゴリー、特徴といった構造化された製品データから、目を引く説明文を生成します。
製品属性を充実させる 製品名と詳細に基づいて、色系統、スタイル、季節などの欠落値を補完します。例えば、製品名が「Laguna Polarized Sunglasses」の場合、エージェントはスタイルを「スポーツ」、カラーファミリーを「ブルー」と割り当てることができます。
派生フィールドを計算する 既存のフィールドを使って新しいデータを生成します。例えば、属性に基づく「適合スコア」や、販売数とレビュー数から導き出す「人気タグ」などです。
アイテムを分類またはタグ付けする おすすめロジック用にタグを割り当て、パーソナライゼーションモデルが製品をより効果的にセグメント化できるようにします。例えば、商品に「アウトドア」「フェス向き」「プレミアム」といったタグを付けます。
コンテンツをローカライズする カタログのテキストを別の言語に翻訳してグローバルなCampaignに活用したり、地域別のチャネルに合わせてトーンや長さを調整したりします。例えば、「Classic Clubmaster Sunglasses」をスペイン語で「Gafas de sol Classic Clubmaster」と翻訳したり、SMS Campaign用に説明文を短くしたりします。
レビューやフィードバックを要約する 感情やフィードバックを新しいフィールドにまとめます。例えば、感情スコアを「肯定的」「中立」「否定的」のように割り当てたり、「多くの顧客がフィット感の良さを挙げていますが、配送が遅いと指摘しています」のような短いテキスト要約を作成したりします。

応答フィールドを定義する

エージェントが出力形式としてフィールドを使用する場合、カタログフィールドで使用する応答フィールドとして、エージェントから対応するフィールドを選択できます。

例えば、以下のフィールドで出力形式を構造化し、製品説明をカタログに追加するエージェントがあるとします:

フィールド名
description テキスト
confidence_score_out_of_ten 数値

カタログにproduct_descriptionという名前のフィールドを追加し、応答フィールドとしてdescriptionを選択すると、その列にエージェントの説明が入力されます。

「Descriptor」エージェントが適用された「product_description」フィールド。「description」出力が応答フィールドとして選択されています。

また、アイテムを編集を選択してエージェントが生成した説明を手動で上書きすることもできます。エージェントが生成した説明に戻すには、セル内の更新シンボルを選択します。

エラー処理

  • 失敗したカタログ呼び出しは、LLMプロバイダーからのレート制限エラーを含め、再試行されません。
  • 基盤モデルプロバイダーへのAPI呼び出しが、無効なAPIキーエラーなどのその他のエラーを返した場合、フィールド値は更新されません。カタログエージェントは、エージェントコンソールでのフォールバック値の設定をサポートしていません。
  • 失敗した実行の詳細については、エージェントのログを確認できます。
  • カタログエージェントは、1行あたり最大25 KBまでの入力値の処理に制限されています。

エージェントを監視する

監視は、エージェントがCanvasで実行されるかカタログで実行されるかに関係なく同じように機能します。

エージェントの使用状況セクションでは、カタログやCanvasでエージェントが実際に使用されている場所を参照し、そこに移動できます。

Canvasのエージェント使用状況セクション。アクティブなエージェントが2つと非アクティブなエージェントが1つ表示されています。

エージェントのログセクションでは、Canvasやカタログ内で発生する実際のエージェント呼び出しを監視できます。日付範囲、結果(成功または失敗)、呼び出し元などの情報でフィルタリングできます。現在のページに表示されているログのみをエクスポートするには、CSVをエクスポートを選択することもできます。

エージェント「AI Sentiment Score」のログ。

特定のエージェント呼び出しに対して表示を選択すると、入力、出力、およびユーザーIDを確認できます。

エージェント「Random Sports Assignment」の詳細パネル。入力プロンプト、出力応答、および関連するユーザーIDが表示されています。

Currentsを使用する

以下のCurrentsイベントを使用して、Kafkaレコードスキーマにアクセスすることもできます:

  • エージェント実行イベント
  • ツール呼び出しイベント

詳細については、メッセージエンゲージメントイベント用語集を参照してください。

New Stuff!