微软 AutoGen:55K Star 的多智能体编程框架

这可能是目前最强大的开源多智能体 AI 开发框架。

3 月 7 日,Microsoft AutoGen 在 GitHub 上已收获 55,300 Star,8,300 次 Fork,是当前最受欢迎的多智能体(Multi-Agent)AI 开发框架之一。


01 什么是 AutoGen?

AutoGen 是微软推出的多智能体 AI 编程框架,其核心定位是:

让多个 AI Agent 能像团队一样协作,共同完成复杂任务。

与传统单 Agent 对话不同,AutoGen 支持:

  • 多 Agent 协作:多个 Agent 可以分工、对话、共享上下文
  • 人机协作:Agent 可以随时调用人类输入做决策
  • 灵活编排:支持顺序执行、并行处理、动态路由等多种工作流
  • 多语言支持:Python(主力)+ .NET + TypeScript

02 核心特性

1. 分层架构设计

AutoGen 采用三层架构,职责清晰、可扩展性强:

  • Core API:消息传递、事件驱动 Agent、本地与分布式运行时
  • AgentChat API:高层抽象,快速构建多 Agent 对话(最接近 v0.2 使用体验)
  • Extensions API:支持各类 LLM 客户端(OpenAI、Azure OpenAI 等)和代码执行等扩展能力

2. 多 Agent 编排模式

AutoGen 内置了丰富的多 Agent 模式:

  • 两 Agent 对话:最简单的协作模式
  • 群聊(Group Chat):多个 Agent 共同讨论
  • 嵌套聊天:Agent 可以调用其他 Agent 作为工具

3. 开发者工具

  • AutoGen Studio:无代码 GUI,拖拽式构建多 Agent 工作流
  • AutoGen Bench:性能评测套件

4. 现成应用示例

Magentic-One:微软基于 AutoGen 构建的多 Agent 系统,可处理网页浏览、代码执行、文件处理等多种任务。


03 快速上手

安装

pip install -U "autogen-agentchat" "autogen-ext[openai]"

Hello World

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

async def main():
    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())

多 Agent 协作示例

# 创建一个数学专家 Agent
math_agent = AssistantAgent(
    "math_expert",
    model_client=model_client,
    system_message="You are a math expert.",
)
math_agent_tool = AgentTool(math_agent, return_value_as_last_message=True)

# 创建一个化学专家 Agent
chemistry_agent = AssistantAgent(
    "chemistry_expert",
    model_client=model_client,
    system_message="You are a chemistry expert.",
)

# 主 Agent 调用专家 Agent
assistant = AssistantAgent(
    "assistant",
    model_client=model_client,
    tools=[math_agent_tool, chemistry_agent_tool],
)

04 谁在用 AutoGen?

  • 4,000+ 项目依赖 AutoGen
  • 活跃的 Discord 社区和 GitHub Discussions
  • 微软官方持续维护,周均活跃开发

05 适用场景

  • 复杂任务分解:如「写一篇研究报告」拆解为「查资料→整理→撰写→审核」
  • 多角色模拟:如「软件开发团队」(产品经理、架构师、测试工程师)
  • 人机协同:关键步骤需要人类确认后再执行
  • 企业级自动化:需要可靠的多 Agent 工作流

06 小结

特性 AutoGen
Stars 55.3k
Fork 8.3k
主语言 Python / C# / TypeScript
架构 分层(Core / AgentChat / Extensions)
特点 微软背书、成熟稳定、企业级
适用 需要多 Agent 协作、复杂工作流的企业项目

如果你正在构建多 Agent 系统,AutoGen 值得一试。


参考资料:https://github.com/microsoft/autogen

Leave a Comment