エージェントってなに? Agent FrameworkとMicrosoft Foundryの概要と関係性について

本記事では2026年2月時点で調査したAgent FrameworkとMicrosoft Foundryの役割と関係性について解説します。

そもそもAgent(エージェント)とは

LLM(Chat GPT,Gemini,Claudeなど)は単に質問をすると回答を出すといった動作を行います。

一方でAgentは「目的を与えると、自分で考えて必要ならツールを使い、手順を分解し、実行して結果を返す存在」を指します。

Agentも処理のうえでLLMを使いますが、ユーザーの要求を解釈して、検索APIを呼んだり別なAgentに相談したりと、より複雑な振る舞いをすることで挙動を多様化させています。例えるなら、LLMという土台の上で動くロボットのようなイメージです。

Agentはどうやって作るの?

Agent FrameworkはPythonや.NETでの開発となり、Microsoft Foundryは主にPythonもしくはAzureのUI上で開発することができます。

上述の通り、Agentはそれ単体で存在するものではなく、LLMにさらに複雑な挙動をさせるための仕組みです。この仕組みはライブラリで提供されていたり、各基盤で管理されたサービスとして提供されています。この立ち位置にあるのが、Agent FrameworkもしくはMicrosoft Foundryです。

Agent FrameworkはライブラリでAgentを提供します。自分のPythonコード上でライブラリを通じてAgentを立ち上げて、外部のLLMやツールにアクセスしながら挙動を作るようなイメージです。

一方でMicrosoft Foundryでは、AzureのサービスとしてAgentを立ち上げます。Microsoft Foundryにプログラムからアクセスすることで生成指示を行ったり結果を取得したりできますが、Agentの主体はあくまでサービス上となります。

Microsoft FoundryとAgent Frameworkは何が違う?

作成したAgent同士は共存する?

今後Agent Framework+Microsoft Foundryでマルチエージェントが作成できる仕組み等が提供される可能性はありますが、2026年2月時点ではMicrosoft FoundryとAgent Frameworkで作成するAgentは共存しません。

2025年11月のBuildでAzure AI FoundryからMicrosoft Foundryに名称変更された影響と、Agent FrameworkがAzure AI Foundry(旧 AI Foundry)に対応している影響でやや複雑な状況になっていますが、2つの基盤で作成されるAgentは現状で別物と考えてよいはずです。

Agentの使い分け

過去の記事で、Microsoft Foundry(Azure AI Foundry)上でAgentを作成し、管理・運用する方法を紹介しました。

blog.jbs.co.jp

Microsoft Foundryで作成されるAgentは、会話ログの保存や管理画面での可視化、評価や運用といった点まで含めて、あらかじめマネージドに扱えるよう設計されています。そのため、単純な質問応答や、決まったツールを呼び出すようなAgentであれば、簡単に運用を始められます。また Microsoft Agent 365の基盤に統合されているという大きな特徴があります。

(補足ですが、旧 AI Foundryで作成されたAgentとMicrosoft FoundryのAgentは、もともとFoundryベースであるという点で共通している点はあるものの、Agent 365に統合されていない点や命名規則等が全く違うなど、中身が違うため基本的に別物となります)

一方で、Agent Frameworkは各種チャットプロバイダーに対応しており、それらを経由してエージェントを作成することができます。またマルチエージェントの構成に特に強く、複雑な動きをさせるエージェントを構築したければ、Agent Frameworkが有利になると言えます。

引用:Microsoft Docs learn.microsoft.com

実行サンプル

Agent Framework

導入

Jupyter Notebook環境でコードを実行します。

Python 3.10以上の環境で、以下のパッケージを導入します。

pip install -U agent-framework --pre
使い方

以下のコードでAgentを作成してレスポンスを取得できます。

from agent_framework.azure import AzureOpenAIChatClient

client = AzureOpenAIChatClient(
    endpoint=ENDPOINT,
    deployment_name=MODEL,
    api_key=API_KEY
)

agent = client.create_agent(
    instructions="あなたはユーザーの質問に回答するエージェントです。", 
    name="framework agent" 
)

result = await agent.run("あなたは共通テストの問題に回答できますか?")
print(result.text)

※Jupyter Notebook以外の環境では、基本はasyncで関数を定義して非同期実行します。

Microsoft Foundry

導入

Jupyter Notebook環境でコードを実行します。

Python 3.10以上の環境で、以下のパッケージを導入します。

azure-ai-agents==1.2.0b6
azure-ai-projects==2.0.0b2
azure-identity==1.17.0
使い方

以下のコードでAgentを作成してレスポンスを取得できます。

from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import (
    PromptAgentDefinition, 
)
from azure.identity import DefaultAzureCredential, ClientSecretCredential

# Microsoft Foundry Projects エンドポイントURL
PROJECT_CONNECTION_STRING = ""

# Azure AI Projects クライアントの初期化
# 環境変数または認証情報を設定してください
project_client = AIProjectClient(
    endpoint=PROJECT_CONNECTION_STRING,
    credential=cred
)

openai_client = project_client.get_openai_client()

# Agentの作成
agent = project_client.agents.create_version( 
agent_name="sampleagent",
  definition= PromptAgentDefinition(
    model="gpt-4.1",
    instructions="あなたはユーザーの質問に回答するエージェントです。",
    tools=[],
  ) 
) 
print(f"created agent: {agent.id}")

conversation = openai_client.conversations.create(items=[])
response = openai_client.responses.create(
    conversation=conversation.id,
    extra_body={
        "agent": {
            "type": "agent_reference",
            "name": agent.name,
            "version": agent.version,
        }
    },
    input="あなたは共通テストの問題に回答できますか?",
)

print(response.output_text)

おわりに

本記事では2026年2月時点でのAgent FrameworkとMicrosoft Foundryの役割と関係性を整理しました。

2026年2月時点では両者のAgentは共存しない点に注意が必要ですが、今後のアップデートで連携や機能追加が行われる可能性もあります。実運用やプロジェクトの要件に応じて、管理性を重視するならMicrosoft Foundry、カスタマイズ性や拡張性を重視するならAgent Frameworkを検討してください。

最新情報やAPIの詳細については公式ドキュメントを随時確認することをおすすめします。

執筆担当者プロフィール
西野 佑基

西野 佑基(日本ビジネスシステムズ株式会社)

機械学習系ソリューション開発、業務Webアプリ開発、開発環境自動化などを担当。

担当記事一覧