OSS Agents JP
オープンソース AI エージェント 日本語ガイド
← 一覧へ
Microsoft Agent Framework
OTHER

Microsoft Agent Framework

Microsoft Agent Framework

PythonとC#/.NETで本番級のAIエージェントとマルチエージェントワークフローをビルド・オーケストレーションできるフレームワーク。複数LLMプロバイダに対応し、プロトタイプから本番環境まで対応可能です。

#マルチエージェント#Python/.NET#オーケストレーション
EDITOR'S TAKE

編集部メモ

Microsoft が本番向けマルチエージェントフレームワークを公開、Python と .NET に対応

Microsoft Agent Framework は、単なる LLM ラッパーではなく、エージェント間の連携・オーケストレーション・運用管理を想定した本番級フレームワークです。Python と C#/.NET の両言語で同一設計を実現し、複数の LLM プロバイダを柔軟に切り替えられます。ダラビリティ・再スタート・ガバナンス・ヒューマンインループなど、エンタープライズの厳しい要件に対応したツールを求めるチーム向けです。

USE CASES

こんな場面で使う

  • 複数のエージェントが役割を分け合い、順序立てて・並列で・引き継ぎながら処理するワークフローを実装する
  • 金融・医療など規制産業で、エージェントの判断を追跡・監査・介入する仕組みが必要なシステムを構築する
  • Azure OpenAI と OpenAI の両者と契約しており、コスト・地域・モデルに応じて LLM プロバイダを動的に切り替える
DIFFERENTIATOR

類似ツールとの違い

LangGraph は単一ノード中心の状態機械、AutoGen は会話ベースのマルチエージェント。MAF はグラフ駆動で group collaboration や handoff に対応し、同時に Python/.NET 両対応・Microsoft エコシステムとの統合により、エンタープライズ要件に応える点が異なります。
CAVEAT

注意点・向かない用途

⚠️ 2025 年 4 月公開と新しく、採用事例や成熟度がまだ限定的です。学習曲線がある可能性があります。小規模な単一エージェントなら過度な設計になる恐れがあります。
BEST FOR

向いている読者

エンタープライズエンジニアMLOps / DevOps エンジニアマルチエージェント設計者.NET 利用企業の AI 責任者

— OSS Agents JP 編集部による独自評価(Microsoft Agent Framework に関する観察)

REPO STATS

リポジトリ統計

⭐ Stars
-
🍴 Forks
-
⚠️ Open Issues
-
🌿 Language
-
📄 License
-
🕒 最終更新
-
📅 公開日
-
🌿 Branch
-
REFERENCE

公式ドキュメント(README)

本ハブの独自評価は上記「編集部メモ」が一次情報です。以下は GitHub README の参考転載(折りたたみ)。

📖 GitHub README の日本語訳を読む(AI 自動翻訳 / 参考情報)

— AI による自動翻訳 (2026.05.25 更新)。正確な情報は GitHub の原文 をご確認ください。

Microsoft Agent Framework

Microsoft Agent Framework へようこそ!

Microsoft Foundry Discord MS Learn Documentation PyPI NuGet GitHub stars

Microsoft Agent Framework (MAF) は、.NET および Python本番レベルの AI エージェントおよびマルチエージェント ワークフローを構築するためのオープンでマルチ言語対応のフレームワークです。

Microsoft Agent Framework は、エージェントをプロトタイプから本番環境へ移行するチームのために構築されています。Python と .NET 全体でエージェント システムを構築、オーケストレーション、および操作するための一貫した基盤を提供し、要件が進化するにつれてアーキテクチャの選択肢をオープンに保ちながら、Microsoft Foundry、Azure OpenAI、OpenAI、GitHub Copilot SDK など幅広いエコシステムをサポートし、ローカル開発とクラウド デプロイメントの両方のサンプルとホスティング パターンが含まれています。

Watch the full Agent Framework introduction (30 min)

Agent Framework の完全な紹介をご覧ください (30 分)

これは適切なフレームワークですか?

以下の場合、MAF は適切な選択肢です:

  • 本番環境で実行することを想定したエージェントおよびワークフローを構築している
  • 単一プロンプトまたはステートレスチャットループ以上のオーケストレーションが必要
  • 順次実行、並行実行、ハンドオフ、グループ コラボレーションなどのグラフベースのパターンが必要
  • 耐久性、再起動性、可観測性、ガバナンス、または人間参加型の制御を重視している
  • アーキテクチャを大きく変更することなく進化できるようにプロバイダーの柔軟性が必要

主な機能

新しい MAF 機能と実装パターンについては、公式ブログをご覧ください。

  • Python および C#/.NET サポート:Python および C#/.NET 実装の両方に対する完全なフレームワーク サポートと一貫した API
  • 複数のエージェント プロバイダー サポート:様々な LLM プロバイダーをサポートしており、継続的に追加されています
  • ミドルウェア:リクエスト/レスポンス処理、例外処理、カスタム パイプラインのための柔軟なミドルウェア システム
  • オーケストレーション パターンとワークフロー:順次実行、並行実行、ハンドオフ、グループ コラボレーション パターンをサポートするグラフベースのワークフローを使用してマルチエージェント システムを構築します。チェックポイント、ストリーミング、人間参加型、およびタイムトラベルが含まれます
  • Foundry ホスト型エージェント (新規):わずか 2 行の追加コードで、Foundry ホスト型インフラストラクチャにエージェントをデプロイおよびホストします
  • 可観測性:分散トレーシング、監視、デバッグのための組み込み OpenTelemetry 統合
  • 宣言的なエージェント:YAML を使用してエージェントを定義し、セットアップとバージョン管理を高速化します
  • エージェント スキル:ファイル、インラインコード、クラス ライブラリなど複数のソースからドメイン固有の知識ベースを構築し、エージェントが発見して使用できるようにします
  • AF Labs:ベンチマーク、強化学習、研究イニシアティブを含む最先端機能の実験的パッケージ
  • DevUI:エージェント開発、テスト、ワークフロー デバッグのためのインタラクティブな開発者 UI

目次

はじめに

インストール

Python

pip install agent-framework
# This will install all sub-packages, see `python/packages` for individual packages.
# It may take a minute on first install on Windows.

.NET

dotnet add package Microsoft.Agents.AI
# For Foundry integration (used in the .NET quickstart below):
dotnet add package Microsoft.Agents.AI.Foundry
dotnet add package Azure.AI.Projects
dotnet add package Azure.Identity

学習リソース

クイックスタート

基本的なエージェント - Python

Microsoft Agent Framework についてハイクを書く Azure Responses エージェントをシンプルに作成します。

# pip install agent-framework
# Use `az login` to authenticate with Azure CLI
import os
import asyncio
from agent_framework import Agent
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential


async def main():
    # Initialize a chat agent with Microsoft Foundry
    # the endpoint, deployment name, and api version can be set via environment variables
    # or they can be passed in directly to the FoundryChatClient constructor
    agent = Agent(
      client=FoundryChatClient(
          credential=AzureCliCredential(),
          # project_endpoint=os.environ["FOUNDRY_PROJECT_ENDPOINT"],
          # model=os.environ["FOUNDRY_MODEL_DEPLOYMENT_NAME"],
      ),
      name="HaikuAgent",
      instructions="You are an upbeat assistant that writes beautifully.",
    )

    print(await agent.run("Write a haiku about Microsoft Agent Framework."))

if __name__ == "__main__":
    asyncio.run(main())

基本的なエージェント - .NET

Microsoft Foundry を使用して、Microsoft Agent Framework についてハイクを書くシンプルなエージェントを作成します。

// This sample shows how to create and run a basic agent with AIProjectClient.AsAIAgent(...).

using Azure.AI.Projects;
using Azure.Identity;
using Microsoft.Agents.AI;

string endpoint = Environment.GetEnvironmentVariable("AZURE_AI_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("AZURE_AI_PROJECT_ENDPOINT is not set.");
string deploymentName = Environment.GetEnvironmentVariable("AZURE_AI_MODEL_DEPLOYMENT_NAME") ?? "gpt-5.4-mini";

AIAgent agent =
    new AIProjectClient(new Uri(endpoint), new DefaultAzureCredential())
    .AsAIAgent(model: deploymentName, instructions: "You are an upbeat assistant that writes beautifully.", name: "HaikuAgent");

// Once you have the agent, you can invoke it like any other AIAgent.
Console.WriteLine(await agent.RunAsync("Write a haiku about Microsoft Agent Framework."));

その他の例とサンプル

Python

  • はじめに: hello-world からホスティングまでの段階的なチュートリアル
  • Agent Concepts: トピック別の詳細なサンプル(tools、middleware、providers など)
  • Workflows: ワークフローの作成とエージェントとの統合
  • Hosting: A2A、Azure Functions、Durable Task ホスティング
  • End-to-End: 完全なアプリケーション、評価、デモ

.NET

  • はじめに: hello agent からホスティングまでの段階的なチュートリアル
  • Agent Concepts: 基本的なエージェントの作成とツールの使用
  • Agent Providers: 異なるエージェントプロバイダーを示すサンプル
  • Workflows: 高度なマルチエージェントパターンとワークフロー オーケストレーション
  • Hosting: A2A、Durable Agents、Durable Workflows
  • End-to-End: 完全なアプリケーションとデモ

コミュニティとフィードバック

  • バグを見つけましたか? 改善を支援するために GitHub issue を報告してください。
  • MAF を楽しんでいますか? GitHub stars サポートを示し、他のユーザーがプロジェクトを発見するのを支援するために GitHub でスターを付けてください。
  • 質問がありますか? Discord に参加するか、週間オフィスアワーにアクセスしてください。

トラブルシューティング

認証

問題 原因 解決方法
Azure 認証情報を使用する際の認証エラー Azure CLI にサインインしていない az login を実行してアプリを開始してください
API キーエラー API キーが間違っているか不足している キーを確認し、正しいリソース/プロバイダーのものであることを確認してください

ヒント: DefaultAzureCredential は開発に便利ですが、本番環境では、レイテンシの問題、意図しない認証情報のプロービング、およびフォールバックメカニズムからの潜在的なセキュリティリスクを避けるために、特定の認証情報(例:ManagedIdentityCredential)の使用を検討してください。

環境変数

各サンプルに固有の環境変数設定については、サンプルディレクトリの README を参照してください(Python samples | .NET samples)。

貢献者向けリソース

重要な注記

RELATED

同じカテゴリの他のツール