トピックの作成と編集
Copilot Studio で、トピックはコパイロットの会話のプログレスを定義します。
トピックを作成するには、提供されているテンプレートをカスタマイズするか、トピックをゼロから作成するか、または必要な内容を記述して AI にトピックを作成してもらうことができます。
Copilot Studio で、トピック は、ユーザーとコパイロットの間の会話スレッドの一部を表します。 作成キャンバス 上でトピックを定義して使用します。トピックには 1 つ以上の 会話ノード、 が含まれ、トピックが使用できる会話パスをまとめて定義します。 各ノードは、メッセージの送信や質問などのアクションを実行します。
トピックには、トリガー フレーズ のセット (顧客が使用する可能性の高い特定の問題に関連するフレーズ、キーワード、質問) が含まれます。 Copilot Studio は、自然言語理解、顧客のメッセージ、すべてのトピックのトリガー フレーズを使用して、トリガーする最適なトピックを見つけます。 メッセージは、トピックをトリガーするためにトピックのトリガー フレーズと完全に一致する必要はありません。 たとえば、店舗の営業時間に関するトピックには、トリガー フレーズ check store hours
が含まれる場合があります。 顧客が "店舗の営業時間を参照" を入力すると、このフレーズが店舗の営業時間トピックをトリガーします。
前提条件
- コパイロットを作成するには、クイックスタート: コパイロットの作成と展開 を参照してください。
自然な言語の解釈
コパイロットでは自然言語理解 (NLU) を使用して、顧客が入力した内容を解析し、最適なトリガー フレーズまたはノードを見つけます。
たとえば、ユーザーが「営業時間」と入力するとします。コパイロットはそれを 店舗の営業時間 トピックと照合し、顧客が関心のある店舗を尋ねる会話を開始し、店舗の営業時間を表示します。
ボットのテスト ペインには、コパイロットの会話のプログレスがすべてのステップでどのように再生されるかが表示されます。 コパイロットのテスト ペインを使用して、Copilot Studio ポータルを終了せずにトピックを微調整できます。
コパイロットとトピックの制限については、クォータ、制限、アプリの登録、証明書、構成値を参照してください。
Copilot Studio のトピック
トピックの種類
コパイロットには、システム と カスタム の 2 種類のトピックが含まれます。 すべての新しいコパイロットは、事前定義されたシステムとカスタム トピックのセットから開始します。
システム トピックは、人と話す、または会話を終了するというカスタム要求などの重要な動作をサポートします。 一部のシステム トピックにはトリガー フレーズがあり、コパイロットのニーズに合わせてカスタマイズできます。
- システム トピックを作成することはできません。
- システム トピックは削除できませんが、無効にすることはできます。
- システム トピックに変更を加えることができます。 ただし、完全なコパイロット エクスペリエンスの作成に慣れるまでは、システム トピックを編集することはお勧めしません。
詳細については、システム トピックを使用するを参照してください。
事前定義されたカスタム トピックには、顧客への挨拶、会話の終了、会話の再開などの一般的な動作が含まれます。
- 定義済みのカスタム トピックを変更したり、コパイロットから完全に削除したりできます。
- 作成するトピックはすべてカスタム トピックです。
ノードの種類
利用できるノードには次の種類があります。
回答内容 | プロパティ |
---|---|
メッセージの送信 | 顧客メッセージを送信します。 |
質問する | 顧客に質問します。 |
アダプティブ カードで質問する | 他のアプリと交換するための JSON スニペットを作成します。 |
条件を使用して作成する | 条件に基づいて会話を分岐させます。 |
変数管理 | 値を設定するか、値を解析するか、すべての変数をクリアします。 |
トピックの管理 | トピックまたは会話をリダイレクト、転送、または終了します。 |
フローの呼び出し | Power Automate または Excel Online のようなフローを呼び出すか、コネクタまたはプラグインを使用します。 |
Advanced | 生成的な答え、HTTP 要求、イベント など。 |
チップ
名前を変更し、ノードを識別しやすくします。 ノードの名前フィールドを選択して名前を直接更新するか、ノードのその他 (…) アイコンを選択してメニューから名前の変更を選択します。 コード エディターでノードの名前を変更することもできます。
トリガー ノードと 手順 に移動 ノードの名前を変更することはできません。
ノード名の長さは 500 文字までです。
トピックを作成する
コパイロット ページのリストからコパイロットを開きます。 視認性を高めるために、今のところは コパイロットのテスト パネルを閉じてください。
上部のメニュー バーの トピック を選択します。
トピックを追加を選択し、最初からを選択します。
トリガー ノードは、空白の トピック オーサリング キャンバス上に表示されます。
トリガー ノードのその他アイコン (…) を選択し、プロパティ を選択します。 フレーズ認識プロパティ パネルが表示されます。
認識された意図のプロパティ パネルで、フレーズ 領域を選択します。 フレーズ セカンダリ パネルが表示されます。
フレーズの追加 で、トピックのトリガー フレーズを入力します。
コパイロットが顧客の応答を理解できるように AI をトレーニングするには、5 個から 10個のトリガー フレーズが必要です。 トリガー フレーズをさらに追加するには、次のいずれかを実行できます:
- テキスト フィールドの横にある 追加 アイコン を選択し、目的のフレーズを入力します。
- 一連のトリガー フレーズをそれぞれ別の行に貼り付け、Enter を選択します。
- 一連のトリガー フレーズを入力し、それぞれの後に Shift+Enter を押して別の行に配置し、Enter を選択します。
トリガー フレーズには句読点を含めることができますが、長文ではなく、短い語句を使用することをお勧めします。
ツール バーで 詳細 を選択して、トピック詳細 パネルを開きます。
コパイロット トピックの詳細を追加します。
- トピックを識別するための名前 (「店舗の営業時間」など) を入力します。トピック ページには、コパイロットで定義されているすべてのトピックがこの名前で一覧表示されます。
- 必要に応じて、副操縦士が顧客のメッセージに一致する トピック を判断できない場合に顧客に表示する 表示名 を入力します。
- 必要に応じて、説明 フィールドを使用して、自分自身やチームの他のコパイロット作成者のトピックの目的を説明します。 顧客にトピックの説明が表示されることはありません。
上部のメニュー バーの 保存 を選択して、トピックを保存します。
重要
トピックの名前にはピリオド (.
) を使用しないでください。 トピックの名前にピリオドがあるコパイロットを含むソリューションはエクスポートできません。
トピックの会話パスを設計する
トピックを作成すると、作成キャンバスに トリガー ノードが自動的に表示されます。 その後、さまざまな種類のノードを追加して、トピックの目的の会話パスにすることができます。
トピック作成キャンバスで別のノードの後、または 2 つのノード間にノードを追加するには:
新しいノードを追加するノードの下にある ノードの追加 アイコン を選択します。
表示されたリストから目的の ノードの種類 を選択します。
ノードの削除
削除するノードの その他 アイコン (…) を 選択 クリックし、選択 削除します。
キャンバス上のノードを編集するための制御
ツール バーのコントロールを使用して、選択したノードまたは選択した隣接ノードを切り取り、コピー、貼り付け、および削除できます。
ツール バーでは、編集を元に戻すこともできます。 元に戻す メニューを開いて、すべての操作を最後に保存した状態に戻すか、直前の操作をやり直します。
ノードを貼り付ける
切り取りカット や コピー ツールを使用して、複数のノードをクリップボードに配置したら、キャンバスに貼り付ける方法は次の 2 とおりあります。
ノードを選択してから貼り付けを選択した場合、クリップボードのノードは、選択したノードの後に挿入されます。
"+" を選択して ノードの追加 メニューを表示し、貼り付け を選択すると、クリップボード上のノードがその位置に挿入されます。
トピック の入力および出力パラメータを追加します
トピックには入力および出力パラメータを持てます。 トピックが 別のトピックにリダイレクト する場合、これらのパラメータを使用してトピック間で情報を渡すことができます。
さらに、コパイロットが 生成モード を使用する場合、会話のコンテキストから、またはユーザーから値を収集するための質問を生成した後に、トピック入力を自動的に入力できます。 この動作は、アクションの生成スロット充填の動作に似ています。
トピックの入力および出力パラメータの詳細については、トピックの入力と出力を管理する を参照してください。
コード エディターでトピックを編集する
コード エディターには、YAML でトピックが表示されます。YAML は、読みやすく理解しやすいマークアップ言語です。 コード エディターを使用して、他の作成者が作成したものであっても、他のボットからトピックをコピーして貼り付けます。
重要
トピック全体をコード エディターで設計し、複雑なトピックを貼り付けることは、完全にはサポートされていません。
この例では、YAML をコピーしてコード エディターに貼り付け、顧客に配送情報を尋ねるトピックをすぐに追加します。
トピック ページで、+ 作成>空欄から を選択します。
作成キャンバスの右上隅で、選択 その他、次に 選択 コード エディターを開く を選択します。
コード エディターの内容を選択して削除します。 次に、以下の YAML コードをコピーして貼り付けます:
kind: AdaptiveDialog beginDialog: kind: OnRecognizedIntent id: main intent: displayName: Lesson 3 - A topic with a condition, variables and a prebuilt entity triggerQueries: - Buy items - Buy online - Buy product - Purchase item - Order product actions: - kind: SendMessage id: Sjghab message: I am happy to help you place your order. - kind: Question id: eRH3BJ alwaysPrompt: false variable: init:Topic.State prompt: To what state will you be shipping? entity: StatePrebuiltEntity - kind: ConditionGroup id: sEzulE conditions: - id: pbR5LO condition: =Topic.State = "California" || Topic.State = "Washington" || Topic.State = "Oregon" elseActions: - kind: SendMessage id: X7BFUC message: There will be an additional shipping charge of $27.50. - kind: Question id: 6lyBi8 alwaysPrompt: false variable: init:Topic.ShippingRateAccepted prompt: Is that acceptable? entity: BooleanPrebuiltEntity - kind: ConditionGroup id: 9BR57P conditions: - id: BW47C4 condition: =Topic.ShippingRateAccepted = true elseActions: - kind: SendMessage id: LMwySU message: Thank you and please come again.
保存を選択してから、コード エディターを閉じるを選択します。 質問 ノードには、配送に関する質問に対して多くの条件が設定されました。
コパイロットをテストして公開する
トピックに変更を加えるときに コパイロットをテスト して、すべてが想定どおりに動作していることを確認します。
コパイロットを設計およびテストした後、ウェブ、モバイル、ネイティブ アプリ、または Microsoft Bot Framework チャネルに公開します。