エージェントは、生成オーケストレーションまたはクラシック オーケストレーションを使用できます。 既定では、新しく作成されたエージェントは、生成オーケストレーションを使用するように構成されています。 生成オーケストレーションにより、エージェントはユーザークエリへの回答やイベント トリガーへの対応に最適なツール、ナレッジ、トピック、および他のエージェントを選択できます。 その代替としては、従来のオーケストレーションがあります。この方法では、エージェントは、ユーザーのクエリに最も近いトリガー フレーズを持つトピックをトリガーして、ユーザーに応答します。
重要
事前構築されたエージェントからエージェントを作成する場合、使用するオーケストレーション方法は、事前構築されたエージェントの構成によって決まります。
管理者が環境で生成オーケストレーションの使用機能をオフにした場合、その環境で作成されたエージェントは、クラシック オーケストレーションのみを使用できます。
次の表は、生成オーケストレーションとクラシック オーケストレーションのエージェント動作を比較したものです。
| 動作 | 生成オーケストレーション | クラシック オーケストレーション |
|---|---|---|
| トピック | トピックは、その目的の説明に基づいて選択されます。 | トピックは、ユーザー クエリとトリガー フレーズの照合に基づいて選択されます。 |
| 子エージェントと接続されたエージェント | 子エージェントと接続されたエージェントは、その説明に基づいて選択されます。 | 該当なし。 |
| ツール | エージェントは、ツールの名前と説明に基づいて呼び出すツールを選択できます。 | ツールは、トピック内からのみ明示的に呼び出すことができます。 |
| ナレッジ | エージェントは、ユーザーのクエリへの応答に向けて積極的なナレッジ検索を選択できます。 | ナレッジは、ユーザーのクエリに一致するトピックがない場合の予備として使用できます (または、トピック内から明示的に呼び出されます)。 |
| 複数のトピック、ツール、ナレッジ ソースの使用 | エージェントは、トピック、ツール、ナレッジの組み合わせを使用できます。 | エージェントは、構成されている場合はナレッジにフォールバックしながら、ユーザーに応答する単一のトピックの選択を試みます。 |
| ユーザーに入力を求める | エージェントは、トピックやツールの入力欄に必要な情報が不足している場合、ユーザーに不足情報の入力を促す質問を自動的に生成できます。 | ユーザーに必要な情報を求めるメッセージを作成するには、トピックで質問ノードを使用する必要があります。 |
| ユーザーに応答する | エージェントは、トピック、ツール、他のエージェント、使用したナレッジから得られる利用可能な情報を使用して、自動的に応答を生成します。 | ユーザーに応答するメッセージを作成するには (またはトピックからツールを呼び出すには)、トピック内のメッセージ ノードを使用する必要があります。 |
ヒント
クラシック オーケストレーションと生成型オーケストレーションの間には、ナレッジの検索方法やサポートされるデータソースなど、重要な違いがあります。 既存のエージェントで生成モードをオンにする前に、既知の制限事項を参照してください。
生成オーケストレーションの機能方法
エージェントによる応答を生成 AI を使用して判断することで、会話をユーザーにとって自然でスムーズなものにすることができます。 生成 AI によって、エージェントが自律的に行動できるようになります。
適切なトピック、ツール、その他のエージェント、ナレッジ ソースの選択
ユーザーがメッセージを送信すると、エージェントは 1 つ以上のツール、トピック、他のエージェント、またはナレッジ ソースを選択して応答を準備します。 選択は複数の要因によって決まります。 最も重要な要素は、トピック、ツール、エージェント、ナレッジ ソースの説明です。 その他の要素には、トピック、ツール、エージェント、またはナレッジソースの名前、あらゆる入力または出力パラメーター、それらの名前と説明が含まれます。 説明によって、エージェントは、ユーザーの目的をツール、他のエージェントやトピックに正確に関連付けることが可能になります。 ユーザーが何を必要としているかを示す方法をすべて予測する必要はありません。
エージェントを構成して生成型オーケストレーションで使用すると、ユーザークエリ (マルチ インテント クエリを含む) を処理するため、またはイベントに自律的に応答するために、1 つ以上のツール、トピック、他のエージェント、またはナレッジ ソースを選択できます。 エージェントが複数のツール、エージェント、またはトピックを選択した場合、不足している情報をユーザーに尋ねるための質問を生成した後、それらを順番に呼び出します。
生成オーケストレーションが有効な場合に、エージェントがナレッジソースを横断して検索する仕組みについての詳細をご覧ください。
ユーザー入力またはイベント トリガーへの応答
エージェントは、ユーザー入力またはイベント トリガーに応じて選択した全てのナレッジ ソース、ツール、エージェント、トピックから返された情報を取り込み、元のユーザー クエリに対する回答を要約します。
ヒント
生成オーケストレーションで構成されたエージェントは、ナレッジ、ツール、他のエージェント、トピックからの情報を使用して応答を生成できるため、メッセージ ノードで最終応答を送信する代わりに、出力変数としてエージェントに返すことで、トピックをより柔軟に設計できます。 この方法によって、エージェントはユーザーにコンテキストに応じた応答を提供できます。 詳細については、トピックの入力と出力を構成するをご参照ください。
テスト中
Copilot Studio で生成オーケストレーションを使用するエージェントをテストする場合、アクティビティ マップを開いて、エージェントがどのように応答するかを追跡できます。
エージェントの生成オーケストレーションをオフにする
エージェントに関しては設定 ページに移動します。
生成 AI セクションの オーケストレーションで エージェントの応答に生成 AIオーケストレーションを使用しますか?で、いいえを選択します。 以上でエージェントはクラシック オーケストレーションを使用するように構成されました。
エージェントの生成オーケストレーションを有効化する
エージェントに関しては設定 ページに移動します。
生成 AI セクションの オーケストレーションで エージェントの応答に生成 AIオーケストレーションを使用しますか?で、はいを選択します。
ヒント
会話の一部 (ツールの実行時に生成される質問など) が AI によって生成される可能性があるとユーザーに通知することをお勧めします。 たとえば、エージェントとの新しい会話が開始された際にユーザーに表示されるメッセージを制御する 会話の開始システム トピック に、メッセージを追加することができます。
説明を作成する
エージェントを構成して生成オーケストレーションを使用する場合は、その子エージェント、接続済みエージェント、トピック、ツール、ナレッジ ソースのそれぞれに対して、高品質な説明を提供します。 適切な説明により、エージェントはユーザーに対応するために適切なトピック、ツール、他のエージェント、およびナレッジソースを選択します。
ツールについては、説明文の作成はエージェントに追加するウィザードの一部です。 説明は事前に入力されることが多いですが、必要に応じて変更することもできます。 ツールの追加と管理の詳細については、カスタム エージェントにツールを追加するを参照してください。
トピックについては、生成オーケストレーションを有効にすると、トリガー ノードにエージェントの選択が表示されます (ユーザーによるフレーズの代わりに)。これにより、トピックの説明を追加または編集できるようになります。
ヒント
クラシックオーケストレーションを使用するように最初に作成したエージェントに対して生成型オーケストレーションを有効にすると、Copilot Studio は各既存トピックのトリガーフレーズに基づいて、既定の説明を自動的に生成します。 生成された説明は、多くの場合、関連するユーザークエリに応じてこれらのトピックを選択できるほど十分に優れています。 ただし、生成された説明を修正するには、この記事で提供されているアドバイスに従うことをお勧めします。
生成オーケストレーションによる多言語サポート
生成オーケストレーションを使用するエージェントが生成するコンテンツは、常に現在アクティブな言語で生成されます。この言語は、エージェントの主要言語か、その補助言語のいずれかとなります。 エージェントは、クライアントまたはブラウザの言語からユーザーの言語を自動的に判定します。 エージェントの言語の追加の詳細については、多言語エージェント構成と作成を参照してください。 生成オーケストレーションでサポートされている言語の一覧については、言語のサポートを参照ください。
ベスト プラクティス
トピック、ツール、ナレッジ ソースの命名には、以下のベスト プラクティスを使用してください。 また、これらの要素について明確で簡潔かつ関連性のある説明文を作成する際にも使用します。
ヒント
複数のトピックに類似した説明がある場合、エージェントはそれらすべてを呼び出して質問に答える可能性があります。 この動作を防ぐには、エージェントを徹底的にテストし、重複する記述を修正します。 詳細は 「生成オーケストレーションのための高品質命令の設定」をご覧ください。
文体
シンプルで直接的な言葉を使用します。 専門用語、俗語、技術用語は避けてください。
説明には能動態と現在形を使用します。 たとえば、「このツールは気象情報を提供します」と書く代わりに、「気象情報はこのツールによって提供されます」と記述します。
箇条書きや番号付きのリストを使用して、一連の品目、行動、または考慮事項を明確に区切ります。
関連性
ツールの機能やトピック、ユーザーの意図に関連するキーワードを使用します。 たとえば、ツールが気象情報を提供する場合は、「天気」、「予報」、「気温」、「雨」、「雪」などのキーワードを使用します。
説明文には、ツールまたはトピックの機能性について簡潔で有益な要約を記述します。 概要を 1 つまたは 2 つの文に制限します。 ツールまたはトピックの機能と、ユーザーにとってのメリットについて説明します。
短いフレーズからなる説明的で一意の名前を使用します。 混乱を招く可能性がある一般的な名前や曖昧な名前は使用しないでください。 たとえば、ツールの名前を「天気」ではなく「天気予報」や「天気レポート」と名前を付けます。
類似したトピックやツール間の曖昧さを防ぐため、具体的な表現を使用します。
たとえば、エージェントが現在の気象状況に関する情報を提供するツールを既に持っている場合でも、明日の天気予報を提供する別のトピックを追加する場合は、これらのトピックの名前と説明が曖昧さを避けるため、十分に具体的であることを確認してください。 このような類似したトピックには、違う名称と説明を付けるようにしてください。 何ができないかを示すのにも役立ちます。 以下に使用する名前と説明の例を示します。
名前: 現在の天気
説明: この トピック は、世界中のあらゆる場所の天気予報を提供します。 気温や雨か雪かなど、現在の天気を尋ねることができます。 将来の天気予報は取得できません。
名前: 明日の天気予報
説明: このトピックは、翌日の世界中のあらゆる場所の天気情報を提供します。 次の温度が提供されます。 今日の現在の天気は取得できません。
してはいけないことの例
次の例は、ガイドラインに従っていません。 最初の例は、ツールがどのような種類の質問に答えられるのかを明示していないため、曖昧すぎます。
名前: 質問に回答する
説明: このツールは質問に答えることができます。
次の例では専門用語が使用されています。 代わりに、1 株当たり利益 (EPS) を明記する必要があります。
名前: EPS を取得
説明: 任意の株価ティッカーの EPS を取得します。
ユーザーの要求の処理に生成オーケストレーションを使用したエージェントとの対話の例
以下の例は、2 つのカスタム トピック (店舗の営業時間検索用と近隣店舗検索用) を持つエージェントと、事前構築済みの MSN Weather コネクタに基づくツールに基づいています。
例 1
この例では、ユーザーは「シアトルの天気はどうですか?」と尋ねます。 エージェントは現在の天気ツールを選択し、ユーザーの質問から認識した「シアトル」を場所入力欄に事前入力します。
例 2
この例では、ユーザーが「営業時間を確認し、最寄りの店舗を探したい」と発言します。エージェントは営業時間トピックと店舗検索トピックの 2 項目を選択し、これらを連結してユーザーの問い合わせの両方に回答します。
例 3
この例では、ユーザーは会話の早い段階で特定された最寄りの店舗であるカークランドを見つけます。 ユーザーは続けて「そこの天気はどうですか?」と尋ねます。 ここでは、エージェントが現在の天気ツールを選択しますが、直近の会話の文脈に基づいて、場所を「カークランド」と事前に入力します。
生成オーケストレーションのコントロール オプションの充実
現在のプランを取り消しています
トピック内のすべてのトピックを終了するノードを使用して、オーケストレーターがユーザーまたはイベント トリガーに応答するために計画していた残りのステップをすべてキャンセルします。
トピックトリガーの使用と会話履歴の制御
エージェントの動作の決定には、以下のトピック トリガーのいずれかを使用できます:
- エージェントがユーザーへの応答を生成したタイミングで、AI の応答が生成されます。
- プランが完了したとき (つまり、エージェントがユーザーに応答するためのすべてのステップを実行したタイミングで)、プランが完了します。
これらのトピックやその他のトピックのトリガーの詳細情報を参照してください。
会話履歴の制御
エージェントは、ユーザーにどのように応答するかを決定したり、応答を生成したり、利用可能なコンテキストから入力値を埋めるなどの他のアクションを実行する際に、最近の会話履歴を使用します。 プランナーが使用する会話履歴は、いつでも変数値のクリアノードを使用して、現在のセッションの会話履歴オプションを選択することでクリアできます。
生成オーケストレーションの既知の制限
生成オーケストレーション モードを使用する場合、以下の既知の問題と制限があります。
ナレッジ
生成オーケストレーションが有効な場合、エージェントはナレッジ ソースを検索する際に会話ブーストのシステム トピックを使用しません。 したがって、エージェントはこのシステムトピックに対する変更を、ナレッジの検索方法をカスタマイズするために使用しません。 この制限は、カスタム データソースを含め,生成回答ノードで構成されたクラシック データソースにも適用されます. 詳細については、生成オーケストレーションを使ったナレッジの働き を参照してください。
トピックとツールの入力パラメーターに対するカスタム エンティティのサポート
ツールとトピックは、入力パラメーターとしてカスタム エンティティ (クローズド リストと正規表現エンティティ) をまだサポートしていません。 ユーザー定義エンティティを使用して情報を収集するには、トピックで質問ノードを使用します。
曖昧性の除去
ユーザーの意図に近いトピックが複数ある場合、エージェントはトピック間の曖昧性解消に失敗する可能性があります。 通常、エージェントはユーザーに、システム トピック複数の一致したトピックを介して、意図に一致する 1 つ以上のトピックを選択するように求めます。 ただし、生成オーケストレーションを使用するエージェントは、現在このトピックを呼び出していません。 複数のトピックが一致のシステム トピックを有効にしたままにすると、この問題が解決された時点でエージェントが自動的にトピックの曖昧性解消を開始します。 今後エージェントがトピックを自動的に曖昧さ解消しないようにするには、システム トピック複数のトピックが一致を無効にします。 このトピックをオフにすると、エージェントをテストできます。 エージェントのテスト後、トピックを再度有効にすることで、曖昧さ解消機能の使用を再開できます。
前の会話コンテキスト
生成オーケストレーションでは、エージェントは、どのツールを呼び出すか、または値で入力を埋めるかを決定する際に、コンテキストを提供するためにユーザーとエージェントの間の最近の会話を使用します。 現在、会話履歴の量は限られているため、エージェントが会話の以前の部分の情報を見たり使用したりできない場合があります。 このような場合、ユーザーからいくつかの情報を再度収集したり、重要な情報が定期的にトランスクリプトに含まれるようにする必要があります。