Skip to main content

プロンプトテンプレートを調整してエージェントの応答精度を高める

学習の目的

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

  • エージェントと連携するプロンプトテンプレートでフローを使用すべきタイミングを説明する。
  • プロンプトビルダーとエージェントビルダーでテストを行うことで応答が向上する理由を説明する。
  • エージェントビルダーでプロンプトを使用してエージェントを実環境でテストする方法を実演する。

プロンプトテンプレートを作成し、エージェントを構築し、アクションを接続する方法は学びましたが、期待どおりに動作しているかどうかは、どのように確認すればよいのでしょうか。この単元では、Becca と一緒に品質保証モードへと進みます。エージェントのテスト方法、想定外の動作の特定方法、プロンプトの修正方法を学び、エージェントが常に正確かつ共感的に応答するようにします。

メモ

メモ

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

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

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

Becca はまず、ゲストとのやり取りをシミュレーションし、エージェントがどのように応答するかを確認します。

  1. エージェントビルダーで、[Conversation Preview (会話プレビュー)] ウィンドウの右上にある更新アイコン (円形の矢印) をクリックします。

[Conversation Preview (会話プレビュー)] ウィンドウ

  1. [Conversation Preview (会話プレビュー)] でドットが回転していても気にしないでください。次のメッセージを入力して Enter キーを押します。The White Water Rafting experience my family and I booked was unexpectedly cancelled. (家族と予約したホワイトウォーターラフティング体験が予告なくキャンセルされました。)
  2. エージェントが応答したら、次のフォローアップを入力してEnter キーを押します: I’m sofiarodriguez@example.com and my membership number is 10008155. (私は sofiarodriguez@example.com で、会員番号は 10008155 です。)
Note

エージェントがゲスト情報を特定できない場合は、もう一度入力してください。

では、この処理で何が起きているのかを見てみましょう。

  • ゲストが苦情を送信: ゲストはチャットのエージェントを使用して苦情を伝えます。
  • エージェントが応答: 本人確認のためにメールアドレスと会員番号などの識別情報を求めます。
  • [Get Customer Details (顧客の詳細を取得)] アクションがゲストの情報 (ケースの詳細を含む) を取得し、フローを通して確認します。
  • 苦情を分類: 苦情の内容に基づいて、エージェントが問題を 4 つのランクのいずれかに分類します。
  • エージェントが応答: 共感的なメッセージと補償または解決策を提示します。ですが、ランク 3 の問題に対してランク 2 の補償を提示しています。これは、もう少しコンテキストが必要だからです。

もう 1 つ問題があります。別のプロンプトを試してみましょう。

  1. エージェントビルダーで、[Conversation Preview (会話プレビュー)] ウィンドウの右上にある更新アイコン (円形の矢印) をクリックします。
  2. 次のメッセージを入力して Enter キーを押します: At the Ocean Kayak Expedition, I didn’t like that the tour group was so large. (オーシャンカヤック探検で、ツアーグループの人数が多すぎたのが不満でした。)
  3. エージェントが応答したら、次のフォローアップを入力します。I’m tabathatobias@example.com and my membership number is 10009996. (私は tabathatobias@example.com です。会員番号は 10009996 です。) Enter キーを押します。
Note

エージェントがゲスト情報を特定できない場合は、もう一度入力してください。

Becca は、ある重大な問題に気づきます。

見つかった問題

正式な苦情の記録やオープンケースが存在しないにもかかわらず、エージェントが補償を申し出ています。つまり、「気に入らなかった」と言うだけで、誰でも無料宿泊や高額なクレジットを受け取れてしまう可能性があるということです。困ったことです。このようなやり方では、Coral Cloud Resorts の経営が成り立ちません。

Becca は [Guest Experience Compensation (ゲスト体験の補償)] プロンプトテンプレートを更新し、状況を正しく把握できるようにしたうえで、ゲストに関連付けられたオープンケースがある場合にのみ適切な補償を提示できるようにする必要があります。

プロンプトテンプレートを修正する

Becca はプロンプトビルダーに戻り、プロンプトテンプレートを更新して、オープンケースに基づいて適切な補償の段階を LLM が判断できるようにするロジックを追加します。さらに、正式に記録されていない別の問題をゲストが持ち出した場合の対応方法についても指示を加えます。

  1. [Setup (設定)] をクリックし、[Setup (設定)] を選択します。
  2. [Setup (設定)] の [Quick Find (クイック検索)] ボックスで [Prompt Builder (プロンプトビルダー)] を検索して選択します。
  3. [Guest Experience Compensation (ゲスト体験の補償)] プロンプトテンプレートをクリックします。
  4. 「Determine the appropriate tier of compensation based on the guidelines below. (以下のガイドラインに基づいて適切な補償の段階を判断してください。)」の行を置き換えます。次のテキストをコピーして貼り付けます。

Use the details from the following case to determine the appropriate tier of compensation based on the guidelines below:


If the case details say "There are no open cases," or are empty or null, assign Tier 0.


Case Details:
Complaint:


If there is an open case, proceed with the appropriate compensation tier and include a brief
mention that their issue is part of an existing official complaint. If there is not an open case,
acknowledge the complaint, let the guest know it's appreciated, and that their preferences will be
noted for future stays.
  1. [Save As (別名で保存)] > [Save As New Version (新しいバージョンとして保存)] を選択します。

フローを有効化してプロンプトテンプレートで使用する

Becca は、ゲストにオープンケースがあるかどうかを確認し、その関連情報のみをプロンプトテンプレートに返すフローを使用したいと考えています。関連リストでは状況にかかわらず最初の 5 件が返されますが、フローではより細かい制御が可能です。彼女が必要とする特定のケース情報だけを抽出できます。この例では、オープンケースのみを返すようにします。

  1. 設定アイコン をクリックし、[Setup (設定)] を選択します。
  2. [Setup (設定)] の [Quick Find (クイック検索)] ボックスで [Flows (フロー)] を検索して選択します。
  3. [Get Open Cases for Contact (取引先責任者のオープンケースを取得)] フローを選択します。

このフローは、ゲストに紐付けられているオープンケースがあるかどうかを確認し、その情報をプロンプトテンプレートに返します。

  1. [Activate (有効化)] をクリックして、このフローをプロンプトテンプレートで使用できるようにします。
  2. Flow Builder で左矢印 左矢印ボタン をクリックして、[Setup (設定)] に戻ります。

プロンプトテンプレートにフローを接続する

次に Becca は、ローをプロンプトテンプレートに追加し、応答を作成する際にオープンケースのデータのみを使用できるようにします。

  1. [Setup (設定)] の [Quick Find (クイック検索)] ボックスで [Prompt Builder (プロンプトビルダー)] を検索して選択します。
  2. 既存のプロンプトテンプレート [Guest Experience Compensation (ゲスト体験の補償)] を選択します。
Note

有効なプロンプトテンプレートの編集を開始した場合、変更をテストするには、新しいバージョンまたは新しいテンプレートとして保存する必要があります。

  1. Case Details: (ケースの詳細:)というテキストの後にあるプロンプトに、フローを追加します。[Insert Resource (リソースを挿入)] > [Flows (フロー)] > [Get Open Cases for Contact (取引先責任者のオープンケースを取得)] をクリックします。
  2. Complaint (苦情:)というテキストの後にあるプロンプトに、自由テキストリソースを追加します。[Insert Resource (リソースを挿入)] > [Free Text (自由テキスト)] > [Complaint (苦情)] をクリックします。
  3. [Save (保存)] をクリックします。

プロンプトビルダーでのプレビューと検証

Becca は更新したテンプレートを実際のデータでプレビューします。

  1. [Preview (プレビュー)] をクリックし、[Contact (取引先責任者)] 項目で Sofia Rodriguez を選択して、[Complaint (苦情)] 項目にI didn’t like that the tour group was so large (ツアーグループの人数が多すぎたのが不満でした)」と入力します。
  2. 再び [Preview (プレビュー)] をクリックします。

Becca がプレビューを確認すると、 Sofia のオープンケースの詳細、エージェントへの現在の苦情、そのケースに基づく補償オプションの提案、応答のプレビューが表示されています。

  1. [Activate (有効化)] をクリックして、更新済みのプロンプトテンプレートを公開します。

エージェントビルダーで再テストを行う

Becca はエージェントビルダーに戻り、全体の体験がどのように機能するかを確認します。

  1. [Setup (設定)] で、[Agentforce Agents (Agentforce エージェント)] を検索して選択します。
  2. [Coral Cloud Experience Agent (Coral Cloud エクスペリエンスエージェント)] を選択します。
  3. [Open in Builder (ビルダーで開く)] をクリックします。
  4. [Conversation Preview (会話プレビュー)] に同じテストプロンプト (The White Water Rafting experience my family and I booked was unexpectedly canceled. (私と家族が予約したホワイトウォーターラフティングの体験が、予告なくキャンセルされました。)) を入力します。Return/Enter キーを押します。
  5. エージェントが応答したら、I’m sofiarodriguez@example.com and my membership number is 10008155. (私は sofiarodriguez@example.com です。メンバーシップ番号は 10008155 です。) というプロンプトを入力します。Return/Enter キーを押します。

応答が改善されていることを確認します。今回は実際のゲスト履歴に基づいています。

まとめ

このモジュールでは、強力なプロンプトテンプレートを作成し、エージェントを設定し、それが現実の環境で正しく機能することを確認しました。

学習した内容は次のとおりです。

  • 正確でブランドに合った応答を生成するプロンプトの設計方法
  • インテリジェントアクションを通してプロンプトテンプレートをエージェントに接続する方法
  • フローを使用してリアルタイムかつコンテキストに基づくデータでプロンプトを強化する方法
  • 過剰な自動化や誤ったロジックを防ぐためにエージェントの応答をテストしてトラブルシューティングする方法
  • 仮定ではなく実際の挙動に基づいてソリューションを改善する方法

結論。優れたエージェントを構築するためには、単に設定を行うだけではなく、意図を持って丁寧に作り込むことが重要です。そのように設計されたエージェントは、ロジックと言語、データを組み合わせて、まるで人間のように役に立つ体験を顧客に提供します。プロンプトビルダーは精度を高め、 Agentforce は自動化を実現します。この 2 つを組み合わせれば、よりスマートで、安全性が高く、スケーラブルな AI 活用型ワークフローを構築できます。

モデルの構築が成功することをお祈りしています。

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

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

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