Skip to main content

プロンプトビルダーについて知る

学習の目的

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

  • プロンプトビルダーの目的と有用性について説明する。
  • 標準のプロンプトテンプレートでサポートされるユースケースを挙げる。

プロンプトビルダーの概要

「プロンプトの基本事項」モジュールを受講した方は、生成 AI を使用して日常的なワークフローを簡単に実行できることをご存じかと思います。また、生成 AI を効果的に活用するためには、プロンプトを周到に練り上げ、信頼できる適切なコンテンツが生成されるようにする必要があることも認識されているのではないでしょうか。さらに、プロンプトテンプレートを作成すれば、個々のプロンプトを作成するよりも効率的なことを学習しています。

プロンプトビルダーがあれば、CRM データを活用できるプロンプトテンプレートを作成してテストし、修正、カスタマイズ、管理することができます。こうしたテンプレートがあれば、ユーザーの日常的なワークフローが簡便になり、ビジネスの効率性が向上します。

プロンプトビルダーはユーザーのワークフローに生成 AI エクスペリエンスを組み込むもので、デスクトップとモバイルの両方でお客様を補佐するさまざまなユースケースが可能になります。営業チームがリードメールを自動生成できれば、時間を節約できると思いませんか? 営業担当がお客様の重要な役員と電話で話す前に、そのお客様が抱えているオープンケースやエスカレーション済みケースがどのようなものかさっと判断できれば助かると思いませんか? こうした状況で役立つのがプロンプトビルダーです。

プロンプトビルダーの機能

プロンプトビルダーには、指示、参加者、コンテキスト、目標、関係、制約、そして何よりも重要な CRM データなど、プロンプトテンプレートを最適なものにするために必要な要素が取り込まれます。

商品レコードや取引先責任者レコードなど、Salesforce レコード項目のデータを使用すれば、生成 AI の出力が、まるでビジネスやお客様に語りかけるかのごとくパーソナライズされたものになります。大規模言語モデルの有用性はトレーニングに使用するデータの質に左右されるため、プロンプトビルダーはデータを中心に据え、LLM がその本領を発揮できるようにします。

また、プロンプトビルダーで Flow Builder を使用してテンプレートにフローを組み込めば、レコード項目を結び付ける以上の動的なプロンプトを作成できます。フローではプロンプトに条件ロジックを追加できるため、まさに必要なデータのみを取り込むことが可能です。たとえば、フローを使用して、ディシジョンツリーの出力に基づいてデータを追加します。

プロンプトビルダーには、プロンプトテンプレートをテストできるワークスペースもあります。選択したレコードに対して LLM が生成した応答がすぐに表示されます。一貫して効果的な結果が得られるまで、プロンプトテンプレートを反復的に修正していきます。

では、プロンプトビルダーを使用して、ユーザーのために作成できる数種のテンプレートを見てみましょう。

メール生成

あなたのビジネスでは、人々の気を引くコールドメール、心を引き付ける商品の紹介、関心をそそる販売プロモーションなどで定期的にお客様に連絡する必要がありますか? これまでの顧客関係やインサイトに基づいて、LLM がこうしたメールを書いてくれれば楽なのにと思いませんか?

[stability.ai の DreamStudio で、「数台のラップトップから何通ものメールがさまざまな方向に送信されている。2D ベクトルの技法で描画。」というプロンプトに従って AI が生成した画像。]

Cloud Kicks のシステム管理者である Linda Rosenberg は、社内の営業チームがリード生成メールの作成に多大な時間を費やしていることを知りました。Linda は、プロンプトビルダーを利用して、営業担当のメールワークフローを簡便にできないかと考えます。

メールプロンプトテンプレートについて思案していた Linda は、出力のパーソナライズこそが鍵を握ると認識します。そこで、会社の実際のビジネスコンテキストに基づいて、LLM の応答が生成されるようにしたいと考えます。Linda はプロンプトビルダーを使用して、Salesforce CRM データを使用する差し込み項目をテンプレートに追加します。早速プロンプトテンプレートのドラフトの作成に取りかかります。

あなたは {!$Input:Sender.FirstName} という名前で、{!$Input:Sender.CompanyName} 組織の {!$Input:Sender.Title} です。あなたの見込み客は {!$Input:Recipient.Name} で、{!$Input:Recipient.City} にある {!$Input:Recipient.Company}{!$Input:Recipient.Title} です。

Linda はさらに、Flow Builder を使用してクライアントの場所を相互参照し、Cloud Kicks が主催する地域イベントを見つけるフローをテンプレートに追加します。付近にイベントが見つからない場合は、代わりにフローが近日開催されるオンラインイベントを提案します。Linda はプロンプトテンプレートにフローを組み込んで、フローが実行されてイベントが特定されたら、LLM がフローの出力を使用して、クライアントを招待するイベントを記載したメールを生成するようにします。このプロンプトテンプレートに、続けて次の指示を追加します。

メールで、見込み客を {!$FLOW:Check_Events_In_Lead Area.Prompt} イベントに招待します。このメールは 90 語以内でなければなりません。イベントに参加する潜在的なメリットを見込み客に説明し、詳しい情報が必要な場合にはイベントまたはオンラインで直接話したい旨を伝えます。

プロンプトテンプレートを作成し終えた Linda は、テストするレコードを選択します。生成されたプロンプトと、LLM が出力として生成したメールを確認します。作成されたプロンプトは推敲可能です。

プロンプト 

出力 

あなたは Jose Figueroa という名前で、Cloud Kicks 組織の営業マネージャーです。あなたの見込み客は Rob Hutchinson で、ジョージア州アトランタにある Acme Inc.ディレクターです。

この見込み客を会社のイベントに招待するメールを作成するよう指示されたときは、以下の指示に厳密に従う必要があります。

メールでは、見込み客を 2023 年 9 月 18 日の「Floating on Clouds: アトランタキックオフ」(Cloud Kicks の新旧のお客様の交流会で、近日発売予定の商品を先行発表) イベントに招待します。このメールは 90 語以内でなければなりません。イベントに参加する潜在的なメリットを見込み客に説明し、詳しい情報が必要な場合にはイベントまたはオンラインで直接話したい旨を伝えます。

受信者の名前にのみ敬称を付けます。さらに、メールの本文に関連する言葉や内容を使って開封率が高まるような件名を生成してください。件名は 12 語以内でなければなりません。

文は能動態にし、明確、簡潔、率直な言葉を使い、つなぎ言葉や冗長な言い回しは避けてください。

では、見込み客をイベントに招待するメールを生成してください。

件名: 2023 年 9 月 18 日の「Floating on Clouds: アトランタキックオフ」にご招待!

Rob 様

2023 年 9 月 18 日に Cloud Kicks の新旧のお客様のみを対象に開催される「Floating on Clouds: アトランタキックオフ」にご招待します。このイベントは、業界のリーダーの方々と交流する絶好の機会で、弊社で近日発売予定の商品もご覧いただけます。このイベントに参加いただくと、有益な見識を得たり、貴重な人々とつながったりすることができます。詳しい説明をご希望の場合は、イベント会場またはオンラインで対応させていただきます。

お会いできることを楽しみにしています!

よろしくお願い申し上げます。

Jose Figueroa

営業マネージャー

Cloud Kicks

Linda は出力をチェックし、テンプレートに問題がないことを確認します。さらに、同僚に対しても、受信した応答には必ず目を通し、その内容が適切で、バイアスがないことを確認するとともに、必要に応じて応答をカスタマイズできることを念を押します。

項目生成

項目生成を使用すると、デスクトップまたはモバイルで使用頻度が極めて高い Lightning Experience の項目に、AI で作成されたコンテンツが直接取り込まれます。項目生成で LLM が商品説明の記述のような反復的な作業を行えば、時間を節約できます。それだけではありません。これまで不可能だった新たなチャンスがビジネスにもたらされる可能性があります。

たとえば、Linda によると Cloud Kicks では、営業チームがお客様との電話の最中に初めて未解決の問題の存在を知ることがあります。営業は、特にエスカレート済みのケースがある場合には認識しておきたいと思っています。経営陣は、営業チームがお客様に電話をする前に、サポートから営業にそのケースの最新状況を知らせるよう提案しましたが、実現していません。

Linda は項目生成テンプレートに Flow Builder を統合してケースデータを取得すれば、LLM がその内容を要約できるのではないかと考えます。そこで、メール生成テンプレートの場合と同じ作成、テスト、反復という丹念なプロセスの作業に取りかかります。試行を重ねた後、Linda は次の項目生成プロンプトテンプレートを仕上げました。

あなたはサポート担当で、特定の顧客のすべてのオープンケースの概要を簡潔にまとめる業務を任されています。営業担当が顧客に電話をかける直前に、この概要を確認します。

社会経済的地位、性的指向、宗教、人種、外見、国籍、性自認、障害、年齢は人それぞれ異なりますが、すべての人に平等に対応しなければなりません。十分な情報がない場合は、先入観に基づいて憶測するのではなく、不明のオプションを選択する必要があります。

指示:

""""""

この指示に厳密に従い、指定されていない情報は追加しないでください。

現在のオープンケースの件数とエスカレーション済みの件数を集計して担当者に伝えます。次に、エスカレーション済みのケースの問題を要約します。

文は能動態にし、明確、簡潔、率直な言葉を使い、つなぎ言葉や冗長な言い回しは避けてください。

この要約はカジュアルな感じでまとめます。

""""""

オープンケースの JSON データグラフ:

{!$Flow:Ground_On_Open_Cases_For_Account.Prompt}

""""""

 

プロンプト

プロンプトビルダーで、テンプレートから次のプロンプトが作成されました。このプロンプトはプロンプトテンプレートとほぼ同じですが、最後の部分が追加されています。この部分が、フローで実際のデータに置き換えられています。

あなたはサポート担当で、特定の顧客のすべてのオープンケースの概要を簡潔にまとめる業務を任されています。営業担当が顧客に電話をかける直前に、この概要を確認します。

社会経済的地位、性的指向、宗教、人種、外見、国籍、性自認、障害、年齢は人それぞれ異なりますが、すべての人に平等に対応しなければなりません。十分な情報がない場合は、先入観に基づいて憶測するのではなく、不明のオプションを選択する必要があります。

指示:

""""""

この指示に厳密に従い、指定されていない情報は追加しないでください。

現在のオープンケースの件数とエスカレーション済みの件数を集計して担当者に伝えます。次に、エスカレーション済みのケースの問題を要約します。

文は能動態にし、明確、簡潔、率直な言葉を使い、つなぎ言葉や冗長な言い回しは避けてください。

この要約はカジュアルな感じでまとめます。

""""""

オープンケースの JSON データグラフ:

{'ケース':[

'00001004':{'状況':'エスカレーション済み','件名':'不正行為','説明':'靴の注文に不正行為の疑いがある。'},

'00001005':{'状況':'エスカレーション済み','件名':'靴の配送不達','説明':'発送された靴がお客様に届いておらず、追跡情報が更新されていない。'},

'00001006':{'状況':'エスカレーション済み','件名':'靴のスタイルの間違い','説明':'お客様に注文とは異なるスタイルの靴が届いた。'},

'00001007':{'状況':'保留中','件名':'靴底の摩耗','説明':'お客様から靴底がすぐに磨耗するという報告があった。'},

'00001008':{'状況':'エスカレーション済み','件名':'靴の配送遅延','説明':'お客様が想定していた期間内に靴が届かなかった。'},

'00001009':{'状況':'保留中','件名':'靴箱の破損','説明':'靴箱が配送中に破損していた。'},

'00001010':{'状況':'エスカレーション済み','件名':'靴のサイズの間違い','説明':'お客様が受け取った靴のサイズが間違っていた。'},

'00001011':{'状況':'保留中','件名':'誤請求','説明':'請求情報が注文の詳細と一致していない。'}

{}]}

""""""

 

出力 

以下はプロンプトに対する LLM の応答で、データが読みやすい形式で要約されています。

このお客様には 8 件のオープンケースがあり、そのうち 5 件がエスカレーションされています。

エスカレーション済みのケースの問題は次のとおりです。

- ケース 00001004: 靴の注文に関連する詐欺の可能性を調査し、お客様のセキュリティ上の懸念に対処して、取引の信ぴょう性を確認する。

- ケース 00001005: 靴の配送不達にすぐさま対応し、追跡の問題を調査して、お客様が満足するよう遅滞なく解決する。

- ケース 00001006: お客様が受け取った靴のスタイルが注文したものと違っていた問題を解決し、正確な注文処理を徹底する。

- ケース 00001008: 靴の到着に時間がかかっていることにお客様が動揺し、不便さと不満を感じている。すぐさま解決する必要がある。

- ケース 00001010: 届いた靴が注文したサイズと一致していないことから履きにくく、履き心地も悪いため、お客様が不満を抱いている。早急な対応を要する。

上記はオープンケースに基づく情報を示しているに過ぎず、お客様のことを臆測あるいは判断するものではありません。

 

Linda は出力をチェックし、テンプレートに問題がないことを確認します。また、営業チームとミーティングを開き、LLM の応答をすべて確認して、LLM のプロセスを「人間参加型」にする各自の責任を周知徹底します。サポートは安堵し、営業は張り切り、Linda は Customer 360 でサポートされているエクスペリエンスで、プロンプトビルダーを使用して簡素化できる次のワークフローはどれかと考え始めます。

[stability.ai の DreamStudio で、「会議室で営業チームにプレゼンテーションを行っている女性。2D ベクトルの技法で描画。」というプロンプトに従って AI が生成した画像。]

プロンプトビルダーを使用すれば、チームが空いた時間を一番重要なこと、つまり、お客様への対応に充てることができます。

リソース

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

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

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