フロー、アクション、権限を使用してエージェントに追加情報を提供する
学習の目的
この単元を完了すると、次のことができるようになります。
- より多くの情報を返すように既存のフローを更新する。
- エージェントユーザーに項目レベルの権限を付与する。
始める前に
このバッジを受講する前に、以下のコンテンツを修了していることを確認してください。ここでの作業は、そのコンテンツの概念や作業に基づいて行います。
Agentforce を実際に使ってみるには
このバッジにハンズオン Challenge はありませんが、以下の手順を一緒に実行してみたい方は、「クイックスタート: Agentforce Builder でサービスエージェントを構築する」で作成したのと同じ Trailhead Playground を使用してください。このバッジの手順では、クイックスタートで作成した CC サービスエージェントを強化します。その Trailhead Playground を起動する手順は次のとおりです。まず、Trailhead にログインしていることを確認します。次に、このページの右上にあるユーザーアバターをクリックして、ドロップダウンから [ハンズオン組織] をクリックします。開く組織の横にある [起動] をクリックします。
Agentforce の決定性
CC サービスエージェントは、お客様が Coral Cloud Resorts での体験を調べて予約するのを順調にサポートしています。そこであなたは、エージェントに追加の仕事を与えたいと考えています。それは、対象となるロイヤルティプログラムメンバーにリゾートクレジットを発行することです。
Coral Cloud は、価値の高いお客様にリゾートで使用できるクレジットを付与しています。このようなリワードにはコストが伴うため、エージェントはビジネスルールに厳密に従って、対象となるお客様のみに正しいクレジット数を発行する必要があります。
そこで登場するのが Agentforce の決定性です。Agentforce ではキャンバス上で直接プログラミング機能が提供されているため、エージェントが必ずビジネスルールに従うように決定性の高いワークフローを作成できます。変数、if 条件ステートメント、アクションの絞り込みを使用して、特定の状況でエージェントに特定の動作を強制できます。決定性を利用することで、エージェントのパスをルールとデータによって決定し、そのパス内での会話や推論は LLM によって処理することができます。
ステップ 1: 顧客生涯価値を保存するようにエージェントを設定する
Coral Cloud Resorts はお客様の生涯価値を取引先責任者のカスタム項目 Lifetime_Value__c に保存しています。その生涯価値を使用して、お客様をプラチナランクとゴールドランクに分類することで、ロイヤルティの高い最良のお客様にリワードを付与できます。
その情報を CC サービスエージェントと共有するために、まず Get_Customer_Details フローを更新して、生涯価値を返すようにします。次に権限を付与して、エージェントがカスタム項目を参照できるようにします。最後に、お客様の生涯価値を保存するエージェント変数を作成します。
[Get Customer Details (顧客の詳細を取得)] フローを更新する
- [Setup (設定)] の [Quick Find (クイック検索)] ボックスで [Flows (フロー)] を検索して選択します。
-
[All Flows (すべてのフロー)] リストビューで [Get Customer Details (顧客の詳細を取得)] フローを選択して Flow Builder で開きます。
- 編集を有効にするために [Deactivate (無効化)] をクリックします。
-
[Get Contact by Email and Member Number (メールとメンバー番号で取引先責任者を取得)] 要素をダブルクリックして開きます。
![[Get Contact by Email and Member Number (メールとメンバー番号で取引先責任者を取得)] フロー。](https://res.cloudinary.com/hy4kyit2a/f_auto/fl_lossy/q_70/learn/modules/programmatic-instructions-in-agentforce/give-your-agent-more-information-with-flows-actions-and-permissions/images/ja-JP/b134152a8b198e1a0262bc21941e72f5_kix.p6f4epktmth8.png)
-
[項目を追加] をクリックします。
- [Search fields... (項目を検索...)] ボックスで [Lifetime_Value__c] を選択します。
![[Lifetime_value__c] 項目](https://res.cloudinary.com/hy4kyit2a/f_auto/fl_lossy/q_70/learn/modules/programmatic-instructions-in-agentforce/give-your-agent-more-information-with-flows-actions-and-permissions/images/ja-JP/a366bc0a8358d4a35bd500fb9f15c77a_kix.gtmog0no27en.png)
-
[Save As New Version (新規バージョンとして保存)] を選択します。
- すべてのデフォルトをそのままにして、[Save (保存)] を選択します。
- 上部のバナーに [Get Customer Details - V2 (顧客の詳細を取得 - V2)] が表示されていることを確認して、[Activate (有効化)] をクリックします。
これで、フローがお客様の生涯価値をエージェントに返すようになります。その値を参照するための権限をエージェントに付与しましょう。
ステップ 2: LifetimeValue__c に対する権限をエージェントユーザーに付与する
Salesforce はフォートノックスのように厳重にデータを保護します。ユーザーがオブジェクトのカスタム項目に対するアクセス権を自動的に得ることはありません。LifetimeValue__c カスタム項目を参照するための権限をエージェントユーザーに付与しましょう。
- [Setup (設定)] の [Quick Find (クイック検索)] ボックスで [Users (ユーザー)] を検索して選択します。
-
[EinsteinServiceAgent User (EinsteinServiceAgent ユーザー)] ユーザー名をクリックします。
- ページの上部にある [Permission Set Assignments (権限セットの割り当て)] を選択します。
-
[Service Agent Permissions (サービスエージェント権限)] を選択し、[Apps (アプリケーション)] の下の [Object Settings (オブジェクト設定)] を選択します。
- スクロールダウンして [Contacts (取引先責任者)] を選択し [Edit (編集)] をクリックします。
- [Lifetime_Value__c] を見つけて、参照アクセス権を付与します。

-
[保存] をクリックします。
これで、エージェントがお客様の生涯価値を参照できるようになりました。次は、生涯価値を保存するエージェント変数を作成しましょう。
ステップ 3: LifetimeValue 変数を作成する
- アプリケーションランチャーで、[Agentforce Studio (Agentforce スタジオ)] を検索して選択します。
-
[CC Service Agent (CC サービスエージェント)] をクリックします。[Canvas (キャンバス)] ビューで CC サービスエージェントが開きます。
- 編集可能な新しいバージョンを作成するには、[New Version (新しいバージョン)] を選択します。
- [Explorer (エクスプローラー)] パネルで、[Variables (変数)] を展開して選択します。
- キャンバスの右上にある [New (新規)] をクリックし、[Create Custom Variable (カスタム変数を作成)] を選択します。
- 次の値を使用して変数を作成します。
- Name (名前) と API Name (API 参照名):
LifetimeValue - Data Type (データ型): number (数値)
- Description (説明):
The value of Lifetime_Value__c from the Contact record.(取引先責任者レコードの Lifetime_Value__c の値。)
- Default Value (デフォルト値):
0
-
[作成] をクリックします。
変数が作成されました。

ステップ 4: 変数にユーザーの生涯価値を入力する
このステップでは、[Script (スクリプト)] ビューに切り替えます。
- [Explorer (エクスプローラー)] パネルで、[Experience Management (エクスペリエンス管理)] トピックを選択し、[Script (スクリプト)] ビューに切り替えます。
-
Get_Customer_Details: @actions.Get_Customer_Detailsを検索して [Get_Customer_Details] 推論アクションを見つけます。
-
memberNumber = ...という行の後にテキストset @variables.LifetimeValue = @outputs.contact.data.Lifetime_Value__cを貼り付けます。前の 2 つのwith指示と合わせるように、テキストをインデントします。

-
[Save (保存)] をクリックし、[Canvas (キャンバス)] ビューに戻します。
これで、エージェントがお客様のレコードを取得したときに、そのお客様の生涯価値が保存されるようになりました。
ステップ 5: エージェントが適切なトピックを見つけられるようにする
お客様が自分のメールアドレスを返信した場合、エージェントがただチャットするだけではなく、お客様の確認を行っていると理解するように徹底する必要があります。
- [Explorer (エクスプローラー)] パネルで、[Experience Management (エクスペリエンス管理)] トピックを選択し、[Script (スクリプト)] ビューに切り替えます。
-
Topic Selector(トピックセレクター) を検索してトピックセレクターを見つけます。
-
Select the best tool to call based on conversation history and user's intent.(会話履歴とユーザーのインテントに基づいてコールすべき最適なツールを選択してください。) という行の後にテキストIf the customer is providing their email and
| and membership number, run {!@actions.go_to_Experience_Management} (お客様が自分のメールアドレスとメンバーシップ番号を提供したら、{!@actions.go_to_Experience_Management} を実行してください) を貼り付けます。
エージェントが正しく転送するために次の指示を作成しました。

もう一度 [Canvas (キャンバス)] に切り替えます。
![ユーザーがメールとメンバーシップ番号を提供したときにエクスペリエンス管理に転送するために、トピックセレクターに追加された指示の [Canvas (キャンバス)] ビュー。](https://res.cloudinary.com/hy4kyit2a/f_auto/fl_lossy/q_70/learn/modules/programmatic-instructions-in-agentforce/give-your-agent-more-information-with-flows-actions-and-permissions/images/ja-JP/f8666365673bb76c5c174c4be93bd9d5_kix.9nffy6tt4b14.png)
