カスタム エンジン エージェントは、組織が特定のニーズに合わせた AI 搭載アシスタントを構築できるようにすることで、Microsoft 365 Copilot の機能を拡張します。 標準の Copilot エクスペリエンスとは異なり、カスタム エンジン エージェントは、オーケストレーション、AI モデル、データ統合を完全に制御できるため、企業は独自の要件に合わせた高度なワークフローを作成できます。 これらのエージェントは、好みの開発アプローチとホスティング環境に応じて、Copilot Studio、Microsoft 365 エージェント SDK、Teams SDK、または Microsoft Foundry を使用して作成できます。
この記事では、カスタム エンジン エージェントを構築するための機能とオプションについて説明します。
カスタム エンジン エージェントとは
カスタム エンジン エージェントは、特定のエンタープライズ シナリオを満たすように設計された特殊な Copilot エージェントです。 宣言型エージェントとは異なり、開発者は独自のオーケストレーションと AI サービスを柔軟に導入できます。 これにより、ワークフロー、AI モデル、統合を完全に制御できるようになり、組織は高度なソリューションを作成できるようになります。
カスタム エンジン エージェントの主な特徴
カスタム エンジン エージェントには、次の特性があります。
- カスタム オーケストレーション – カスタマイズされたワークフローを定義し、外部システムに接続して、より多くの知識を組み込んだり、アクションを呼び出したりします。
- 柔軟な AI モデル – ユースケースに合わせて、基盤モデル、微調整されたモデル、または業界固有の AI から選択します。
- プロアクティブな自動化 – プログラムでワークフローをトリガーし、エンタープライズ アプリケーション全体でアクションを実行します。
カスタム エンジン エージェントの開発アプローチ
ローコード アプローチを使用して Copilot Studio を使用してカスタム エンジン エージェントを構築することも、開発ツールと SDK を使用してプロコード アプローチを使用することもできます。 既存の Microsoft Foundry エージェントを Microsoft 365 と統合することもできます。 すべてのオプションを使用すると、外部の知識とアクションを Microsoft 365 Copilot に統合できます。 ただし、複雑さ、必要なスキル セット、最も適切にサポートするビジネス シナリオの種類が異なります。
ローコード アプローチ
Copilot Studio は、カスタム エンジン エージェントの構築を簡素化するフル マネージド SaaS プラットフォームであるため、インフラストラクチャ、ホスティング、ガバナンスを気にすることなく、効果的なエージェント エクスペリエンスの作成に集中できます。 Microsoft Power Platform を介した組み込みのコンプライアンスと、Microsoft 365 およびパートナー サービス用の事前構築済みのテンプレートとコネクタが提供されます。 ローコード開発をサポートしていますが、真の価値は合理化されたデプロイと管理にあります。
このアプローチは、開発リソースに大きく依存することなく、カスタム エンジン エージェントを迅速に構築および拡張したいと考えている組織に最適です。
プロコードアプローチ
プロコード開発では、Visual Studio または Visual Studio Code と Microsoft 365 Agents Toolkit 拡張機能を使用します。 このツールキットは、事前構築済みのテンプレート、簡単なデバッグ、合理化されたデプロイ ワークフローを提供することで、エージェント開発を効率化します。 完全にカスタマイズされたエクスペリエンスを求める開発者に最適です。
ツールキットを使用してエージェントを構築する場合は、ニーズに応じて 2 つの SDK から選択します。
Microsoft 365 エージェント SDK
Microsoft 365 エージェント SDK は、Microsoft 365 Copilot、Teams、パートナー プラットフォーム、カスタム アプリケーション、Web サイト全体で動作できるフルスタックのマルチチャネル エージェントを構築するために設計されたフレームワークです。
セマンティック カーネルや LangChain などのフレームワークを使用したカスタム オーケストレーションが必要なユース ケースに最適で、あらゆる AI モデルやサービスとの統合をサポートします。 この SDK は、高度な機能と複数のチャネル間で操作する機能を備えた高度にカスタマイズされたエージェントを必要とする組織または ISV に最適です。
Teams SDK
Teams SDK は、Microsoft Teams 専用に調整されたフレームワークです。 組み込みのアクション プランナー オーケストレーターが含まれており、Azure と OpenAI の GPT ベースの言語モデルをサポートします。
このオプションは、Teams チャネルおよび会議内で動作するコラボレーション エージェントを構築したいと考えている組織に最適です。 これは、協働的なチームベースの環境でユーザーとリアルタイムで対話するエージェントを構築する場合に役立ちます。
Microsoft Foundry エージェントの統合
Microsoft Foundry は、Agent Framework SDK (旧称セマンティック カーネル) を使用してインテリジェント エージェントを構築、テスト、公開するためのプラットフォームを提供します。 これらのエージェントは、Foundry ポータルまたは Microsoft 365 エージェント ツールキットを介して Microsoft 365 Copilot と Teams に統合できます。
このアプローチは、AI ロジックとオーケストレーションを Foundry で既に管理しており、それらの機能を Microsoft 365 で直接利用できるようにしたい開発者または組織に最適です。
次の表は、Foundry エージェントの 2 つの統合アプローチを示しています。
| 機能 | Foundry から Microsoft 365 への公開 | Agents Toolkit を使用して Microsoft 365 と統合する |
|---|---|---|
| 説明 | 最小限のセットアップで Foundry エージェントを Microsoft 365 Copilot と Teams に直接公開できます。 Azure Bot Service ID と Entra ID を自動的にプロビジョニングし、配布用にエージェントをパッケージ化します。 | Microsoft 365 Agents Toolkit で構築されたプロキシ アプリを使用して、既存の Foundry エージェントを Microsoft 365 Copilot に接続します。 高度なカスタマイズ、デバッグ、およびマルチ環境デプロイが可能になります。 |
| ツール | Foundry ポータル | Visual Studio Code/Visual Studio with Microsoft 365 Agents Toolkit |
| 最適な用途 | 最小限のコード変更で迅速なデプロイとテスト | カスタム ロジック、SSO、またはマネージド インフラストラクチャを必要とするシナリオ |
どちらの統合アプローチも、ボットまたはプロキシ レイヤーを介して Foundry エージェント サービスを Microsoft 365 Copilot に接続し、ユーザーが Microsoft 365 および Teams 内で直接 Foundry エージェントと対話できるようにします。
エージェント開発ツールの比較
次の表は、使用可能なアプローチの簡単な比較を示しています。
| 機能 | Copilot Studio | Teams AI | Agents SDK | Foundry |
|---|---|---|---|---|
| 開発アプローチ | ローコード | プロコード | プロコード | 低コードまたはプロコード |
| ツール | Copilot Studio UI | Visual Studio Code/Teams SDK を使用した Visual Studio | Visual Studio Code/Visual Studio with Microsoft 365 Agents Toolkit | Foundry ポータルまたは Visual Studio Code/Visual Studio with Microsoft 365 Agents Toolkit |
| 発行 | 自分の組織 | 自分の組織 ISV/ストア |
自分の組織 ISV/ストア 10+ チャネル |
自分の組織 ISV/ストア |
| チャネル | Microsoft 365 Copilot、Teams、パートナー アプリ、モバイル アプリ、カスタム Web サイト | Microsoft 365 Copilot、Teams | Microsoft 365 Copilot、Teams、パートナー アプリ、モバイル アプリ、カスタム Web サイト | Microsoft 365 Copilot と Teams (他のチャネルにはカスタム統合が必要) |
| 生産性 | 個人で | グループ | グループ | 個人で |
| Orchestrator | Copilot Studio | Teams AI アクション プランナー | 自分のものを持参する (例: セマンティック カーネル、LangChain) | 独自のものを持ち込む (たとえば、セマンティック カーネルや LangChain) |
| AI モデル | Copilot Studio | 任意のモデル | 任意のモデル | Foundry、OpenAI、またはカスタム モデル |
| サポートされているプログラミング言語 | 該当しない (ローコード) | C#、TypeScript、JavaScript、Python | C#、JavaScript、Python | Python、C# |
注:
Work IQ Dev Tools (プレビュー) — wiqd は、カスタム エンジン エージェントではなく、宣言型エージェントを対象としています。 両方のサーフェスを構築する場合は、ここで説明するツールを使用してカスタム エンジン エージェントを引き続き構築しながら、宣言側 (検証、プロビジョニング、パッケージ化、公開) に wiqd を使用できます。 詳細については、 Work IQ 開発ツールのドキュメントを参照してください。
主な考慮事項
開発ツールの選択には、次の考慮事項が適用されます。
- 公開の範囲 - Teams SDK、Microsoft 365 エージェント SDK、または Foundry を使用して構築されたエージェントのみが、エージェント ツールキットを使用して Microsoft コマーシャル ストアに公開できます。
- グループの生産性 - 特に Teams でのマルチユーザー シナリオの場合は、共同作業チャネルと会議のサポートが組み込まれている Teams SDK を検討してください。 Foundry エージェントは Teams でも使用できますが、マルチユーザー対話用に追加のセットアップが必要になる場合があります。
- カスタマイズのニーズ - AI モデルまたはオーケストレーションを完全に制御する必要がある場合は、Microsoft 365 エージェント SDK または Agents Toolkit を介した Foundry を使用したプロコード アプローチを選択します。
- ナレッジ ソースへのアクセス - Copilot Studio エージェントは、Microsoft 365 および Copilot コネクタ コンテンツにネイティブにアクセスできます。 エージェント SDK で構築されたエージェントや Foundry via Agents Toolkit を含むプロコード エージェントは、Microsoft Graph API を介して同じデータにアクセスし、Retrieval API を使用して Microsoft 365 データにアクセスできます。
シナリオ例
次の表に、シナリオの例と、それぞれに推奨される開発アプローチを示します。
| シナリオ | 説明 | 推奨されるアプローチ |
|---|---|---|
| 訴訟事例分析 | 法律事務所は Foundry を使用してスタンドアロンの AI エージェントを作成します。 エージェントは、判例法分析にカスタムトレーニングされたLLMを使用し、外部の法律データベースと統合します。 エージェントは会社のケース管理システムで使用されますが、Microsoft 365 Copilot 内でアクセスでき、SharePoint のドキュメントにアクセスできる必要があります。 | Foundry を使用すると、Microsoft 365 でエージェントにアクセスできるようにしながら、カスタム AI ロジックとオーケストレーションを維持できるためです。 エージェントは、Foundry ポータルを介して公開することも、Microsoft 365 Agents Toolkit を通じて統合することもできます。 |
| 医療における手術計画 | 病院は、手術チームが手術を計画し、スケジュールを設定するためのエージェントを構築します。 エージェントは、医師、看護師、管理スタッフと協力し、患者情報およびスケジューリング システムと統合します。 エージェントは、チームのすべてのメンバーとのコラボレーションを促進して、計画、予定の作成、競合の解決、リマインダーと通知の設定を行います。 | エージェントはマルチユーザーの共同作業環境で動作するため、 Teams SDK を使用してください。 Teams のチャネルまたは会議内で公開することでシームレスなやり取りが可能になり、組み込みのアクション プランナー オーケストレーターがスケジュールや患者情報システムに接続します。 |
| 従業員のオンボーディング アシスタント | ある企業は、新入社員が人事に関する FAQ に回答し、ドキュメントの完成を案内し、社内リソースを案内するための軽量の AI アシスタントを提供したいと考えています。 エージェントは主に、Microsoft 365 で既に利用可能な標準的なプロセスとドキュメントを処理します。 | Copilot Studio を使用すると、迅速なローコード開発とデプロイが可能になります。 このエージェントは組み込みの Microsoft 365 の知識とコネクタを使用できるため、カスタム AI モデルやマルチチャネル オーケストレーションを必要としない簡単なワークフローに最適です。 |
要件、設計、展開に関する考慮事項
カスタム エンジン エージェントのビルドとデプロイを準備するときは、パフォーマンス、コンプライアンス、持続可能性を確保するために、このセクションで説明する重要な要素を考慮してください。
要件は開発アプローチによって異なります。モデルとオーケストレーターのホスティングは、選択した 開発アプローチ によって異なります。独自のオーケストレーションと基盤モデルを持ち込むことができ、カスタム エンジン エージェントにはアプリ マニフェスト バージョン 1.21 以降が必要です。 カスタム エンジン エージェントを構築するために必要な内容の概要については、「Microsoft 365 Copilot のエージェント」を参照してください。
注:
カスタム エンジン エージェントは、アプリ マニフェスト バージョン 1.21 以降のバージョンでサポートされています。
メッセージの順序付けとストリーミング動作
Teams と Microsoft 365 Copilot は、サーバーのタイムスタンプ、アクティビティ ID、ストリーミング更新と非ストリーミング アクティビティの関係に基づいてエージェント メッセージをレンダリングします。 カスタム エンジン エージェントが、同じユーザー ターン内でストリーミング テキスト、メディア添付ファイル、最終メッセージを混在させると、メッセージが順序どおりに表示されないことがあります。 一貫した順序を維持するには:
ユーザーターンごとに 1 つのストリーミング シーケンスを使用します。
StreamingResponseオブジェクトを 1 つ作成し、追加のメッセージを送信する前にendStream()を使用して完成させます。同じストリーム内のメディアを添付します。 別の非ストリーミング アクティビティを送信する代わりに、
setAttachments()を使用します。 タイムスタンプの違いにより、ストリームの前または内部に個別のメッセージが表示される場合があります。前のストリーミングが完了する前に新しいストリーミングを開始しないでください。 同じターンで複数のストリームがあると、Teams と Copilot で予期しない順序が生成される可能性があります。
送信メッセージをシリアル化します。 複数のスレッドから並列でメッセージを送信することを避けます。 順序を維持するために、更新プログラムが待機されていることを確認します。
endStream()後にはストリーミングの更新を送信しないでください。 ストリームが完了すると、新しい更新は別のアクティビティになり、順序がずれて表示される場合があります。 フォローアップ メッセージを送信する必要がある場合は、replyToIdを使用して同じスレッドに保持し、シーケンスの問題を減らします。
AI モデルの選択
カスタム エンジン エージェントは、タスクの複雑さやドメイン固有の要件に応じて、さまざまな AI モデルを利用できます。 エージェントが特定の基礎モデル、小さな言語モデル、またはシナリオの微調整モデルを必要とするかどうかにかかわらず、適切なモデルを選択することが重要です。
詳細については、「 アプリに適したモデルを選択する方法」を参照してください。
責任ある AI
RAI 原則に準拠し、データ ガバナンスを実施し、ISV のストア公開要件を満たすことで、カスタム エージェントが準拠し、安全で、 責任ある AI (RAI) ポリシー に準拠していることを確認します。
コストの考慮事項
カスタム エンジン エージェントに関連するライセンス、消費、ホスティングのコストを検討してください。
詳細については、「 Copilot 拡張性のコストに関する考慮事項」を参照してください。
プライバシーとコンプライアンス
Copilot Chat と Teams のカスタム エンジン エージェントのプロンプトと応答は、Microsoft 365 製品の契約条件に従って格納され、顧客の指示に従って管理されます。 この保存されたデータを表示および管理するために、管理者はコンテンツ検索または Microsoft Purview を使用できます。
エージェントのガバナンスと管理コントロールの詳細については、「 エージェント共有のガバナンスと管理コントロール」を参照してください。
Microsoft 365 Copilot API を呼び出すカスタム エンジン エージェントを構築している場合は、API が認証、承認、組織のポリシーの適用を処理する方法の詳細については、「Microsoft 365 Copilot API のセキュリティと認証」を参照してください。
関連コンテンツ
- Microsoft 365 Copilot のエージェント
- Copilot Studio を使用してエージェントを作成してデプロイする
- Microsoft 365 エージェント SDK を使用してエージェントを作成して展開する
- Foundry エージェントを Microsoft 365 に発行する
- Foundry エージェントと Microsoft Agent Toolkit の統合
- Microsoft 365 Agent Toolkit を使用してエージェントを作成する
- 宣言型エージェントをカスタム エンジン エージェントに変換する
- 検索 API グラウンディングを使用したカスタム エンジン エージェント サンプル
- Teams SDK
- ボットの概要