Microsoft Copilot Studioは、コーディング知識がなくても高度なAIエージェントを構築できるローコード開発プラットフォームです。
本記事では、Copilot Studioのエージェント理解の第一歩として、概要とエージェントを作成する流れについて解説します。
エージェントとは何か?
エージェントは、ユーザーと対話するインテリジェントな会話型AIアシスタントです。Copilot Studioでは、以下2種類のエージェントを作成することができます。
カスタムエージェント
カスタムエージェントは、作成者がゼロから構築するエージェントです。特定の目的やビジネスニーズに合わせて完全にカスタマイズされ、以下のような特徴があります。
- 完全なカスタマイズ: 会話フロー、応答内容、トリガーワードなどを自由に設計可能
- マルチチャネル対応: Microsoft Teams、Webサイト、モバイルアプリなど様々なプラットフォームに展開可能
- コンテンツの連携: ナレッジ、アクション、スターター プロンプトなど、外部リソースと連携可能
- ローコード開発: ドラッグ&ドロップインターフェースを使用した会話型インターフェースで作成
Copilotエージェント
Copilot エージェント は、Microsoft 365 Copilot (M365 Copilot Extensions ) 専用に設計された拡張機能です。以下のような特徴があります。
- Web グラウンディング: Web ベースの情報にアクセスして利用する機能を提供
- ナレッジ: ユーザーの操作を強化するためのナレッジ管理機能を提供
- アクション: M365 内で実行できるさまざまなアクションを容易に
エージェントの基本的な作成方法
Copilot Studioでエージェントを作成する基本的な流れを説明します。
エージェント作成の準備
- Copilot Studioへのアクセス: https://copilotstudio.microsoft.com/ にアクセスし、Microsoftアカウントでサインインします。
- 新規エージェントの作成: ホーム画面から「+新規作成」→「エージェント」を選択します。
- 基本情報の設定: エージェント名、説明、指示、言語などの基本情報を設定します。
トリガーの種類
Copilot Studioの主なトリガータイプには以下があります。
- 会話開始時: エージェントとの会話開始時に自動的に起動するトリガー
- フレーズ: 特定のフレーズやキーワードが検出された時に起動するトリガー
- 未知のトピック: ユーザーの意図が不明確な場合に起動するフォールバックトリガー
- 会話終了: 会話が終了したときに起動するトリガー
- エラー発生時: エラーが発生したときに起動するトリガー
- リダイレクト発生時: リダイレクトによって他トピックから呼び出されたときに起動するトリガー
- サインイン時: エージェントがサインインする必要があるか、ユーザーにサインインを求める必要がある場合に起動するトリガー
- 選択時: エージェントによって複数のトピックと受信メッセージが一致し、どれをトリガーするか明確にする必要がある場合に起動するトリガー
ノードの追加
トピックの会話フローは「ノード」と呼ばれる要素で構成されます。主なノードタイプです。
- メッセージ: エージェントからユーザーへのメッセージを送信
- 質問: ユーザーに質問を行い、回答を変数に保存
- 条件: 条件に基づいて会話フローを分岐
- アクション: 外部システムやAPIを呼び出す
- トピック管理: 別のトピックに移動したり、トピックを終了させたりする
これらのノードを配置していくことで会話フローを設計します。
アクションと詳細
ノードの追加で「アクション」や「詳細」を選択すると、エージェントに以下のような機能を追加できます。
※ 他にもありますが、よく使うものを抜粋しています。
- 生成型の回答: コンテンツを検索するか、または独自のコンテキストを指定した場合、提供したデータを使用してOpenAI で要約された応答を作成
- HTTPリクエスト: 外部APIと連携
- Power Automateフロー: 複雑な業務プロセス自動化としてフローを呼び出してエージェントを拡張
- スキル: BotFrameWorkで作成したスキルを呼び出してエージェントを拡張
- 検索クエリの作成: 会話履歴とユーザー入力を使用して検索クエリを生成
テストと公開
作成したエージェントは、右上の「テスト」ボタンから動作を確認できます。
トピック間の追跡やデバッグモードのオンオフを設定できます。
動作確認後、「公開」ボタンをクリックしてエージェントを公開します。
チャネル設定で、Microsoft Teams、Web、またはその他の希望するチャネルを選択して追加します。
エージェントを公開後、アクセス権を選択してユーザーやグループに共有します。
エージェント設計のポイント
実際にCopilot Studioでエージェントを作成・利用してみて、ユーザーが使いやすいと感じるエージェントにするには、以下がポイントだと思いました。
ユーザー体験
簡潔な会話: 長い説明よりも、短く的確な応答を心がける
今回は主にTeamsアプリから利用していたため、1つの応答が長いと見にくいと感じました。
また、生成型の回答を使用した場合、プロンプトに指示を詰め込みすぎると以下のようなエラーで回答が生成されないことが多かったため、簡潔な回答にするとパフォーマンスの面でも良いと思いました。
トピック・変数管理: スムーズな情報遷移
思った回答が得られなかった場合のエスカレーション経路等、トピックの遷移を正しく実装することが大切だと思いました。
また、グローバル変数を使用している場合は、トピックを適切に終了させたり変数のクリアを行ったりしないと、以前の値が残り続けて意図した挙動にならない場合があります。
継続的な改善:会話ログの分析
Copilot Studioには分析タブが用意されており、そこで満足度スコアなども確認できるようになっています。
そのため、エージェントとの会話が終わった際にはアンケートを必ず送るなど設定して、ユーザーからのフィードバックを取得すると良いでしょう。
まとめ
Copilot Studioを使用することで、ノーコードでAIエージェントを簡単に作成できます。
基本的なトリガー、ノード、活動の組み合わせにより、ユーザーのニーズに応じた会話フローを設計し、AIの力を活用した回答を提供できます。
これを活用することで、特定のニーズに合ったエージェントを手軽に構築できるので、ぜひ試してみてください。