在 Agno 框架中Agent智能体是基础的工作单元而 Team团队是管理多个 Agent 协作的编排层。可以这样理解Agent 像一个专注的“专业员工”而 Team 则像一个由“团队领导”带领的“项目组”特性维度Agent (智能体)Team (团队)核心定义一个独立的、能够执行特定任务的 AI 程序一组 Agent或子 Team的集合通过协作来解决更复杂的任务主要职责专注于一个特定领域利用工具和推理能力完成分配的任务将复杂问题分解为子任务并分发给最合适的成员Agent去执行复杂度相对简单是构建块更复杂引入了协调、任务分解和结果合成的逻辑决策时机在执行任务时进行推理和决策在运行时Runtime动态决定如何解决问题以及由哪个成员来执行内部结构包含模型、指令、工具、记忆等包含一个 “领导Leader”和多个 “成员Members”。成员可以是 Agent或其他 Team协作模式独立工作不涉及多智能体协作。通过预定义的执行模式如 Route, Coordinate 等来协调成员工作适用场景任务单一、领域明确如撰写一份报告、查询数据库、执行一个简单的工具调用任务复杂、多领域需要不同专长的智能体分工合作如市场调研、内容创作、复杂规划Agent智能体专注的执行者Agent是 Agno 中最基础的构建块。你可以把它想象成一个能力单一的专家。核心能力一个Agent被赋予特定的角色Role和指令Instructions并配备相应的工具Tools来完成任务。它拥有自己的记忆Memory和知识库Knowledge可以在多步推理中保持上下文。何时使用当你的任务可以被清晰地定义并且不需要多个 AI 角色协同完成时一个Agent就足够了。从单个Agent开始构建是很好的实践。Team团队协作的指挥官Team是 Agno 实现多智能体协作的核心抽象。它将多个Agent组织起来像一个团队一样工作。核心机制一个Team的核心是一个“领导Leader”也是一个 AI 模型和一组“成员Members”。领导负责理解用户的复杂请求将其分解成子任务并动态地分派给最合适的成员去执行最后可能还会整合所有成员的结果形成最终答案。执行模式ModesAgno 提供了多种内置的执行模式让你能精确控制团队如何协作Route (路由模式)领导充当“路由器”将请求直接发给最匹配的专家成员成员直接回复用户。Coordinate (协调模式)领导将任务分解并委派给多个成员然后合成各成员的输出形成统一、完整的最终回复。Broadcast (广播模式)将相同的输入同时发送给所有成员然后由领导收集并整合所有人的回复。Tasks (任务模式)将工作分解为多个离散、可追踪的任务单元并分配给专门的Agent去执行。示例一多语言路由团队 (Route 模式)工作原理团队领导充当“智能路由器”。它分析用户的请求然后选择最合适的一个专家成员来独立处理并将该成员的回复直接返回给用户不进行任何修改或整合。一句话总结一问一答专家直出。适用场景任务有非常明确的“领域”归属只需要一个专家就能完美解决。典型例子多语言客服、领域专家路由如根据问题类型路由到数学、历史或编程助手。优点简单、快速。没有额外的整合开销响应延迟最低。缺点无法处理需要多个专家协作的复杂问题。领导不参与内容生成只是“传话筒”。from agno.agent import Agent from dotenv import load_dotenv from agno.models.deepseek import DeepSeek load_dotenv() deepseek DeepSeek(iddeepseek-chat) from agno.team.team import Team # 1. 定义语言专家智能体 english_agent Agent( name英文助手, role你只能用英文回答, modeldeepseek, instructions[你只能用英文回复], ) chinese_agent Agent( name中文助手, role你只能用中文回答, modeldeepseek, instructions[你只能用中文回复], ) # 2. 创建路由团队 multi_language_team Team( name多语言团队, moderoute, # 路由模式 modeldeepseek, # 领导模型 members[english_agent, chinese_agent], instructions[ 你是一个语言路由器负责将问题导向合适的语言助手。, 如果用户用英文提问路由给英文助手用中文提问路由给中文助手。 ], show_members_responsesTrue, ) # 3. 运行 multi_language_team.print_response(你好吗, streamTrue)示例二研究报告团队 (Coordinate 模式)工作原理这是默认模式。团队领导像一个“项目经理”它分析复杂任务后动态决定需要咨询哪些成员、分配给每个成员什么具体任务。最后领导会收集所有成员的回复并将其整合、提炼成一份统一的最终答案。一句话总结分解任务整合汇报。适用场景复杂的、开放式的问题需要不同领域的专家共同参与。典型例子生成研究报告研究员查资料 - 写手润色 - 领导整合、投资决策咨询市场、财务、技术分析师后给出综合建议。优点强大且灵活。能处理最复杂的多步骤任务充分发挥每个专家的特长。缺点相对较慢因为涉及多轮交互和最终的内容整合。对领导模型的能力要求较高。from agno.agent import Agent from agno.team.team import Team from agno.team.mode import TeamMode from agno.models.openai import OpenAIChat from agno.models.deepseek import DeepSeek from dotenv import load_dotenv load_dotenv() # 定义大模型 deepseek DeepSeek(iddeepseek-chat) # 1. 定义专家智能体 researcher Agent( name研究员, modeldeepseek, instructions你是一名研究专家。查找并总结事实信息。, # 研究员 ) analyst Agent( name分析师, modeldeepseek, instructions你是一名数据分析师。解释研究发现并提取关键洞察。, # 分析师 ) writer Agent( name写手, modeldeepseek, instructions你是一名技术写作专家。将洞察转化为清晰、简洁的报告。, # 写手 ) # 2. 创建团队模式设为 coordinate team Team( name研究团队, modeTeamMode.coordinate, # 关键协调模式 members[researcher, analyst, writer], modeldeepseek, # 作为团队领导 instructions协调专家智能体生成一份经过充分研究、文笔清晰的报告。, # 领导者指令 ) # 3. 运行团队 team.print_response( 给我一份关于量子计算现状的报告。, streamTrue, show_member_responsesTrue )示例三图像生成团队 (串联协作)这个例子展示了Team如何实现流水线式协作一个Agent的输出成为另一个Agent的输入。from agno.agent import Agent from agno.team import Team from agno.models.dashscope import DashScope from dotenv import load_dotenv load_dotenv() dash_scope DashScope(idqwen-plus, base_urlhttps://dashscope.aliyuncs.com/compatible-mode/v1 ) # 1. 定义专家智能体 prompt_engineer Agent( name提示词工程师, role优化并增强图像生成提示词, modeldash_scope, instructions[优化用户提示词以获得更好的图像生成效果], ) image_generator Agent( name图像生成器, role使用图像生成工具生成图像, modeldash_scope, instructions[根据优化后的提示词生成高质量图像], ) # 2. 创建团队 image_team Team( name图像生成团队, modeldash_scope, members[prompt_engineer, image_generator], instructions[ 根据用户的提示生成高质量图像。, 提示词工程师首先优化并增强用户的提示词。, 图像生成器使用增强后的提示词生成图像。, ], markdownTrue, ) # 3. 运行团队 for chunk in image_team.run(生成一张黄色暹罗猫的图像, streamTrue): print(chunk)示例四内容流水线团队 (Tasks 模式)工作原理这是coordinate模式的一种更结构化、更自主的版本。领导会将一个宏大目标分解成一系列有依赖关系的、离散的子任务Tasks 然后像一个项目经理一样按顺序或并行地将这些任务派发给最合适的成员执行并追踪每个任务的完成情况直到所有任务完成。一句话总结设定目标自动拆解执行。适用场景目标清晰但实现步骤复杂、繁多且步骤间有明确逻辑顺序的项目。典型例子内容创作流水线研究员搜集资料 - 写手创作 - 评论家审阅 - 领导汇总、项目启动计划工程师评估 - 架构师设计 - 写手总结。优点高度自动化适合处理有清晰步骤的“项目式”任务执行过程可追踪。缺点需要明确定义目标和步骤灵活性不如coordinate模式。from agno.agent import Agent from agno.team.team import Team from agno.team.mode import TeamMode from agno.models.openai import OpenAIResponses from agno.models.deepseek import DeepSeek from dotenv import load_dotenv load_dotenv() deepseek DeepSeek(iddeepseek-chat) # 1. 定义专家智能体 planner Agent( name规划师, role为内容创建大纲、计划和结构, # 规划师 modeldeepseek, instructions[你是一名规划专家。, 创建清晰、逻辑清晰的大纲。], ) writer Agent( name写手, role根据大纲或指令撰写精炼内容, # 写手 modeldeepseek, instructions[你是一位技艺娴熟的写手。, 根据提供的计划撰写清晰、引人入胜的内容。], ) editor Agent( name编辑, role审查并改进内容以提升清晰度和质量, # 编辑 modeldeepseek, instructions[你是一位编辑。, 审查内容的清晰度、语法和逻辑流畅性。], ) # 2. 创建团队模式设为 tasks team Team( name内容流水线团队, modeTeamMode.tasks, # 关键任务模式 modeldeepseek, members[planner, writer, editor], instructions[ 你是一名内容流水线团队负责人。, 对于每个请求, 1. 为规划师创建一个任务来规划内容大纲。, # 任务1 2. 为写手创建一个任务根据大纲起草内容。, # 任务2 3. 为编辑创建一个任务对草稿进行润色。, # 任务3 ], show_members_responsesTrue, max_iterations10, ) # 3. 运行团队 team.print_response( 为技术读者撰写一篇关于微服务与单体架构对比的博客文章。 )示例五讨论团队 (Collaborate 模式)工作原理领导会将完全相同的用户请求同时广播给所有成员。所有成员会从各自的角度给出回复最后领导会收集所有意见整合成一份最终的、统一的答案。一句话总结广纳意见综合决策。适用场景需要多角度、全方位评估以降低偏见、做出更稳健决策的“高 stakes”场景。典型例子投资委员会决策所有分析师独立评估同一支股票领导综合正反两方面意见、头脑风暴。优点视角全面能有效避免单一专家的偏见决策质量高。缺点成本最高、速度最慢因为每次都要调动所有成员且领导需要处理大量信息进行整合。from agno.agent import Agent from agno.team.team import Team from agno.models.deepseek import DeepSeek from dotenv import load_dotenv load_dotenv() deepseek DeepSeek(iddeepseek-chat) # 1. 定义多个负责不同信息源的智能体研究员 reddit_researcher Agent( nameReddit研究员, role搜索并总结Reddit上的相关讨论和观点, modeldeepseek, instructions[你是一名专门从Reddit收集信息的专家。请搜索相关subreddit总结主要观点和流行意见。] ) hackernews_researcher Agent( nameHackerNews研究员, role搜索并总结HackerNews上的相关讨论和观点, modeldeepseek, instructions[你是一名专门从HackerNews收集信息的专家。请搜索相关帖子总结技术社区的反馈和热门讨论。] ) academic_paper_researcher Agent( name学术论文研究员, role搜索并总结相关学术论文的研究成果, modeldeepseek, instructions[你是一名专门搜索学术论文的专家。请查找相关研究总结关键发现和学术共识。] ) # 2. 创建团队模式设为 collaborate agent_team Team( name讨论团队, modecollaborate, # 关键协作/讨论模式 modeldeepseek, members[reddit_researcher, hackernews_researcher, academic_paper_researcher], instructions[ 你是一名讨论主持人。, 当你认为团队已达成共识时必须停止讨论。, # 领导决定何时停止 ], show_members_responsesTrue, ) # 3. 运行团队示例 if __name__ __main__: agent_team.print_response(讨论一下人工智能在医疗领域的最新进展。)总结与选择指南四种模式的核心区别模式 (Mode)核心流程成员选择回复处理最佳场景Route领导 - 选定单个专家 - 专家直接回复动态选择一个最适合的直接返回不整合领域明确、单一专家即可解决的问题如语言路由Coordinate领导 - 分解任务 - 动态委派给多个专家 -领导整合动态选择一个或多个最适合的领导整合所有回复复杂、开放式问题需要多专家协作如写研究报告Tasks领导 -将目标拆解为任务列表- 按序/并行执行 -领导汇总按任务需求分配给最适合的领导汇总所有任务结果目标清晰、步骤复杂的项目式任务如内容流水线Collaborate领导 -将相同问题发给所有成员- 收集所有回复 -领导整合所有成员领导整合所有回复需要多角度评估、降低偏见的高风险决策如投资审议总结一下如果问题简单直接选Route。如果问题复杂需要动态协调多位专家选Coordinate(默认)。如果任务是一个有清晰步骤的项目选Tasks。如果需要全面、无偏见的决策选Collaborate。提示除了这四种模式Agno 还提供了一种Broadcast (广播模式)。它的工作方式与collaborate非常相似都是将相同任务发给所有成员并整合结果。你可以将collaborate视为broadcast的一个更侧重于“讨论”的特定实现。根据你的具体需求选择最合适的模式可以有效地构建强大的多智能体应用。