SuperAPI AI 工具集

autogen

智能体与模型

查看项目

更新于 10-16 00:03

技能介绍

用途:AutoGen 是微软研究院的对话式多智能体 AI 框架。与 LangGraph 的显式图拓扑、CrewAI 的基于角色的团队不同,它以智能体之间的对话作为编排原语,通过结构化聊天通信,内置群聊路由、人工输入和代码执行等模式。本技能针对 Python 3.10+ 上的 AutoGen AgentChat 0.7.5 API。

主要能力:AssistantAgent 负责对话助手;UserProxyAgent 代表人类,通过 input_func 获取回复;CodeExecutorAgent 使用 CodeExecutor 执行代码块,二者相互独立,均不接受旧版 human_input_mode 选项。GroupChat 在智能体间路由,RoundRobinGroupChat 按固定顺序轮转,SelectorGroupChat 由 LLM 选择下一位发言者。嵌套对话可让智能体在专家智能体之间发起子对话并返回结果。工具集成支持 register_function()、@tool 与 McpWorkbench。CancellationToken 用于停止失控的智能体。

使用方式:从 autogen_agentchat.agents 导入 AssistantAgent,从 autogen_agentchat.ui 导入 Console,从 autogen_ext.models.openai 导入 OpenAIChatCompletionClient,创建模型客户端后构造 AssistantAgent 并传入 name、system_message、model_client。在本技能目录下执行 python -m pip install -r requirements.txt 安装模板所用的确切包版本。代码执行示例使用 Docker,需要可用的 Docker 守护进程。

适用场景:需要人工参与的对话、多智能体协作、代码执行、复杂多步任务(用嵌套对话拆分子任务)。

限制:简单单智能体任务属于过度设计,应直接调用 API;需要细粒度图控制用 LangGraph;需要固定流程的基于角色团队用 CrewAI;需要链式组合用 LangChain LCEL。本地代码执行(LocalCommandLineCodeExecutor)会在本机运行 LLM 生成的代码,生产环境应使用 Docker。长任务应始终传入 CancellationToken。常见问题包括无终止条件导致智能体无限循环(可加 MaxMessageTermination)、Docker 未运行导致代码执行失败、未传取消令牌导致嵌套对话不返回、v0.2 代码因 v0.4 API 变更而失效等。