Microsoft Agent Framework(AutoGen) 目录一、Microsoft Agent Framework和AutoGen二、MAF 怎么干活三、核心概念对应之前CrewAI的例子四、Demo家庭露营攻略团队前置准备步骤1安装依赖步骤2完整可运行代码① 导入核心组件② 配置大模型二选一方案AOpenAI 云端模型方案B本地 Ollama离线免费③ 定义3个专业智能体和CrewAI角色完全对应④ 构建顺序工作流流水线编排⑤ 启动执行获取结果运行效果说明五、Magentic 动态调度模式智能项目经理六、MAF vs CrewAI vs AutoGen 核心对比七、MAF 核心特点一、Microsoft Agent Framework和AutoGenMicrosoft Agent Framework简称 MAF是微软在2025年10月正式发布的新一代统一多智能体开发框架它不是AutoGen而是AutoGen Semantic Kernel 的官方继任者——微软已经明确表示未来AutoGen和Semantic Kernel只做安全维护新功能全部集中在MAF上。简单说AutoGen 是微软研究院的「实验性项目」主打自由群聊式协作但难管控、难上生产Semantic Kernel 是微软的「企业级插件框架」主打工具连接和工作流但多智能体能力弱MAF 把两者合二为一既保留了多智能体协作的灵活性又加入了图状工作流、类型安全、状态持久化、可观测性这些企业级特性是官方钦定的下一代方案。二、MAF 怎么干活用「做露营攻略」的例子类比如果说 CrewAI 是「老板提前画好流程图员工按步骤流水线干活」AutoGen 是「拉个工作群大家自由讨论着把活干完」那 MAF 就是「正规公司的项目管理系统」你可以画严格的流程图Workflow规定谁先做、谁后做、结果怎么传——对标CrewAI的确定性流程你也可以设一个项目经理Magentic模式让他动态派活、协调大家——对标AutoGen的灵活协作所有对话、状态、中间结果自动存档出错了能回溯还能无缝部署到Azure云服务它的核心设计理念是用工作流Workflow做骨架用智能体Agent做节点想确定就定死流程想灵活就用动态调度。三、核心概念对应之前CrewAI的例子MAF 概念类比对应CrewAI概念Agent智能体专业员工有角色、人设、工具AgentWorkflow工作流项目流程图规定执行顺序和数据流向Process Task编排Sequential 模式流水线作业一个干完传给下一个Sequential 顺序流程Concurrent 模式多人并行干活最后汇总结果无对应CrewAI需手动实现Magentic 模式项目经理动态派活按需调度员工Hierarchical 层级模式Executor执行器流程节点可以是Agent也可以是普通函数/工具Task四、Demo家庭露营攻略团队我们完全复用之前CrewAI的需求3个角色行程规划师→美食策划师→总编辑顺序流水线生成2天1夜家庭露营攻略。前置准备Python 3.10大模型二选一OpenAI API Key / 本地Ollama步骤1安装依赖pipinstallagent-framework--pre注意目前还是预览版必须加--pre安装步骤2完整可运行代码① 导入核心组件importasynciofromagent_frameworkimportChatAgentfromagent_framework.orchestrationsimportSequentialBuilderfromagent_framework.openaiimportOpenAIChatClient② 配置大模型二选一方案AOpenAI 云端模型# 配置OpenAI客户端自动读取环境变量里的API Keychat_clientOpenAIChatClient(model_idgpt-4o-mini,api_key你的OpenAI API Key)方案B本地 Ollama离线免费# 先确保本地Ollama已启动且执行过 ollama pull llama3chat_clientOpenAIChatClient(model_idllama3,base_urlhttp://localhost:11434/v1,api_keyollama# Ollama随便填不校验)③ 定义3个专业智能体和CrewAI角色完全对应# 1号员工资深露营行程规划师plannerChatAgent(chat_clientchat_client,name行程规划师,instructions你是资深露营行程规划师有5年户外露营经验熟悉各类露营场地 特别擅长家庭亲子露营的行程安排注重细节和安全性会充分考虑老人和孩子的需求。 请输出详细的2天1夜露营行程表、分类物品清单、安全注意事项。 请用中文输出条理清晰。)# 2号员工露营美食策划师food_specialistChatAgent(chat_clientchat_client,name露营美食策划师,instructions你是户外美食达人擅长用简易厨具做出好吃的露营餐食 充分考虑食材保鲜、烹饪难度和分量特别适配家庭出行的饮食需求。 请基于前面的行程设计对应的三餐食谱和食材采购清单。 请用中文输出内容实用落地。)# 3号员工攻略总策划编辑editorChatAgent(chat_clientchat_client,name攻略总策划编辑,instructions你是资深生活类内容编辑擅长梳理信息、优化结构 能把零散内容整合成普通人一看就懂的实用攻略会主动补充注意事项和避坑提示。 请整合前面的行程和美食内容生成结构完整的最终露营攻略 必须包含【行程安排】【物品清单】【美食方案】【避坑提示】四个板块。 请用中文输出排版清晰。)④ 构建顺序工作流流水线编排# 按执行顺序排列前一个的输出自动作为后一个的输入上下文workflowSequentialBuilder().participants([planner,food_specialist,editor]).build()⑤ 启动执行获取结果asyncdefmain():print( 启动露营攻略多智能体团队...)print(*60)# 流式运行实时看到每个节点的执行状态final_messagesNoneasyncforeventinworkflow.run_stream(为一家三口夫妻8岁孩子制定一份周末2天1夜的家庭露营完整攻略):# 打印每个智能体开始工作的提示ifevent.typeexecutor_invoked:print(f\n▶ 开始工作{event.executor_id})# 保存最终完整对话结果ifevent.typeworkflow_output:final_messagesevent.data# 提取最终编辑输出的攻略内容final_resultfinal_messages[-1].textprint(\n*60)print(✅ 最终生成的露营攻略)print(*60)print(final_result)# 运行异步主函数asyncio.run(main())运行效果说明执行后控制台会按顺序展示先启动「行程规划师」输出完整行程方案自动把行程结果传给「露营美食策划师」输出对应食谱自动把前两份结果传给「攻略总策划编辑」整合输出完整攻略整个数据传递完全由工作流自动完成和CrewAI的Sequential模式逻辑完全一致。五、Magentic 动态调度模式智能项目经理如果你不想把流程定死想让AI自己判断该谁干活可以用MAF原生的Magentic 模式——相当于配了一个智能项目经理根据任务进度动态派活。fromagent_framework.orchestrationsimportMagenticBuilder# 定义项目经理调度员managerChatAgent(chat_clientchat_client,name项目经理,instructions你是项目负责人负责协调行程规划师、美食策划师和编辑三人完成露营攻略。 执行规则 1. 先让行程规划师输出行程方案 2. 再让美食策划师基于行程设计食谱 3. 最后让编辑整合出最终攻略 确认全部完成后宣布任务结束。)# 构建Magentic动态工作流workflowMagenticBuilder()\.with_standard_manager(manager,max_round_count10)\.add_participant(planner)\.add_participant(food_specialist)\.add_participant(editor)\.build()# 运行方式和上面完全一样# async for event in workflow.run_stream(做一份家庭露营攻略): ...这种模式更接近AutoGen的群聊协作但比AutoGen更可控——项目经理会严格按规则调度不会出现无限扯皮的情况。六、MAF vs CrewAI vs AutoGen 核心对比维度CrewAIAutoGenMicrosoft Agent Framework定位轻量多智能体编排工具研究型多智能体框架企业级统一智能体平台核心驱动任务驱动对话驱动工作流智能体双驱动流程确定性高预设任务链低自由对话可自由切换确定/灵活生产级特性基础弱强状态持久化、可观测、治理生态绑定中立微软生态深度绑定Azure AI全家桶学习曲线简单中等中等偏难七、MAF 核心特点官方正统继任AutoGen和Semantic Kernel合并升级而来微软未来唯一主推的智能体框架编排双模式既支持确定性的图状工作流也支持动态的智能调度按需选择企业级能力原生支持状态检查点、类型安全、链路追踪、权限治理适合生产部署全协议兼容原生支持MCP模型上下文协议、A2A智能体间互通、OpenAPI等标准双语言支持同时提供Python和.NET两套SDK适配不同技术栈