演習 - トピックを作成して管理する
ここでは、エージェントの会話のフローを作成します。
Microsoft 365 Copilot を使用してトピックを作成する
トピックは、自然言語を使用して作成および編集できます。
Microsoft Copilot Studio に移動します。
重要
正しい環境にいることを確認してください。
画面の左側にある エージェント ペインでエージェントを選択します。
トピック タブを選択します。
トピックの追加 を選択し、Copilot を使用して説明から作成する を選択します。
新しいウィンドウが表示されて、トピックに名前を付け、作成するトピックを説明してください... テキスト フィールドに説明を入力するよう求められます。
トピックに名前を付ける フィールドに、次のテキストを入力します。
Customer Details
作成するトピックを説明してください... フィールドに、次のテキストを入力します。
Ask the customer for their name and email address
作成 を選択します。
生成されたトリガー フレーズと質問ノードを含む新しいトピックが表示されます。
注意
生成されたコンテンツが、次のタブに表示されるものとは異なる場合があることに注意してください。
保存 を選択します。
自然言語を使用してノードを更新する
コパイロットで編集 ペインが画面の右側に表示されていない場合は、作成キャンバスの上部にある Microsoft 365 Copilot アイコンを選択します。
2 番目の質問ノード メール アドレスは何ですか? を選択します。
コパイロットで編集 パネルで、何の操作を実行しますか? フィールドに、次のテキストを入力します。
Update the message in this question node to say thank you to the Name variable from the previous node and then proceed to ask the email address question
更新 を選択します。
注意
メッセージは、メッセージ ノードからの Name 変数をそのノードの前に含むように更新されます。
保存 を選択します。
自然言語を使用してノードを追加する
既存のノードを更新する他に、Microsoft 365 Copilot を使用して新しいノードを追加できます。
ノードの周りにある空白の領域をクリックして、ノードが選択されていないことを確認します。
コパイロットで編集パネルで、何の操作を実行しますか? フィールドに、次のテキストを入力します。
Summarize the information collected in an adaptive card
更新を選択します。
トピックの末尾に、アダプティブ カードを含むメッセージ ノードが追加されます。
[アダプティブ カード] を選択します。 画面の右側にアダプティブ カードのプロパティが表示されます。
アダプティブ カードの式は、上の図のようになります。 このようになっていない場合は、次の式をコピーして貼り付けることができます。
{ type: "AdaptiveCard", body: [ { type: "TextBlock", size: "Medium", weight: "Bolder", text: "Summary" }, { type: "FactSet", facts: [ { title: "Full Name", value: Text(Topic.Name) }, { title: "Email Address", value: Text(Topic.EmailAddress) } ] }, { type: "TextBlock", text: "Thank you for providing the information." } ] }
アダプティブ カードのプロパティを開くと コパイロットで編集 パネルが閉じるため、アイコンを選択してもう一度開く必要があります。
ノードの周りにある空白の領域をクリックして、ノードが選択されていないことを確認します。
何の操作を実行しますか? フィールドに、次のテキストを入力します。
Add a new multiple choice question to prompt the user if the details are correct with two options Yes or No
更新を選択します。
トピックの末尾に、ユーザーが選択できるオプションを含む新しい質問ノードが追加されます。
保存 を選択します。
変数のスコープを構成する
変数 を選択して [変数] ペインを開きます。
トピックの変数の右側にあるチェック ボックスをオンにします。
保存 を選択します。
トピックを手動で作成する
トピックは、トリガー フレーズやノードを追加することで手動で作成できます。
トピックを最初から作成する
トピック タブを選択します。
トピックの追加 を選択し、最初から を選択します。
詳細 を選択して [トピックの詳細] ダイアログを開きます。
名前フィールドに、次のテキストを入力します。
Book a Real Estate Showing
表示名フィールドに、次のテキストを入力します。
Book
説明フィールドに、次のテキストを入力します。
Select the property and requested date and create a booking request
保存 を選択します。
詳細 を選択して [トピックの詳細] ダイアログを閉じます。
トリガー フレーズを追加する
トリガー の フレーズ で 編集 を選択します。
フレーズの追加 の下に
I want to book a real estate showing
と入力し、+ アイコンを選択します。フレーズの追加 の下に
Schedule a real estate showing
と入力し、+ アイコンを選択します。フレーズの追加 の下に
Arrange the viewing for a real estate property
と入力し、+ アイコンを選択します。フレーズの追加 の下に
Set up an appointment to view a house
と入力し、+ アイコンを選択します。フレーズの追加 の下に
Plan a property viewing
と入力し、+ アイコンを選択します。保存 を選択します。
メッセージ ノードを追加する
[トリガー] ノードの下にある + アイコンを選択し、メッセージを送信する を選択します。
メッセージを入力する フィールドに、次のテキストを入力します。
Hi, I can help you with booking a real estate property showing.
保存 を選択します。
トピック管理ノードを追加する
[メッセージを送信する] ノードの下にある + アイコンを選択し、条件を追加する を選択します。
DetailsCorrect 変数を選択します。
トピック管理 > 別のトピックへの移動 の順に選択し、Customer Details トピックを選択します。
保存 を選択します。
条件ノードを追加する
リダイレクト ノードの下にある + アイコンを選択し、条件を追加する を選択します。
変数の DetailsCorrect を選択します。
次の値に等しい を選択します
はい を選択します。
保存 を選択します。
質問ノードを追加する
左側の条件ノードの下にある + アイコンを選択し、質問する を選択します。
メッセージを入力する フィールドに、次のテキストを入力します。
Which property do you want to see?
特定 で ユーザーの応答全体 を選択します。
ユーザーの応答に名前を付けて保存 で変数を選択し、変数名 に
PropertyName
と入力します保存 を選択します。
質問ノードの下にある + アイコンを選択し、質問する を選択します。
メッセージを入力する フィールドに、次のテキストを入力します。
What date and time do you want to see the property?
特定 で 日付と時間 を選択します。
ユーザーの応答に名前を付けて保存 で変数を選択し、変数名 に
DateTime
と入力します保存 を選択します。
エージェントをテストする
画面の右上にある テスト ボタンを選択して、テスト パネルを開きます。
画面の右上にあるテスト パネル上部から 3 つのドット を選択します。
トピック間の追跡 を選択します。
テスト パネルの上部で新しい会話を開始アイコンを選択します。
会話の開始 メッセージが表示されると、エージェントによって会話が開始されます。 応答に、先に作成したトピックのトリガー フレーズを入力します。
I want to book a real estate showing
次の画像のように、エージェントは「氏名は何ですか?」という質問で応答します。
次の情報を入力します。
Name: <Your name> Email address: <Your email address>
情報を入力すると、入力した情報、その情報が正しいか確認する質問、はい または いいえ を選択するオプションがアダプティブ カードに表示されます。
はい を選択します。
Which property to you want to see? というプロンプトに対して
555 Oak Lane, Denver, CO 80203
と入力します。What date and time do you want to see the property? というプロンプトに対して
Tomorrow 10:00 AM
と入力します。
エンティティを使用してエージェントを改善する
Microsoft Copilot Studio は、エンティティを使用してユーザーの意図を理解します。 一般的に使用される情報を表す事前構築済みのエンティティが数多く含まれています。 特定の目的に合わせてカスタム エンティティを作成できます。
事前構築済みのエンティティを表示する
画面の右上にある 設定 を選択します。
エンティティ タブを選択します。
物件タイプ エンティティを作成する
+ エンティティの追加 を選択し、+ 新しいエンティティ を選択します。
閉じているリスト タイルを選択します。
名前 フィールドに
Property Type
と入力します。項目の入力 フィールドに
Apartment
と入力し、追加 を選択します。項目の入力 フィールドに
House
と入力し、追加 を選択します。項目の入力 フィールドに
Condominium
と入力し、追加 を選択します。項目の入力 フィールドに
Duplex
と入力し、追加 を選択します。Apartment で + シノニム を選択して
Flat
と入力し、+ アイコンを選択して 完了 を選択します。House で + シノニム を選択して
Single-family home
と入力し、+ アイコンを選択して 完了 を選択します。Condominium で + シノニム を選択して
Townhouse
と入力し、+ アイコンを選択して 完了 を選択します。保存 を選択します。
閉じる を選択します。
寝室数エンティティを作成する
+ エンティティの追加 を選択し、+ 新しいエンティティ を選択します。
正規表現 (Regex) タイルを選択します。
名前 フィールドに
Number of Bedrooms
と入力します。パターン フィールドに
[1-5]
と入力します。保存 を選択します。
閉じる を選択します。
エンティティを使用する
画面の左側にある エージェント ペインでエージェントを選択し、概要 タブに戻ります。
トピック タブを選択します。
Book a Real Estate Showing トピックを選択します。
物件質問ノードの上にある + アイコンを選択し、質問する を選択します。
メッセージを入力する フィールドに、次のテキストを入力します。
What type of property do you want to see?
特定 で Property Type を選択します。
ユーザーのオプションの選択 を選択し、すべてのリスト値の 表示 オプションをオンにします。
ユーザーの応答に名前を付けて保存 で変数を選択し、変数名 に
PropertyType
と入力します新しい質問ノードの下にある + アイコンを選択し、質問する を選択します。
メッセージを入力する フィールドに、次のテキストを入力します。
How many bedrooms do you need?
特定 で Number of Bedrooms を選択します。
ユーザーの応答に名前を付けて保存 で変数を選択し、変数名 に
NumberofBedrooms
と入力します保存 を選択します。
エージェント アクションの作成
Microsoft Copilot Studio は、Power Automate クラウド フローを使用して Microsoft Dataverse のデータにアクセスできます
物件を取得する Power Automate フローを作成する
画面の左側にある エージェント ペインでエージェントを選択し、概要 タブに戻ります。
アクション タブを選択します。
+ アクションの追加 を選択します。
下にスクロールして 新しいフローの作成 を選択します。
求められた場合は、Power Automate にサインインします。
画面の左上にある コパイロットからフローを実行する を選択し、フロー名として
Get Property
と入力します。トリガー ステップ コパイロットからフローを実行する を選択し、+ 入力の追加 を選択します。
テキスト を選択します。
入力 で
Bedrooms
と入力し、入力を指定してください でNumber of Bedrooms
と入力します。フロー内の 2 つのステップの間にある + アイコンを選択し、アクションの追加 を選択します。
検索 フィールドに
Dataverse
と入力し、Dataverse コネクタの もっと見る を選択します。行を一覧にする アクションを選択します。
認証を求められたら、OAuth を選択し、サインイン を選択します。
テーブル名として Real Estate Properties を選択します。
すべて表示 を選択します。
行のフィルター フィールドに
contoso_bedrooms eq
と入力します。動的コンテンツ を使用して Bedrooms パラメーターを選択し、追加 を選択します。
Copilot への応答 アクションを選択し、+ 出力の追加 を選択します。
テキスト を選択します。
名前を入力 に
PropertyId
と入力し、応答に使用する値を入力 フィールドを選択して、式の挿入 を選択します。次の式を入力します。
first(outputs('List_rows')?['body/value'])['contoso_realestatepropertyid']
追加 を選択します。
+ 出力の追加 を選択します。
テキスト を選択します。
名前を入力 に
PropertyName
と入力し、応答に使用する値を入力 フィールドを選択して、式の挿入 を選択します。次の式を入力します。
first(outputs('List_rows')?['body/value'])['contoso_propertyname']
追加 を選択します。
設定 を選択します。
非同期応答 が オフ に設定されていることを確認します。
ドラフトの保存 を選択します。
公開 を選択します。
Power Automate タブを閉じます。
物件を取得するエージェント アクションを追加する
更新 を選択します。
Get Property フローを選択します。
次へ を選択します。
次へ を選択します。
完了 を選択します。
トピック タブを選択します。
Book a Real Estate Showing トピックを選択します。
How many bedrooms do you need? という質問ノードの下にある + アイコンを選択し、アクションを呼び出す を選択します。
Get Property フローを選択します。
Bedrooms 入力パラメーターの NumberofBedrooms 変数を選択します。
Which property do you want to see? という質問ノードの 3 つのドット を選択し、削除 を選択します。
アクション ノードの下にある + アイコンを選択し、メッセージを送信する を選択します。
メッセージを入力する フィールドに、次のテキストを入力します。
Property
変数の挿入 アイコンを選択し、PropertyName 変数を選択します。
保存 を選択します。
公開 を選択し、公開 を選択します。
予約を行う Power Automate フローを作成する
画面の左側にある エージェント ペインでエージェントを選択し、概要 タブに戻ります。
アクション タブを選択します。
+ アクションの追加 を選択します。
下にスクロールして 新しいフローの作成 を選択します。
画面の左上にある コパイロットからフローを実行する を選択し、フロー名として
Create Booking Request
と入力します。トリガー ステップ コパイロットからフローを実行する を選択し、+ 入力の追加 を選択します。
テキスト を選択します。
入力 で
PropertyId
と入力し、入力を指定してください でProperty
と入力します。+ 入力の追加 を選択します。
テキスト を選択します。
入力 で
ViewerName
と入力し、入力を指定してください でViewer Name
と入力します。+ 入力の追加 を選択します。
テキスト を選択します。
入力 で
ViewerEmail
と入力し、入力を指定してください でViewer Email
と入力します。フロー内の 2 つのステップの間にある + アイコンを選択し、アクションの追加 を選択します。
検索 フィールドに
Dataverse
と入力し、Dataverse コネクタの もっと見る を選択します。新しい行を追加する アクションを選択します。
テーブル名として Booking Requests を選択します。
すべて表示 を選択します。
Booking Name フィールドに
Agent booking
と入力します。物件 (不動産物件) フィールドに
contoso_bookingrequests()
と入力して、カッコ内にカーソルを移動し、動的コンテンツ を使用して PropertyId パラメーターを選択します。動的コンテンツ を使用して、Viewer Name フィールドの ViewerName パラメーターを選択します。
動的コンテンツ を使用して、Viewer Email フィールドの ViewerEmail パラメーターを選択します。
Copilot への応答 アクションを選択します。
設定 を選択します。
非同期応答 が オフ に設定されていることを確認します。
ドラフトの保存 を選択します。
公開 を選択します。
Power Automate タブを閉じます。
予約要求を作成するエージェント アクションを追加する
更新 を選択します。
Create Booking Request フローを選択します。
次へ を選択します。
次へ を選択します。
完了 を選択します。
トピック タブを選択します。
Book a Real Estate Showing トピックを選択します。
What date and time do you want to see the property? というノードの下にある + アイコンを選択し、アクションを呼び出す を選択します。
Create Booking Request フローを選択します。
PropertyId 入力パラメーターの PropertyId 変数を選択します。
ViewerName 入力パラメーターの Name 変数を選択します。
ViewerEmail 入力パラメーターの EmailAddress 変数を選択します。
アクション ノードの下にある + アイコンを選択します。 トピック管理 を選択した後、別のトピックに移動する を選択し、会話の終了 を選択します。
保存 を選択します。
公開 を選択し、公開 を選択します。
エージェントをテストして予約要求を行う
画面の右上にある テスト ボタンを選択して、テスト パネルを開きます。
画面の右上にあるテスト パネル上部から 3 つのドット を選択します。
トピック間の追跡 を選択します。
テスト パネルの上部で新しい会話を開始アイコンを選択します。
会話の開始 メッセージが表示されると、エージェントによって会話が開始されます。 応答に、先に作成したトピックのトリガー フレーズを入力します。
I want to book a real estate showing
次の情報を入力します。
Name: <Your name> Email address: <Your email address>
情報を入力すると、入力した情報、その情報が正しいか確認する質問、はい または いいえ を選択するオプションがアダプティブ カードに表示されます。
はい を選択します。
物件タイプのプロンプトに対して House を選択します。
寝室数のプロンプトに対して
2
と入力します。What date and time do you want to see the property? というプロンプトに対して
Tomorrow 2:00 PM
と入力します。この回答でよろしいでしょうか? というプロンプトに対して はい を選択します。
任意の評価を選択します。
他に何かお手伝いできますか? というプロンプトに対して いいえ を選択します。
予約要求を確認する
Power Apps Maker Portal に移動します。
左側のナビゲーション ウィンドウで テーブル を選択し、カスタム を選択します。
Booking Request テーブルを選択します。
Booking Request の列とデータ の下に、エージェント予約要求が作成されました。