Home Microsoft Agent Framework 1.0 GA — Semantic KernelとAutoGenを統合した次世代AIエージェント基盤
投稿
キャンセル

✍️ Microsoft Agent Framework 1.0 GA — Semantic KernelとAutoGenを統合した次世代AIエージェント基盤

本記事は Microsoft Agent Framework Version 1.0 の解説記事です。

ブログ概要(Summary)

2026年4月3日、MicrosoftはAgent Framework 1.0のGA(General Availability)リリースを発表した。本フレームワークは、Semantic KernelのエンタープライズAI基盤とAutoGenのマルチエージェント会話抽象を統合し、.NETとPythonの両方で本番運用可能なエージェント開発基盤を提供する。7つのLLMプロバイダーのネイティブサポート、5種類のオーケストレーションパターン、MCP/A2Aプロトコル対応を特徴とする。

この記事は Zenn記事: Semantic Kernel → Microsoft Agent Framework 1.0移行ガイド の深掘りです。

情報源

  • 種別: 企業テックブログ(Microsoft公式)
  • URL: https://devblogs.microsoft.com/agent-framework/microsoft-agent-framework-version-1-0/
  • 組織: Microsoft Agent Framework Team
  • 発表日: 2026年4月3日

技術的背景(Technical Background)

なぜ統合が必要だったのか

2025年以前、Microsoftは2つの独立したAIエージェントフレームワークを並行開発していた。

Semantic Kernel: 2023年にリリースされたエンタープライズAI SDK。Kernel/Plugin/KernelFunctionの3層抽象でLLMアプリケーションを構築する。テレメトリ、フィルター、セッション管理等のエンタープライズ機能が充実している一方、マルチエージェント機能は後付けの拡張であり、設計上の制約があった。

AutoGen: Microsoft Researchが開発したマルチエージェント会話フレームワーク。ConversableAgentによる柔軟なエージェント定義とGroupChatによる多者間会話が強みだが、エンタープライズ向けの機能(認証、監査ログ、コンプライアンス)が不足していた。

公式ブログによると、「Agent Framework は、Semantic Kernelのエンタープライズ基盤とAutoGenのシンプルなエージェント抽象を統合し、さらに新しいワークフローエンジンを追加したもの」と位置づけられている。

graph LR
    SK[Semantic Kernel<br/>エンタープライズ機能] --> MAF[Agent Framework 1.0]
    AG[AutoGen<br/>マルチエージェント抽象] --> MAF
    WF[新ワークフローエンジン<br/>グラフ型オーケストレーション] --> MAF

実装アーキテクチャ(Architecture)

Agent型の統一

MAF 1.0の最も大きなアーキテクチャ変更は、Agent型の統一である。

Semantic Kernel用途MAF 1.0
ChatCompletionAgentチャット型エージェントAgent
AzureAIAgentAzure AI Studio連携Agent
OpenAIAssistantAgentOpenAI Assistants APIAgent

すべてのエージェントが単一のAgentクラスに統合され、プロバイダーの違いはclient引数で吸収される。

1
2
3
4
5
6
7
8
9
10
from agent_framework import Agent
from agent_framework.openai import OpenAIChatClient
from agent_framework.anthropic import AnthropicClient
from agent_framework.foundry import FoundryChatClient

openai_agent = Agent(client=OpenAIChatClient(model="gpt-4o"), name="A")
claude_agent = Agent(client=AnthropicClient(model="claude-sonnet-4-6"), name="B")
foundry_agent = Agent(client=FoundryChatClient(
    project_endpoint="https://...", model="gpt-4o"
), name="C")

ツール登録の簡素化

Semantic Kernelでは@kernel_functionデコレータ → Pluginクラス → Kernelインスタンスという3段階の登録が必要だった。MAF 1.0では素のPython関数をそのまま渡せる。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from typing import Annotated

def search_docs(
    query: Annotated[str, "検索クエリ"]
) -> str:
    """ドキュメントを検索して結果を返します。"""
    return f"'{query}' の検索結果: ..."

agent = Agent(
    client=OpenAIChatClient(model="gpt-4o"),
    name="SearchAgent",
    instructions="ドキュメント検索アシスタント",
)

result = await agent.run("Pythonのasync/awaitについて", tools=[search_docs])

関数のDocstringがツールの説明として使われ、Annotated型ヒントがパラメータの説明になる。@kernel_functionデコレータは不要である。

7プロバイダーのネイティブサポート

公式ブログで明記されている対応プロバイダーは以下の通り。

プロバイダークライアントクラス環境変数
Microsoft FoundryFoundryChatClientAzure CLI認証
Azure OpenAIAzureOpenAIChatClientAZURE_OPENAI_*
OpenAIOpenAIChatClientOPENAI_API_KEY
Anthropic ClaudeAnthropicClientANTHROPIC_API_KEY
Amazon BedrockBedrockChatClientAWS認証情報
Google GeminiGeminiChatClientGOOGLE_API_KEY
OllamaOllamaChatClientローカル接続

ミドルウェアパイプライン

MAF 1.0はASP.NETのミドルウェアパイプラインに着想を得た拡張機構を持つ。エージェントの動作をインターセプト・変換・拡張できる。

用途として公式ブログで挙げられているのは、コンテンツフィルタリング(不適切な出力の検閲)、構造化ログの出力(OpenTelemetry連携)、コンプライアンスポリシーの適用(PII除去等)である。

メモリアーキテクチャ

3種類のメモリを標準サポートしている。

  1. 会話履歴: セッション内のメッセージ履歴
  2. Key-Value状態: エージェント間で共有する構造化データ
  3. ベクトル検索: RAG用のベクトルストア連携

バックエンドとして、Foundry Agent Service、Mem0、Redis、Neo4j、カスタムストアが利用可能である。

宣言的エージェント定義(YAML)

MAF 1.0では、エージェントの設定をYAMLファイルで宣言的に定義できる。

1
2
3
4
5
6
7
8
9
10
11
12
13
name: CustomerSupportAgent
instructions: |
  あなたはカスタマーサポートのエージェントです。
  丁寧に日本語で対応してください。
client:
  provider: openai
  model: gpt-4o
tools:
  - search_faq
  - create_ticket
memory:
  type: redis
  ttl: 3600

YAMLファイルをバージョン管理に含めることで、エージェントの設定変更を追跡・レビューできる。

パフォーマンス最適化(Performance)

公式ブログでは具体的なベンチマーク数値は公開されていないが、以下のアーキテクチャ上の最適化が言及されている。

チェックポイント&ハイドレーション: ワークフローの途中状態を永続化し、再開可能にする機構。長時間実行されるワークフロー(人間の承認待ち等)で、プロセス再起動後も途中から再開できる。

並列実行: ワークフローエンジンがグラフの独立したノードを並列実行し、レイテンシを削減する。

ストリーミング: agent.run(input, stream=True)で逐次トークン出力に対応。ユーザー体感のレイテンシを低減する。

運用での学び(Production Lessons)

公式ブログおよびMicrosoft Learnの移行ガイドから得られる運用上の知見は以下の通り。

段階的移行の推奨: Microsoftは、Semantic Kernel v1.xをMAF 1.0 GAから少なくとも1年間サポートすると表明している。新規プロジェクトにはMAFが推奨されるが、既存プロジェクトの移行は段階的に進めることが可能である。

互換レイヤー: Semantic Kernel v1.38以降に追加された.as_agent_framework_tool()メソッドにより、既存のKernelFunctionをMAFのツールとしてそのまま利用できる。

プロバイダー非依存の設計: Agentクラスがプロバイダーに依存しないため、開発時はOllama(ローカルLLM)、本番はAzure OpenAIという切り替えが1行で完了する。

.envの非自動読み込み: MAFは.envファイルを自動読み込みしない。python-dotenvload_dotenv()を明示的に呼び出す必要がある点に注意が必要である。

学術研究との関連(Academic Connection)

MAF 1.0の設計は、以下の学術研究に基づいている。

  • AutoGen (Wu et al., 2023): ConversableAgentの会話型マルチエージェント抽象 → MAFのAgentクラスとオーケストレーションパターンの基盤
  • Magentic-One (Fourney et al., 2024): タスク分解と動的エージェント割り当てのアーキテクチャ → MAFのMagentic-Oneオーケストレーションパターンとして統合
  • MCP (Anthropic, 2024): LLMとツールの接続標準プロトコル → MAFのネイティブMCPサポート

まとめと実践への示唆

Microsoft Agent Framework 1.0は、エンタープライズAIエージェント開発の新しいスタンダードとなる可能性がある。Agent型の統一・ツール登録の簡素化・宣言的YAML定義により、開発者の認知負荷が大幅に低減されている。

既存のSemantic Kernelユーザーにとっては、互換レイヤーを活用した段階的移行が最もリスクの低いアプローチである。新規プロジェクトでは、MAF 1.0をベースに設計し、7プロバイダー対応とMCP統合の恩恵を受けることが推奨される。

Production Deployment Guide

AWS実装パターン(コスト最適化重視)

MAF 1.0をAWS上にデプロイする場合、7プロバイダーネイティブ対応を活かしたマルチモデル構成が有効である。

規模月間リクエスト推奨構成月額コスト主要サービス
Small~3,000 (100/日)Serverless$80-200Lambda + Bedrock + DynamoDB
Medium~30,000 (1,000/日)Container$400-1,200ECS Fargate + Bedrock + ElastiCache
Large300,000+ (10,000/日)Kubernetes$3,000-8,000EKS + Karpenter + EC2 Spot

Small構成の詳細 (月額$80-200):

  • Lambda: Python 3.12, 512MB RAM, 30秒タイムアウト ($15/月)
  • Bedrock: Claude 3.5 Haiku(メインエージェント)+ Llama 3.1(軽量タスク) ($100/月)
  • DynamoDB: On-Demand、Key-Value状態永続化 ($10/月)
  • S3: YAML定義ファイルのバージョン管理 ($5/月)

MAF固有の考慮事項:

  • MAFの宣言的YAML定義をS3に格納し、Lambda起動時に読み込む構成により、エージェント設定変更をデプロイなしで反映可能
  • BedrockのAnthropicClientとOpenAIのOpenAIChatClientをエージェントごとに切り替えることで、コスト/精度のバランスを最適化
  • ミドルウェアパイプラインでOpenTelemetry → CloudWatch Logs連携を設定し、エージェントの推論プロセスを可視化

コスト試算の注意事項:

  • 上記は2026年6月時点のAWS ap-northeast-1(東京)リージョン料金に基づく概算値
  • 実際のコストはエージェント数、ターン数、LLMプロバイダー選択により変動
  • 最新料金は AWS料金計算ツール で確認してください

コスト最適化チェックリスト

アーキテクチャ選択:

  • ~100 req/日 → Lambda + Bedrock (Serverless) - $80-200/月
  • ~1,000 req/日 → ECS Fargate + Bedrock (Container) - $400-1,200/月
  • 10,000+ req/日 → EKS + Spot (Kubernetes) - $3,000-8,000/月

LLMコスト削減:

  • エージェントごとにモデルティアを最適化(ルーティング → Haiku、本文生成 → Sonnet)
  • Bedrock Prompt Caching有効化(instructions部分をキャッシュ)
  • Bedrock Batch API使用(非リアルタイム処理)

監視・アラート:

  • OpenTelemetry → CloudWatch連携(ミドルウェアパイプライン経由)
  • AWS Budgets: 月額予算設定(80%で警告)
  • Bedrockトークン使用量のダッシュボード

参考文献

  • Blog URL: https://devblogs.microsoft.com/agent-framework/microsoft-agent-framework-version-1-0/
  • Migration Guide: https://learn.microsoft.com/en-us/agent-framework/migration-guide/from-semantic-kernel/
  • GitHub: https://github.com/microsoft/agent-framework
  • Related Zenn article: https://zenn.dev/0h_n0/articles/f18d562b6f7d52
この投稿は CC BY 4.0 でライセンスされています。