Foundryエージェントを接続エージェントとして追加する(GitHub Copilot)

接続エージェントを使って、プライマリ エージェントが特定のタスクを専門エージェントに委任できるようにします。 この記事では、既存のMicrosoft Foundryエージェントを接続し、プライマリエージェントがタスクをそのエージェントに引き継ぐ方法を紹介します。

Note

このエージェントを構築するために使われるフレームワークは使用量ベースの請求を採用しています。 エージェントの使用、構築、テスト、評価にはCopilotクレジットが消費されることがあります。 使用 量ベースの請求の概要についてはこちらをご覧ください。

各接続済みエージェントは、同じ「接続されたエージェントを追加」ダイアログから追加します。 接続エージェントの概要とルーティングの仕組みについては 、「接続エージェント概要」をご覧ください。 他のCopilot Studioエージェントを接続するには、「接続されたエージェントとしてCopilot Studioエージェントを追加」をご覧ください。 Agent2Agent(A2A)プロトコル上でリモートエージェントを接続するには、「 接続エージェントとしてA2Aエージェントを追加する」を参照してください。 Microsoft 365 エージェント SDKで構築されたエージェントを接続するには、「Add a Microsoft 365 エージェント SDK agent as a connected agent(接続エージェントとして追加)」をご覧ください。

Prerequisites

  • GitHub Copilotハーネスで作成されたエージェントで、メインエージェントとして設定されました。 エージェントを作成する (プレビュー) を参照してください。
  • Microsoft Foundryポータルのプロジェクト内で既に作成されたFoundryエージェントで、Activityプロトコルが有効で、エージェントのエージェント IDが利用可能です。 FoundryエージェントはデフォルトでActivityプロトコルを有効にしていません。 Foundryエージェントでアクティビティプロトコルを有効にする方法を参照してください。
  • FoundryエージェントをホストしているprojectのAzure AI ProjectエンドポイントURLです。
  • ファウンドリー プロジェクトへのアクセス許可 接続はあなたのMicrosoft Entra IDのユーザーログインで認証されます。

Note

接続できるのは現在のMicrosoft Foundryポータルで作成されたエージェントだけです。 前のポータルで作成されたエージェントに接続すると 404 - Version not found エラーが返されます。

ファウンドリーエージェントを追加してください

  1. Copilot Studio にサインインします。

  2. プライマリ エージェントとして使用したいエージェントを選択して開いてください。

  3. エージェントナビゲーションバーで「 ビルド 」タブを選択します。

  4. コンポーネント パネルで接続されたエージェントを選択し、接続済みエージェントを追加ダイアログを開きます。

  5. ダイアログで 「追加」を選択し、次に 「ファウンドリーエージェントを追加」を選択します。

  6. 「Connect to Azure AI Foundry」ステップで、このエージェントがMicrosoft Foundryにアクセスするために使用する接続を選択してください:

    • 接続リストから既存の接続を選択します。
    • 接続が利用できない場合は、「 新しい接続を作成 」を選択して次のステップに進みます。
  7. 新しい接続を作成する場合は、接続詳細を入力してから 「作成」を選択してください:

    • 表示名 (任意):後でこの接続を特定するのに役立つ名前。
    • 認証タイプ:Microsoft Entra ID ユーザーログイン。 この値はあなたのために設定されています。
    • Azure AI Project Endpoint:エージェントをホストするFoundry projectのエンドポイントURL。
  8. 「Connect to Azure AI Foundry」ステップに戻り、接続が選択されていることを確認してから、Next を選択します。

  9. 「レビューと追加」ステップで、接続したいFoundryエージェントの詳細を入力し、「エージェントに追加」を選択します:

    • 名前: エージェントの作成者に表示される名前。
    • 説明:このファウンドリーエージェントがいつ使用されるべきかの明確な説明。 オーケストレーターはこの記述を使ってリクエストをエージェントにルーティングするタイミングを決めるため、具体的に設定し、他のツールやエージェントとの重複を避けてください。 詳細については、効果的なメタデータの書き方 を参照してください。
    • エージェントID:接続したいFoundryエージェントのID。
  10. コンポーネントパネルの 「接続されたエージェント」 に接続エージェントが表示されるか確認してください。

Note

あなたは、特定のユースケースに合わせた接続エージェントを慎重にレビュー・テストし、適切な判断やカスタマイズを行う責任があります。 Copilot Studio の外部にあるエージェントに接続する場合、そのエージェントの利用についてはユーザーが責任を負います。 考慮すべき点には以下の事項が含まれます:

  • データフロー、データ処理、エージェント間のデータ共有は、あなたのユースケースに適しており、関連する要件や法律を満たしています。
  • エージェントは適切な品質、信頼性、セキュリティ、信頼性の基準を満たしています。
  • 適切な権限、境界設定、承認は、あなたのユースケースに合った慎重であれば提供されています。
  • 適切な観察可能性、アイデンティティとトレーサビリティ、そして人間の監督機能が整っています。

Foundryエージェントでアクティビティプロトコルを有効にしてください

Copilot Studioは、Activityプロトコルを使って接続されたFoundryエージェントと通信します。 Foundryエージェントはデフォルトでこのプロトコルを有効にしていないため、プライマリエージェントがFoundryエージェントとメッセージを交換する前に必ず有効にする必要があります。 Activityプロトコルが有効になっていなければ、接続を追加はできますが、Foundryエージェントの呼び出しは失敗します。

アクティビティプロトコルを有効にする方法は、以下のいずれかです:

  • FoundryエージェントをMicrosoft 365またはMicrosoft Teamsに公開します。 Microsoft 365やTeamsにプロンプトエージェントを公開すると、アクティビティプロトコルと必要なBotServiceRbac認証スキームが自動的に有効化されます。 すでにエージェントをそのチャネルに公開する予定がある場合は、このオプションを選んでください。

  • REST APIコールで手動で有効化してください。 Microsoft 365やTeamsにエージェントを公開しない場合は、Foundry Agents - Update agent REST APIを呼び出して、activityプロトコルとBotServiceRbac認証スキームをエージェントに追加してください。

Foundryエージェントの設定および共有についての詳細は、「Microsoft Foundryエージェントの設定および共有」をご覧ください。

REST APIコールでActivityプロトコルを有効にする

Foundry Agents - Update agent REST APIを呼び出してください。 {{endpoint}}、{{agent_name}}、{{token}} を、Foundry プロジェクトのエンドポイント、エージェント名、アクセストークンに置き換えてください。

Important

リストにresponsesとEntraを残してください。 削除するとFoundryポータルやSDKからエージェントとのチャットが中断されます。

PATCH {{endpoint}}/agents/{{agent_name}}?api-version=v1
Authorization: Bearer {{token}}
Content-Type: application/merge-patch+json
Foundry-Features: AgentEndpoints=V1Preview

{
    "agent_endpoint": {
        "protocols": [
            "responses",
            "activity"
        ],
        "authorization_schemes": [
            {
                "type": "Entra",
                "isolation_key_source": {
                    "kind": "Entra"
                }
            },
            {
                "type": "BotServiceRbac"
            }
        ]
    }
}

オーケストレーターがファウンドリーのエージェントにルーティングする方法

Foundryエージェントを追加した後、オーケストレーション ランタイムはいつそのエージェントに委任するかを自動的に判断します。 ルーティングの判断基準は以下の通りです:

  • 接続済みエージェントの名前と説明
  • ユーザーのメッセージと会話のコンテキスト
  • プライマリ エージェントの指示

Tip

Foundryエージェントについて明確で具体的な説明を作成し、オーケストレーターがいつそのエージェントにリクエストをルーティングすべきかを正確に判断できるようにします。 接続されたエージェントの説明が重複しないようにしてください。

テストの委譲

Foundryのエージェントを追加した後:

  1. エージェント ナビゲーション バーで、プレビュー タブを選択します。

  2. Foundryエージェントのドメインに合致するメッセージを送信してください。

  3. 返答がFoundryの担当者から来ており、適切であることを確認しましょう。

  4. Foundryのエージェントのドメイン外にメッセージを送り、プライマリエージェントがそれを処理するか確認してください。

後で エージェントID や説明を変更する必要がある場合は、コンポーネントパネルから接続されたエージェントを編集してください。 エージェント内の接続エージェントの管理をご覧ください。