コンテキストに合わせて管理および保守しやすいようにトピックを作成および整理します
Copilot Studio は、トピック の管理において非常に柔軟です。 1 つですべてに適用できる わけではありませんが、トピックをトリガーするさまざまな方法を覚えておくことをお勧めします:
トピックはユーザーの発話 と自然言語理解(NLU)モデルに基づいてトリガーされます。
これらのトピックを 入り口のトピックと考えて構いません。
トリガーフレーズが複数のトピックに重複する場合は、キャッチオールトピック(または 曖昧さ回避トピック)を組み込み、スロット埋めや明確化質問を通じて他のトピックへリダイレクトします。
エンティティ抽出のおかげで、会話は明確化の質問を飛ばし、ユーザーの入力なしに直接適切なトピックに流れます。
トピックはリダイレクトアクションから呼び出されるとトリガーされます。
これらのトピックには会話ノードと論理ノードを含めることができ、複数のトピックから呼び出すことができ、入力変数と出力変数を持つことができます。 これらは理想的には再利用可能な非常に小さいトピックです。
トピックは両方にすることもできます。
例えば、トピックは意図認識や明示的なリダイレクトによってトリガーされることがあります。
イベントは話題を引き起こすことがあります。
たとえば、カスタム イベント、非アクティブなどです。
詳細については、 トピックトリガーの全リストをご覧ください。
チップ
次の例では、トリガーフレーズを2つの主要なトピックに関連付け、それらの論理を複数のトピックに分解し、リダイレクトアクションを使って呼び出します。
いくつかのトピックは複数の他のトピックで呼び出すことができます。 例えば、 会話の終わり のトピックです。
スロットフィリングとエンティティ抽出のおかげで、ユーザーが「クレジットカードのブロックを解除する必要があります」と言うと、 Card トピックがトリガーされ、 Debit/Credit と Block/Unblock の質問はスキップされます。トリガーフレーズから CardType と OperationType が導かれているからです。 その後、ユーザーが追加入力を行わずに、適切な Credit Card 子トピックが自動的に呼び出されます。
非常に小さいトピックを作成する
大きなトピックは、維持と更新が困難になる場合があります。 特に複数のトピックがエージェントの会話ロジックの一部を共有している場合は、可能な限りエージェントのロジックを分解してください。
すべてのトピックにトリガーフレーズがある必要はありません。 トピックは他のトピックにリダイレクトでき、変動する情報をやり取りできます。
チップ
大きなトピックをいくつかまとめるよりも、多くの小さなトピックを作る方が管理しやすいことが多いです。 このアプローチは、トリガーフレーズを特定のトピックに明確にマッピングすることで、トリガーをより効果的にします。
トピックの数は会話スタイルの好みです。 大きなトピックをいくつか持つことも、小さなトピックもいくつか用意できます。
チップ
「request」や「issue」のような一般的な単語のように認識が難しい意図については、トピックを分割することを検討してください。 これらの言葉は意味が異なるため、十分なトリガーフレーズを含めてください。
再利用可能なトピックを作成する
複数のトピックが会話メッセージやロジックノードを共有する場合は、内容を重複させるのではなく、新しいトピックにまとめましょう。 こうすることで、そのトピックへの単一の更新が、そのトピックにリダイレクトされるすべてのトピックを反映します。
チップ
同じ、または似たノードの順序を持つ複数のCopilot Studioトピックから同じPower Automateクラウドフローを呼び出す場合、それらのノードを専用トピックにしてください。
トピックの重複を回避する
トピック間のあいまいさを監視して除去する
NLUがトピックをトリガーする際は、重複の問題を避けましょう。 「 複数トピックマッチド 」システムトピック(別名「what you mean」)に頻繁に問い合わせると、重複の問題がしばしば明らかになります。
異なるトピックのトリガーフレーズ間の意図の重複を減らすことで、これらの問題を防ぐことができます。
チップ
トリガーフレーズでトリガーされたトピックについては、以下を挙げるべきです:
- トピック全体でトリガー フレーズを比較し、あいまいなペアを削除します。
- 異なるトピックで同じ言葉を使うのは避けましょう。トリガーフレーズを使えばいいです。
- 「本気ですか?」という話題を引き起こすユーザーの発言を分析してください。
曖昧性解消トピックを作成する
複数のトピックのトリガーフレーズが似すぎている場合、曖昧さ回避トピックを作成することでトピックの重複を避けられます。
チップ
例えば、「クレジットカードのブロック解除」や「デビットカードのブロック解除」のようなシナリオを考えてみましょう。ユーザーが単に「カードのブロック解除」と言い、NLUモデルがトリガーするトピックを特定できない場合です。 一般的な Card 意味不明化トピックを呼び出し、エンティティスロットを埋める質問を CardTypeに使い、適切なトピックを展開できます。
エンティティを使用してトピックの数を減らす
変数の変動を保存できる場合は、ロジックの重複は避けましょう。 例えば、次のような類似したトピックを作る代わりに、
- ピザを注文する
- ハンバーガーを注文する
- ドリンクを注文する
作成:
-
Orderの 1 つのトピック -
FoodType、Pizzas、Burgersを値として持つDrinksの 1 つのエンティティ。