首页
/
工具详情
Microsoft AutoGen 全指南
重要提示:AutoGen 现已进入维护模式,微软新项目迭代转向 Microsoft Agent Framework。存量项目可继续使用 AutoGen,新项目建议优先考虑迁移至新版框架。
一、平台介绍
1. 项目基础信息
- 开发背景:由微软研究院、宾州州立大学、华盛顿大学联合研发,2023 年 10 月首发于 GitHub。
- 开源协议:MIT 开源协议,全球 Star 超 5.4 万。
- 开发语言:以 Python 为主力,同时支持 .NET 双语言生态。
- 版本现状:
- 稳定版:v0.4 版本。
- 维护模式:自 2025 年 10 月起停止新增功能,仅进行 BUG 维护。
- 核心思想:拆分角色 Agent(如程序员、分析师、审核员等),AI 之间通过自主对话沟通、分工协作落地任务,支持人工随时介入干预。
2. 三大核心原生 Agent
AutoGen 框架的基石由以下三种核心 Agent 构成:
- AssistantAgent定位:思考生成大脑。
- 核心用途:绑定大语言模型(LLM),负责写代码、分析、生成方案及逻辑推理。
- UserProxyAgent定位:执行端 + 人机接口。
- 核心用途:运行 Agent 生成的代码,接收人类指令,控制终止逻辑,支持沙箱安全运行代码。
- GroupChatManager定位:群聊管理员。
- 核心用途:多 Agent 群组对话调度,自动分配发言顺序、管控会话流程。
二、主要功能
1. 核心能力
AutoGen 具备以下六大核心能力:
- 多智能体自由协作支持单/多 Agent 组队聊天,可自定义角色分工(如产品 + 开发 + 测试 AI 协同开发)。
- 支持串行或并行任务调度。
- 自动代码生成 + 安全执行内置 Docker 沙箱隔离运行 Agent 输出的 Python/Shell 代码。
- 支持自动报错、迭代修复,避免恶意代码污染本机。
- 本地调试时可关闭沙箱直接运行代码。
- 全品类大模型兼容原生支持 OpenAI、Azure OpenAI、Claude、通义千问、Llama3/Ollama 本地开源大模型。
- 统一配置格式,可灵活切换模型。
- AutoGen Studio 无代码可视化自带 Web 拖拽 UI,无需编写 Python 代码。
- 可视化搭建 Agent 工作流、调试对话,一键导出代码。
- 灵活人在回路(Human-in-the-loop)ALWAYS:每次执行前必须人工确认(适用于金融/敏感业务)。
- TERMINATE:仅任务结束时人工确认。
- NEVER:全自动无人值守执行(适用于自动化流水线)。
- 扩展生态支持工具调用(爬虫、数据库读写、文件处理)。
- 支持会话持久化、链路日志追踪、多机分布式部署。
2. 落地场景
- 开发自动化:AI 团队自主写代码、调试、生成爬虫/数据分析脚本。
- 数据分析:多 Agent 分工清洗数据、可视化、输出业务分析报告。
- 企业 RPA:自动化报销、入职审批、合同审阅等跨部门流程。
- 科研教育:AI 多智能体课题实验、编程教学、学术数据处理。
- 复杂推理:多步骤理财测算、行业市场研判、方案拆解落地。
三、适用人群
- AI/后端开发工程师:快速落地 Agent 应用、私有化 AI 工作流、企业内部 AI 自动化工具。
- 算法/科研人员:进行多智能体学术实验、LLM 协作机制研究。
- 产品/业务分析师:利用 AutoGen Studio 零代码搭建自动化业务流程。
- 学生/AI 爱好者:低成本学习多 Agent、LLM 应用开发,本地 Ollama 跑开源模型零成本试错。
- 中小企业数字化:低成本搭建内部自动化 AI 助理,替代重复人工工作。
四、免费与付费详情
1. 框架本体(永久免费)
- 费用情况:无授权费、无软件订阅费、无商用限制。
- 协议说明:MIT 协议,个人/企业均可免费修改、二次开发、商业化落地。
- 资源:社区文档、开源代码全免费,仅社区技术支持,无官方付费版软件授权。
2. 使用者实际自费项目(非框架收费)
- 大模型 API 费用(最大开销)商用 API:GPT-3.5/GPT4、Claude、Azure OpenAI 按 Token 计费。多 Agent 对话 Token 消耗通常是单 Agent 的 2~5 倍。
- 零成本方案:本地 Ollama 部署 Llama3、Qwen 等开源大模型,完全不用 API 付费。
- 服务器/部署成本本地调试:个人电脑即可运行,零硬件开销。
- 生产部署:云服务器 + Docker 容器,按需付费;使用 Azure 托管沙箱环境额外收取云资源费。
- 可选增值付费Azure AI Foundry 托管服务:企业需要官方运维、专属技术支持、合规部署,按需订阅付费(非 AutoGen 强制收费)。
- 第三方商业托管平台:部分服务商推出 AutoGen 云托管订阅(99 美元/月起),非原生官方收费,按需选择。
五、分步使用指南(Python 环境,主流落地方式)
1. 环境准备
- Python 版本:3.8~3.13,推荐 3.10。
- 操作命令:
- bash
# 1. 创建虚拟环境(隔离依赖,必做) conda create -n autogen_env python=3.10 conda activate autogen_env # 2. 安装 AutoGen 核心包 + OpenAI 扩展 pip install -U "autogen-agentchat" "autogen-ext[openai]" -i https://pypi.tuna.tsinghua.edu.cn/simple # 可选:安装可视化 AutoGen Studio(无代码界面) pip install autogenstudio # 启动可视化页面:终端输入 autogenstudio ui --port 8080,浏览器打开 localhost:8080 # 1. 创建虚拟环境(隔离依赖,必做) conda create -n autogen_env python=3.10 conda activate autogen_env # 2. 安装 AutoGen 核心包 + OpenAI 扩展 pip install -U "autogen-agentchat" "autogen-ext[openai]" -i https://pypi.tuna.tsinghua.edu.cn/simple # 可选:安装可视化 AutoGen Studio(无代码界面) pip install autogenstudio # 启动可视化页面:终端输入 autogenstudio ui --port 8080,浏览器打开 localhost:8080
2. 基础配置
配置 LLM 密钥,避免代码明文写 Key。
- 方式一:环境变量配置(推荐,安全性高)bash
# Linux/Mac 终端 export OPENAI_API_KEY="你的 API 密钥" # Windows PowerShell $env:OPENAI_API_KEY="你的 API 密钥" # Linux/Mac 终端 export OPENAI_API_KEY="你的 API 密钥" # Windows PowerShell $env:OPENAI_API_KEY="你的 API 密钥"
- 方式二:代码内配置(仅本地测试)python
import autogen
config_list = [{"model":"gpt-3.5-turbo","api_key":"sk-xxx"}]
import autogen
config_list = [{"model":"gpt-3.5-turbo","api_key":"sk-xxx"}]
3. 最简双 Agent 示例(AI 写代码 + 自动运行)
python
# 1. 配置模型
llm_config = {"config_list":config_list,"temperature":0.1}
# 2. 创建程序员 Agent(负责写代码)
coder = autogen.AssistantAgent(
name="Python 工程师",
llm_config=llm_config,
system_message="编写 Python 代码,代码用```python```包裹,完成任务回复 TERMINATE 结束对话"
)
# 3. 创建执行 Agent(自动运行代码)
executor = autogen.UserProxyAgent(
name="代码执行器",
human_input_mode="NEVER", # 全自动不人工确认
max_consecutive_auto_reply=10, # 最大连续对话 10 轮防死循环
is_termination_msg=lambda x:x.get("content","").find("TERMINATE")>=0
)
# 4. 发起任务:让 AI 生成股票数据分析代码
executor.initiate_chat(coder, message="帮我写 Python 代码,生成随机数据并绘制折线图")
# 1. 配置模型
llm_config = {"config_list":config_list,"temperature":0.1}
# 2. 创建程序员 Agent(负责写代码)
coder = autogen.AssistantAgent(
name="Python 工程师",
llm_config=llm_config,
system_message="编写 Python 代码,代码用```python```包裹,完成任务回复 TERMINATE 结束对话"
)
# 3. 创建执行 Agent(自动运行代码)
executor = autogen.UserProxyAgent(
name="代码执行器",
human_input_mode="NEVER", # 全自动不人工确认
max_consecutive_auto_reply=10, # 最大连续对话 10 轮防死循环
is_termination_msg=lambda x:x.get("content","").find("TERMINATE")>=0
)
# 4. 发起任务:让 AI 生成股票数据分析代码
executor.initiate_chat(coder, message="帮我写 Python 代码,生成随机数据并绘制折线图")
4. 无代码使用(AutoGen Studio)
- 安装后执行命令:
autogenstudio ui --port 8080。 - 网页端拖拽创建 Agent、填写角色提示词、填入 API Key。
- 输入任务指令,一键运行多 Agent 协作,调试完成后导出 Python 代码。
六、高频避坑点(生产与调试必看)
1. 对话死循环(最常见问题)
- 问题现象:Agent 来回重复对话、无限闲聊不结束,疯狂消耗 Token。
- 解决方案:
- 配置
max_consecutive_auto_reply限制最大自动轮次(建议 ≤ 15)。 - 必须设置
is_termination_msg终止关键词(如 "TERMINATE")。 - System Prompt 中明确任务结束标准。
2. API 密钥明文泄露
- 问题现象:代码硬编码 API Key 上传代码仓库,密钥被盗刷扣费。
- 解决方案:统一用系统环境变量或本地 yaml 配置文件加载密钥,严禁明文写入代码。
3. 代码执行安全风险
- 问题现象:NEVER 全自动模式下 Agent 生成删文件、联网恶意代码,破坏本机。
- 解决方案:
- 生产环境强制 Docker 沙箱运行。
- 金融/敏感业务改为
human_input_mode="ALWAYS"人工确认。 - 限制容器读写权限。
4. 成本失控(Token 超支)
- 问题现象:多 Agent 群聊对话超长,GPT4 费用暴涨。
- 解决方案:
- 简单任务切换廉价 gpt3.5 或本地开源模型,复杂任务用 GPT4。
- 配置对话上下文缓存,减少重复 Token 消耗。
- 单轮对话设置 Token 上限。
5. 版本升级踩坑
- 问题现象:v0.2 旧代码无法直接在 v0.4 新版本运行,API 大改。
- 解决方案:新项目直接用
autogen-agentchat新包,老项目参考官方迁移文档升级;新项目优先调研 Microsoft Agent Framework。
6. 本地开源模型对接失败
- 问题现象:Ollama 本地大模型无法接入 AutoGen。
- 解决方案:安装
autogen-ext[ollama]扩展,修改config_list适配 Ollama 本地接口地址。
7. 生产环境会话丢失
- 问题现象:服务重启后 Agent 对话记录、任务状态全部清空。
- 解决方案:生产环境用 Redis+MySQL 持久化会话,不要只用内存存储状态。
暂无评论