© 2026FindAgent  · @simprr
返回列表
m

microsoft/autogen

A programming framework for agentic AI

agenticagentic-agiagentsaiautogenautogen-ecosystemchatgptframeworkllm-agentllm-framework
⭐

56.3k

Stars

🔱

8.5k

Forks

👁

513

Watchers

📋

714

Issues

PythonCC-BY-4.0创建于 2023/8/18更新于 今天
在 GitHub 上查看访问主页
README
由 Gemini 翻译整理

Twitter LinkedIn Discord Documentation Blog

AutoGen

AutoGen 是一个用于创建多智能体 AI 应用的框架,这些智能体既可以自主行动,也可以与人类协作。

重要提示: 如果您是 AutoGen 的新用户,请查看 Microsoft Agent Framework。 AutoGen 将继续得到维护,并持续接收错误修复和关键安全补丁。 请阅读我们的 公告。

安装

AutoGen 需要 Python 3.10 或更高版本。

# Install AgentChat and OpenAI client from Extensions
pip install -U "autogen-agentchat" "autogen-ext[openai]"

当前稳定版本可在 releases 中找到。如果您是从 AutoGen v0.2 进行升级,请参阅 迁移指南 获取有关如何更新代码和配置的详细说明。

# Install AutoGen Studio for no-code GUI
pip install -U "autogenstudio"

快速入门

以下示例调用了 OpenAI API,因此您需要先创建一个账户并将您的 API key 导出为 export OPENAI_API_KEY="sk-..."。

Hello World

创建一个使用 OpenAI GPT-4o 模型的助手智能体。查看 其他支持的模型。

import asyncio
from autogen_agentchat.agents import AssistantAgent
from autogen_ext.models.openai import OpenAIChatCompletionClient

async def main() -> None:
    model_client = OpenAIChatCompletionClient(model="gpt-4.1")
    agent = AssistantAgent("assistant", model_client=model_client)
    print(await agent.run(task="Say 'Hello World!'"))
    await model_client.close()

asyncio.run(main())

MCP Server

创建一个使用 Playwright MCP 服务器的网页浏览助手智能体。

# First run `npm install -g @playwright/mcp@latest` to install the MCP server.
import asyncio
from autogen_agentchat.agents import AssistantAgent
from autogen_agentchat.ui import Console
from autogen_ext.models.openai import OpenAIChatCompletionClient
from autogen_ext.tools.mcp import McpWorkbench, StdioServerParams


async def main() -> None:
    model_client = OpenAIChatCompletionClient(model="gpt-4.1")
    server_params = StdioServerParams(
        command="npx",
        args=[
            "@playwright/mcp@latest",
            "--headless",
        ],
    )
    async with McpWorkbench(server_params) as mcp:
        agent = AssistantAgent(
            "web_browsing_assistant",
            model_client=model_client,
            workbench=mcp, # For multiple MCP servers, put them in a list.
            model_client_stream=True,
            max_tool_iterations=10,
        )
        await Console(agent.run_stream(task="Find out how many contributors for the microsoft/autogen repository"))


asyncio.run(main())

警告:仅连接到受信任的 MCP 服务器,因为它们可能会在您的本地环境中执行命令或暴露敏感信息。

多智能体编排

您可以使用 AgentTool 创建一个基础的多智能体编排设置。

import asyncio

from autogen_agentchat.agents import AssistantAgent
from autogen_agentchat.tools import AgentTool
from autogen_agentchat.ui import Console
from autogen_ext.models.openai import OpenAIChatCompletionClient


async def main() -> None:
    model_client = OpenAIChatCompletionClient(model="gpt-4.1")

    math_agent = AssistantAgent(
        "math_expert",
        model_client=model_client,
        system_message="You are a math expert.",
        description="A math expert assistant.",
        model_client_stream=True,
    )
    math_agent_tool = AgentTool(math_agent, return_value_as_last_message=True)

    chemistry_agent = AssistantAgent(
        "chemistry_expert",
        model_client=model_client,
        system_message="You are a chemistry expert.",
        description="A chemistry expert assistant.",
        model_client_stream=True,
    )
    chemistry_agent_tool = AgentTool(chemistry_agent, return_value_as_last_message=True)

    agent = AssistantAgent(
        "assistant",
        system_message="You are a general assistant. Use expert tools when needed.",
        model_client=m
贡献者
ejssrqaLvg
项目信息
默认分支main
LicenseCreative Commons Attribution 4.0 International
创建时间2023/8/18
最近更新今天
GAI 中文摘要

AutoGen 是一个用于构建多智能体 AI 应用的开发框架,支持智能体独立执行任务或与人类协作。它通过编排多个智能体协同工作,旨在简化复杂 AI 工作流的开发与部署,解决单一大模型难以处理的多步骤任务。

支持创建能够自主运行或与人类交互的多种类型智能体。 提供灵活的多智能体编排机制,实现复杂任务的自动化处理。 兼容多种大型语言模型,方便开发者根据需求切换底层 AI 引擎。 内置 MCP 服务器集成功能,使智能体能够调用外部工具和浏览器环境。 提供 AutoGen Studio 可视化原型设计工具,支持无需编写代码即可构建工作流。

适用于需要开发复杂 AI 应用的开发者和研究人员,特别是在自动化办公、复杂任务流程处理以及需要多模型协同解决问题的场景中表现优异。