はじめに
Copilot Studio でマルチエージェントがサポートされるようになりました。要は、作成したエージェントを別のエージェントから呼び出すことができます。
今回は、こちらの機能を試してみましたので記事にまとめたいと思います。
なぜマルチエージェントなのか?
作成したエージェントを別のエージェントから呼び出すことができることで何が嬉しいのか?なぜマルチエージェントなのか?と感じる人もいると思います。
Copilot Studio で作成するエージェントの目的は、指示文、膨大なナレッジ、AI モデル、トリガー、ツール(コネクタアクションクション/MCP)などを用いて、人の仕事を代行することだと思います。
しかし、そもそも人の仕事、アウトプットって、複数の専門家が協業していませんか?例えば、私一人で考えても、様々な得意分野/専門領域を駆使して最終的にアウトプットしています。
そして、仕事の現場となると、様々な専門領域を持つ人が協業してアウトプットしていると思います。
つまり、「エージェントに人の仕事を任せる」という前提を踏まえると、マルチエージェントの方が理にかなっており、その実現にも近づけるのではないか
という発想から、マルチエージェントという仕組みが生まれ、Copilot Studio もこの仕組みに対応したという認識です。
Copilot Studio では、ナレッジを登録するだけで、それらの情報をもとに適切な回答を生成してくれる AI チャットボット(Copilot Studio 的にはエージェント)を作成することができます。
この機能を試したことのある方の中には、とりあえずナレッジを登録してみたものの、質問に対して意図しないナレッジを参照して回答されてしまう、といった事象に遭遇したことがある方もいらっしゃるのではないでしょうか。
その原因の一つとして、複数の専門領域にまたがるナレッジを一つのエージェントに登録した結果、意図したナレッジが参照されなかったという点が挙げられます。
このようなケースでは、専門領域ごとにエージェントを分け、親エージェントが質問の内容に応じて適切な子エージェントを呼び出す、いわゆるマルチエージェント構成とすることで、課題を解消できる可能性があります。
それでは、架空のシナリオをベースに、実際にマルチエージェントを作成してみたいと思います。
シナリオ
今回は、製造の現場の問い合わせを受け付ける以下のようなマルチエージェントを作成してみます。
エージェント名 | 役割 | ナレッジ例(1~2件) |
---|---|---|
親エージェントProductionCoordinator
|
ユーザー問い合せを受け、適切な子エージェントにルーティング | — |
子エージェントAQualityAssuranceAgent
|
品質検査基準や手順に関する質問に回答 | 1. 成形品外観検査基準 – ひび、バリの許容値一覧 2. 検査手順フロー – 5ステップのチェックリスト |
子エージェントBEquipmentMaintenanceAgent
|
設備保全・メンテナンス計画に関する質問に回答 | 1. 定期保全スケジュール – 週次/月次チェック項目一覧 2. エラーコード対処 – E101~E110の原因と対処 |
子エージェント 1 (QualityAssuranceAgent) の作成
ナレッジを基に、品質検査基準や手順に関する質問に回答します。今回、ナレッジは簡易的な json ファイルにしています。
生成 AI 関連の設定は以下の通りです。
上記オーケストレーションを有効にすると、なぜか「ToolIdentifierConflict」のエラーが出るため、暫定策として、以下のトピックをオフにしています。
単体レベルでは動作します。
子エージェント 2(EquipmentMaintenanceAgent)の作成
同じような感じでもう一つエージェントを作成します。
こちらも単体レベルでは動作します。
親エージェン(ProductionCoordinator)の作成
親エージェントはシンプルです。説明文、指示文を書いて、あとは、それぞれのエージェントを登録します。
なお、他のエージェントの指定について、エージェントの名前を直打ちするのではなく、以下のようにスラッシュ記号を入力して、該当のエージェントを選択する方が、より正確に該当のエージェントを呼び出せると考えます。
※現在この方法が使えない方も、いずれ使えるようになると思います
テストしてみます。品質検査基準や手順に関する質問のため、「QualityAssuranceAgent」が呼び出されて回答されています。
続いて、設備保全・メンテナンス計画に関する質問のため、「EquipmentMaintenanceAgent」側が呼び出されて回答されています。
その後もそれぞれいい感じにエージェントが呼び出されているようです。
まとめ
今回は、Copilot Studio のマルチエージェントを試してみました。思ったよりいい感じに動作しました。今後、Copilot Studio で作成するエージェントに人の仕事を任せようと計画するかつ任せる専門領域が多い場合はこのマルチエージェントの機能を試してみることをお勧めします。