db620d33df
CodeQL / Analyze (csharp) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
dotnet-build-and-test / dotnet-test-functions (push) Has been cancelled
dotnet-build-and-test / paths-filter (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Debug, windows-latest, net9.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, ubuntu-latest, net10.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, ubuntu-latest, net8.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, windows-latest, net472) (push) Has been cancelled
dotnet-build-and-test / dotnet-test (Release, integration, true, ubuntu-latest, net10.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-test (Release, integration, true, windows-latest, net472) (push) Has been cancelled
dotnet-build-and-test / dotnet-foundry-hosted-it (push) Has been cancelled
dotnet-build-and-test / dotnet-build-and-test-check (push) Has been cancelled
dotnet-build-and-test / Integration Test Report (push) Has been cancelled
77 lines
2.2 KiB
Python
77 lines
2.2 KiB
Python
# /// script
|
|
# requires-python = ">=3.10"
|
|
# dependencies = [
|
|
# "agent-framework-openai",
|
|
# "autogen-agentchat",
|
|
# "autogen-ext[openai]",
|
|
# ]
|
|
# ///
|
|
# Run with any PEP 723 compatible runner, e.g.:
|
|
# uv run samples/autogen-migration/single_agent/01_basic_assistant_agent.py
|
|
|
|
# Copyright (c) Microsoft. All rights reserved.
|
|
|
|
import asyncio
|
|
|
|
from agent_framework import Agent
|
|
from dotenv import load_dotenv
|
|
|
|
"""Basic AutoGen AssistantAgent vs Agent Framework Agent.
|
|
|
|
Both samples expect OpenAI-compatible environment variables (OPENAI_API_KEY or
|
|
Azure OpenAI configuration). Update the prompts or client wiring to match your
|
|
model of choice before running.
|
|
"""
|
|
|
|
# Load environment variables from .env file
|
|
load_dotenv()
|
|
|
|
|
|
async def run_autogen() -> None:
|
|
"""Call AutoGen's AssistantAgent for a simple question."""
|
|
|
|
from autogen_agentchat.agents import AssistantAgent
|
|
from autogen_ext.models.openai import OpenAIChatCompletionClient
|
|
|
|
# AutoGen agent with OpenAI model client
|
|
client = OpenAIChatCompletionClient(model="gpt-4.1-mini")
|
|
agent = AssistantAgent(
|
|
name="assistant",
|
|
model_client=client,
|
|
system_message="You are a helpful assistant. Answer in one sentence.",
|
|
)
|
|
|
|
# Run the agent (AutoGen maintains conversation state internally)
|
|
result = await agent.run(task="What is the capital of France?")
|
|
print("[AutoGen]", result.messages[-1].to_text())
|
|
|
|
|
|
async def run_agent_framework() -> None:
|
|
"""Call Agent Framework's Agent created from OpenAIChatClient."""
|
|
from agent_framework.openai import OpenAIChatClient
|
|
|
|
# AF constructs a lightweight Agent backed by OpenAIChatClient
|
|
client = OpenAIChatClient(model="gpt-4.1-mini")
|
|
agent = Agent(
|
|
client=client,
|
|
name="assistant",
|
|
instructions="You are a helpful assistant. Answer in one sentence.",
|
|
)
|
|
|
|
# Run the agent (AF agents are stateless by default)
|
|
result = await agent.run("What is the capital of France?")
|
|
print("[Agent Framework]", result.text)
|
|
|
|
|
|
async def main() -> None:
|
|
print("=" * 60)
|
|
print("Basic Assistant Agent Comparison")
|
|
print("=" * 60)
|
|
await run_autogen()
|
|
print()
|
|
await run_agent_framework()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
asyncio.run(main())
|