Skip to main content
10 分間のコミュニティアンケートにご協力ください。7 月 19 日まで回答を受け付けております。こちらをクリックするとご参加いただけます。

エージェントアクションとしてフローを追加する

学習の目的

この単元を完了すると、次のことができるようになります。

  • フローベースのエージェントアクションで最大の効果を得るために、サブエージェントをグラウンディングする。
  • フローを参照するエージェントアクションを作成する。
  • 1 つのエージェントアクションによってデータが別のエージェントアクションに提供されるようにサブエージェントを設定する。
Note

このバッジは、受講者がフローに精通しており、Flow Builder の使用経験があることを前提としています。「Flow Builder を使用してフローを作成する」トレイルに従えば、プロセスの自動化に関する確固たるスキルが身に付き、Flow Builder のエキスパートになります。

顧客が予約済み活動を管理するのを Coral Cloud 予約エージェントがサポートするために必要なフローを作成できました。次はサブエージェントを作成し、顧客のサポートに必要なフローベースのアクションを指定します。

メモ

メモ

日本語で受講されている方へ
Challenge は日本語の Trailhead Playground で開始し、かっこ内の翻訳を参照しながら進めていってください。Challenge での評価は英語データを対象に行われるため、英語の値のみをコピーして貼り付けるようにしてください。日本語の組織で Challenge が不合格だった場合は、(1) この手順に従って [Locale (地域)] を [United States (米国)] に切り替え、(2) [Language (言語)] を [English (英語)] に切り替えてから、(3) [Check Challenge (Challenge を確認)] ボタンをクリックしてみることをお勧めします。

翻訳版 Trailhead を活用する方法の詳細は、自分の言語の Trailhead バッジを参照してください。

Agentforce を設定する

まず、Agentforce が Trailhead Playground で有効になっていることを確認します。

  1. [Quick Find (クイック検索)] ボックスで [Einstein Setup (Einstein 設定)] を検索して選択します。
  2. Einstein が [On (オン)] になっていることを確認します。すでにオンになっている場合は、[Off (オフ)] にしてからもう一度 [On (オン)] にします。
  3. ブラウザーを更新して、[Setup (設定)] を再度読み込みます。
  4. [Setup (設定)] の [Quick Find (クイック検索)] ボックスで [Agentforce Agents (Agentforce エージェント)] を検索して選択します。
  5. [Agentforce][On (オン)] になっていることを確認します。

サブエージェントを追加する

サブエージェントを作成する前に、サブエージェントの設定に関する次のガイドラインとベストプラクティスを検討してください。

  • 関連性の高い Salesforce オブジェクトに関する情報を使用してサブエージェントをグラウンディングします。エージェントがデータの使用方法を理解するように目的を説明します。
  • アクションで指定されていない Salesforce データは使用できないことをサブエージェントに伝えます。前述のとおり、エージェントは権限が付与されたすべてのオブジェクトと項目を表示できます。このステートメントにより、エージェントが関連性の低いデータや共有するべきではないデータについて話すことを防ぐことができます。
  • 顧客に ID 値を表示しないようサブエージェントに伝えます。レコードコレクション変数には必ずレコードの ID が含まれるため、この指示がなければ、このデータが顧客にとって意味がなくても、エージェントによって顧客に表示されてしまう可能性が高くなります。このステートメントにより、暗号のようなデータによって顧客が困惑することを防ぐことができます。

サブエージェントを設定するときに、説明と指示を入力します。

Field Name (項目名)

対処法

説明

サブエージェントの用途についての概要を提供し、使用するデータのコンテキストを説明します。

指示

まず、ジョブの内容をエージェントに伝え、実行するべきではないことについて具体的に詳細を提供します。詳細な手順を書き出し、エージェントが顧客とどのようにやり取りすべきかを具体的に示します。

  • エージェントは、推測した質問を尋ねるのではなく、どのような用件であるかを尋ねる必要があります。
  • エージェントは、話をしている顧客が誰であるかが不明な場合は、識別情報を求め、その情報を使用して Get Customer Details (顧客の詳細を取得) フローを実行する必要があります。このステップは、ほかのフローを実行する前に行う必要があります。
  • 顧客から予約済みアクティビティについて尋ねられた場合、エージェントは Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得) フローを実行する必要があります。その後、そのフローの結果を顧客に提供します。

では、エージェントに顧客の予約済み活動に関して、何ができて何ができないかを伝えるサブエージェントを作成します。

  1. アプリケーションランチャー (アプリケーションランチャー) をクリックします。
  2. [View All (すべて表示)] をクリックします。
  3. [Agentforce Studio (Agentforce スタジオ)] アプリケーションを選択します。

  4. [Agents (エージェント)] リストで [Coral Cloud Booking Agent (Coral Cloud 予約エージェント)] を選択します。
  5. [Explorer] パネルで リソースを追加する をクリックして、[New Subagent (新規サブエージェント)] を選択します。

    ボタンが無効になっている場合、このバージョンのエージェントが確定済みであることが原因です。確定されていない新しいバージョンを作成するには、[New Version (新規バージョン)] をクリックします。
  1. [Subagent Name (サブエージェント名)] に、Booked Activity Management (予約済み活動管理) と入力します。
  2. [Description (説明)] に次のように入力します。This subagent helps Coral Cloud Resort guests to manage and understand their booked activities. Booked activities are stored in the 'Bookings' object in Salesforce. Guests are represented by the 'Contacts' object in Salesforce. (このサブエージェントは Coral Cloud Resort のゲストが予約済み活動を管理、把握するのをサポートします。予約済み活動は Salesforce の「Bookings (予約)」オブジェクトに保存されています。ゲストは Salesforce の「Contacts (取引先責任者)」オブジェクトで表されます。)
  3. [Create and Open (作成して開く)] をクリックします。

新しい空白のサブエージェントが表示されます。

エージェントアクションとしてフローを追加する

まず、フローごとにアクションを作成して、フローをエージェントに追加します。これらのエージェントアクションは Agentforce Builder を離れずに作成して割り当てることができます。

[Get Customer Details (顧客の詳細を取得)] アクションをエージェントに追加する

  1. [Actions Available for Reasoning (推論に使用可能なアクション)] の下で [Select action (アクションを選択)] をクリックします。
  2. [Create a custom action (カスタムアクションを作成)] を選択します。
  3. [Action Name (アクション名)] に Get Customer Details (顧客の詳細を取得) と入力します。
  4. [Description (説明)] に Validate a Customer’s details by passing their email and memberNumber to see if there is a related contact. (関連する取引先責任者があるかを確認するために、email と memberNumber を渡してお客様の詳細を検証します。) と入力されていることを確認します。
  5. [Reference Action Type (参照アクション種別)] で [Flow (フロー)] を選択します。
  6. [Reference Action (参照アクション)] で [Get Customer Details (顧客の詳細を取得)] を選択します。
  7. [Create and Open (作成して開く)] をクリックします。
  8. email 変数の入力を設定します。
    • [Inputs (入力)] セクションと [Outputs (出力)] セクションが空白の場合は、別のタブに移動してから [Get Customer Details (顧客の詳細を取得)] タブに戻ります。
    • 説明に The Email Address of the customer that is validating their identity. (ID を検証するお客様のメールアドレス。) と入力されていることを確認します。
    • [Require input to execute action (アクションを実行するには入力が必要)] をオンにします。
      この設定は、送信されるデータがなければ、このアクションを実行できないことをエージェントに伝えます。この設定を使用して、正常な実行に必要なデータなしでフローが実行されないようにします。
  9. memberNumber 変数の入力を設定します。
    • 説明に The Member Number of the customer that is validating their identity. (ID を検証するお客様のメンバー番号。) と入力されていることを確認します。
    • [Require input to execute action (アクションを実行するには入力が必要)] をオンにします。
  10. contact 変数の出力を設定します。
    • 説明に The contact that was returned in the search for records. (レコードの検索で返された取引先責任者。) と入力されていることを確認します。
    • [Show in conversation (会話に表示)] をオンにします。
      この設定は、この変数の内容を顧客に送信しても構わないことをエージェントに伝えます。特定の出力で [Show in conversation (会話に表示)] チェックボックスが選択されていない場合、フロー変数の内容が顧客に共有されることはありません。
  11. [Booked Activity Management (予約済み活動管理)] タブをクリックして、サブエージェントキャンバスに戻ります。
  12. [Actions Available for Reasoning (推論に使用可能なアクション)] で、キャンバスの [Get Customer Details (顧客の詳細を取得)] ピルの横にある アクションを展開 をクリックします。

    キャンバスに、フローの変数とその割り当て状況が表示されます。
  13. 「email」変数と「memberNumber」変数が [Agent Populated (エージェント入力済み)] に設定されていることを確認します。
    正しく設定されていない場合は、サイドバーの [Get Customer Details (顧客の詳細を取得)] アクションの横にある オプションを表示する をクリックし、アクションを削除して、ステップ 1 に戻ってアクションを再び作成します。

進行状況を保存する

  1. [保存] をクリックします。
  2. [Assign user record (ユーザーレコードを割り当て)] ウィンドウが表示された場合は、次の手順に従います。
    • [Select User (ユーザーを選択)] を選択します。
    • [Agent’s User Record (エージェントのユーザーレコード)] 項目で [EinsteinServiceAgent User (EinsteinServiceAgent ユーザー)] を選択します。
    • [保存] をクリックします。

[Explorer (エクスプローラー)] パネルにエラーが表示されても、後で修正しますので問題ありません。

[Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得)] アクションをエージェントに追加する

  1. [Booked Activity Management (予約済み活動管理)] タブをクリックして、サブエージェントキャンバスに戻ります。
  2. キャンバスの [Get Customer Details (顧客の詳細を取得)] ピルで リソースを変更 をクリックし、[Create a custom action (カスタムアクションを作成)] を選択します。

  3. [Action Name (アクション名)] に Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得) と入力します。
  4. [Description (説明)] に、Find all the Booking records related to the guest's contact record. Only retrieve Bookings whose date hasn't occurred yet. (ゲストの取引先責任者レコードに関連するすべての予約レコードを検索します。日付がまだ到来していない予約のみを取得します。) と入力します。
  5. [Reference Action Type (参照アクション種別)] で [Flow (フロー)] を選択します。
  6. [Reference Action (参照アクション)] で、[Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得)] を選択します。
  7. [Create and Open (作成して開く)] をクリックします。
  8. Contact_ID 変数の入力を設定します。
    • [Inputs (入力)] セクションと [Outputs (出力)] セクションが空白の場合は、別のタブに移動してから [Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得)] タブに戻ります。
    • 説明に The Id of a Contact record that you would like to find related Booking records for. (関連する予約レコードを検索する取引先責任者レコードの ID。) と入力されていることを確認します。
      デフォルトの説明はフローの Contact_ID 変数の説明と一致しています。パターンがわかってきましたか?
    • [Require input to execute action (アクションを実行するには入力が必要)] をオンにします。
  9. Contact_Bookings 変数の出力を設定します。
    • 説明に The upcoming not-canceled bookings assigned to the contact whose ID matches the Contact_ID. (ID が Contact_ID と一致する取引先責任者に割り当てられている今後のキャンセルされていない予約。) と入力されていることを確認します。
    • [Show in conversation (会話に表示)] をオンにします。
  10. Error_Message_Output 変数の出力を設定します。
    • 説明に The error message to show to the customer when this flow doesn't finish successfully. (このフローが正常に完了しなかった場合にお客様に表示するエラーメッセージ。) と入力されていることを確認します。
    • [Show in conversation (会話に表示)] をオンにします。
  11. [保存] をクリックします。
  12. [Booked Activity Management (予約済み活動管理)] タブをクリックして、サブエージェントキャンバスに戻ります。
  13. [Actions Available for Reasoning (推論に使用可能なアクション)] で、キャンバスの [Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得)] ピルの横にある アクションを展開 をクリックします。
    キャンバスに、フローの変数とその割り当て状況が表示されます。
  14. 「Contact_ID」変数が [Agent Populated (エージェント入力済み)] に設定されていることを確認します。
    正しく設定されていない場合は、サイドバーの [Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得)] アクションにマウスを置き、オプションを表示する をクリックしてアクションを削除し、ステップ 1 に戻ってアクションを再び作成します。

Contact_Bookings 出力を更新する

Contact_Bookings は [Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得)] フローのレコードコレクション変数です。レコードコレクション変数はサブエージェントのスクリプトで特別に設定する必要があるため、今後のエラーを防ぐためにスクリプトを更新します。

  1. [Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得)] タブをクリックします。
    このタブが存在しない場合は、次のステップに進んでください。このタブをクリックすると、以降のステップで使用するテキストを見つけやすくなりますが、ブラウザーの検索機能 (Windows では Ctrl+F、Mac では Command+F) を使用してテキストを探すこともできます。
  2. タブの行で [Canvas (キャンバス)] ドロップダウンを選択し、[Script (スクリプト)] を選択します。
    タブの行にある [Canvas (キャンバス)] ドロップダウン
  3. Contact_Bookings: object の行を探します。

  4. Contact_Bookings: objectContact_Bookings: list[object] に変更します。
  5. Contact_Bookings 行の数行後にある complex_data_type_name: "lightning__listType" の行を探します。
  6. complex_data_type_name: "lightning__listType"complex_data_type_name: "lightning__recordInfoType" に変更します。
  7. [保存] をクリックします。
  8. タブの行で [Script (スクリプト)] ドロップダウンを [Canvas (キャンバス)] に変更します。

サブエージェントへの指示を設定する

次に、このサブエージェントの指示を設定します。

  1. [Explorer (エクスプローラー)] で [Booked Activity Management (予約済み活動管理)] サブエージェントをクリックします。
  2. [Reasoning Instructions (推論指示)] に次の段落を追加します。
    Your job is only to help Coral Cloud Resort guests book activities, give them information about their existing booked activities, and cancel their booked activities. Do not use any Salesforce data that wasn't provided by an action's output. Do not show the customer any ID values. (あなたのジョブは Coral Cloud Resort のゲストが活動を予約するのをサポートすること、既存の予約済み活動に関する情報を提供すること、予約済み活動をキャンセルすることのみです。アクションの出力で提供されなかった Salesforce データは使用しないでください。お客様に ID 値を表示しないでください。)
  3. Enter キーを押して新しい行を開始し、2 つ目の段落を追加します。
    If the customer asks what their current booked activities are, run the Get_Contact_s_Upcoming_Bookings action and then present the output to the customer. (お客様から現在予約済みの活動の内容について尋ねられた場合は、Get_Contact_s_Upcoming_Bookings アクションを実行して、お客様に出力を提示します。)
  4. 前の段落で Get_Contact_s_Upcoming_Bookings のテキストを強調表示して、@ と入力します。
    指示で @ を入力すると、Agentforce Builder にコンテキストメニューが表示され、特定のアクション、変数、サブエージェント、その他のオプションを指示から直接参照できます。

Note

@ を入力しても Agentforce Builder にコンテキストメニューが表示されない場合は、ステップ 4 と 5 をスキップして、代わりに次の手順に従います。

  1. [Canvas (キャンバス)] ドロップダウンを選択し、[Script (スクリプト)] を選択します。
  2. If the customer asks で始まる指示の行を検索します。
  3. その行で、「the」と「action」の間に次のテキストを追加します。{!@actions.Get_Contact_s_Upcoming_Bookings}
  4. [Script (スクリプト)] ドロップダウンを [Canvas (キャンバス)] に変更します。指示はステップ 5 の画像のようになっている必要があります。
  1. [Actions (アクション)] を選択し、[Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得)] を選択します。
    ここで [Get Contact’s Upcoming Bookings (取引先責任者の今後の予約を取得)] アクションを参照することで、Agentforce がこのアクションを確実に実行するようになります。

  2. [Enter] を押して新しい行を開始し、3 つ目の段落を追加します。
    After showing the customer a list of their activities, ask them how you can help them. (顧客に活動のリストを表示したら、どのようなサポートが必要かを尋ねます。)
  3. Enter キーを押して新しい行を開始し、もう 1 つ段落を追加します。
    If the customer is not known, you must always ask for their email address and their membership number to get their Contact record by running the Get_Customer_Details action before running any other actions. (お客様が誰であるかが不明な場合は、常に、ほかのアクションの実行前に Get_Customer_Details アクションを実行して取引先責任者レコードを取得するために、メールアドレスとメンバーシップ番号を尋ねなければなりません。)
  4. 最後の段落で Get_Customer_Details のテキストを強調表示して、@ と入力します。
Note

@ を入力しても Agentforce Builder にコンテキストメニューが表示されない場合は、ステップ 8 と 9 をスキップして、代わりに次の手順に従います。

  1. [Canvas (キャンバス)] ドロップダウンを選択し、[Script (スクリプト)] を選択します。
  2. If the customer is not で始まる指示の行を検索します。
  3. その行で、「the」と「action」の間に次のテキストを追加します。{!@actions.Get_Customer_Details}
  4. [Script (スクリプト)] ドロップダウンを [Canvas (キャンバス)] に変更します。4 つ目の指示に Get Customer Details (顧客の詳細を取得) アクションが含まれていることを確認します。
  1. [Actions (アクション)] を選択し、[Get Customer Details (顧客の詳細を取得)] を選択します。
  2. エージェントを保存します。

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

これでサブエージェントの準備が整ったので、テストを行えます。Agentforce Builder の [Preview (プレビュー)] タブを使用してエージェントを実行し、設定どおりに動作することを確認します。

  1. Agentforce Builder で [Preview (プレビュー)] タブをクリックします。
    [Preview (プレビュー)] タブは、タブリストの最初のボタンです。
  2. [Let’s Chat (チャットを始めましょう)] パネルの [Describe your task or ask a question (タスクについて説明するか、質問する)] ボックスに Can you show me my booked activities? (予約済み活動を表示してもらえますか?) と入力し、Return/Enter キーを押します。
  3. エージェントが応答したら、次のプロンプトを入力します。I am sofiarodriguez@example.com and my membership number is 10008155 (私は sofiarodriguez@example.com で、メンバーシップ番号は 10008155 です) と入力し、Return/Enter キーを押します。

Sofia の現在の予約済みアクティビティについて、エージェントが 以下のようなリストを表示します。

Here are your upcoming booked activities at Coral Cloud Resort:
Family Adventure Quest - August 8, 2026, 1:30 PM to 2:30 PM
Trail Running Adventure - August 11, 2026, 9:00 AM to 10:00 AM
Beach Bootcamp Challenge - August 12, 2026, 1:30 PM to 5:30 PM
Seaside Gourmet Dinner - August 12, 2026, 9:00 AM to 12:00 PM
Seaside Gourmet Dinner - August 13, 2026, 1:30 PM to 4:30 PM
Family Movie Night Under the Stars - August 22, 2026, 9:00 AM to 10:00 AM
Live Music Beach Party - August 23, 2026, 1:30 PM to 3:30 PM
Ocean Kayak Fitness Expedition - August 23, 2026, 9:00 AM to 3:00 PM
Coastal Kayak Excursion - August 28, 2026, 1:30 PM to 2:30 PM
Artisan Workshop Series - August 30, 2026, 1:30 PM to 2:30 PM

お疲れさまでした! エージェントの正確性と機能を高めるフローを作成し、フローを一貫して実行するために必要な指示をエージェントに指定しました。ハンズオン Challenge では、顧客の予約レコードを更新するアクションを追加します。

リソース

Salesforce ヘルプで Trailhead のフィードバックを共有してください。

Trailhead についての感想をお聞かせください。[Salesforce ヘルプ] サイトから新しいフィードバックフォームにいつでもアクセスできるようになりました。

詳細はこちら フィードバックの共有に進む