跳到主要内容
Vantaige
Agno screenshot
Agno logo

Agno

免费

Agno 是一个用于构建多智能体 AI 系统的开源 Python 框架,于 2025 年 1 月由 Phidata 更名而来。它与模型无关,采用 Apache 2.0 许可,内置记忆、知识库以及生产级 AgentOS 运行时,可将智能体作为服务进行部署。

使用场景:代码与开发
功能:Open Source

Agno 是一个用于构建、运行和管理多智能体 AI 系统的开源 Python 框架。它由 Ashpreet Bedi 以 Phidata 的名称创建,后于 2025 年 1 月 29 日更名为 Agno。此次更名将该项目的定位从通用的数据工具库转变为专用的智能体运行时,新名称源自希腊语中的“纯粹”一词,反映了该框架的设计原则:没有图(graphs),没有链(chains),没有复杂的抽象,只有纯粹的 Python。截至 2026 年 4 月,该项目在 GitHub 上已获得近 40,000 颗星,并且每周发布多个版本更新。它采用 Apache 2.0 许可。

该框架提供两个主要层级。开源 Python 库允许开发者使用极简 API 定义具备记忆、知识库、工具调用、护栏(guardrails)和多模态输入的智能体:一个基础智能体大约只需 5 行 Python 代码。AgentOS 层是一个无状态的 FastAPI 后端,提供 50 多个端点、SSE 和 WebSocket 流式传输、基于 JWT 的角色访问控制、多租户会话隔离以及 OpenTelemetry 追踪。AgentOS 可部署在 Docker、Railway、AWS 或 GCP 上,并提供 Slack、Telegram、Discord 和 WhatsApp 的接口。支持的模型涵盖所有主流提供商:OpenAI、Anthropic、Gemini、Mistral、Groq、通过 Ollama 运行的本地模型,以及任何兼容 OpenAI 的端点。

Agno 在 2026 年 4 月的实际功能

在核心层面,Agno 运行着一个推理循环:智能体接收任务,决定采取何种行动(调用工具、查询知识库、委派给子智能体),执行行动,观察结果,并不断重复,直到任务完成或达到步骤限制。开发者使用带有类型化工具函数的纯 Python 类来定义智能体。Agno 会自动处理提示词工程、流式传输、工具分发和会话持久化。与 LangGraph 不同,在运行第一个智能体之前,无需预先定义状态模式或绘制有向图。

智能体团队(Agent teams)是一项原生核心功能。主导智能体可以将任务委派给专业的子智能体,每个子智能体都有自己的模型、工具和知识源。团队协作采用异步流式传输,因此子智能体可以并发运行,并将结果流式传输回团队负责人。2025 年 1 月的更名公告及随后的路线图引入了人机协同(HITL)审批工作流,该功能在 2.5.x 发布系列中成为生产级特性,直接响应了社区的需求。HITL 系统允许人类审核员在执行前批准智能体的操作,这对于任何具有外部系统(如 Jira、Salesforce 或电子邮件)写入权限的智能体来说都至关重要。

知识库系统是 Agno 最显著的优势之一。该框架包含了对 PDF 文档、数据库、API 和向量存储(PgVector、Qdrant、Weaviate、Milvus、Pinecone)的原生一流集成,并内置了分块、嵌入和检索功能。这使得 Agno 成为智能体 RAG 系统的天然选择:法律文档搜索、财务报告分析、医学知识检索或学术研究聚合。与将检索作为附加工具的框架不同,Agno 将知识库视为智能体架构的原生组成部分。开发者通常将 Agno 与 LlamaIndex 结合使用以构建更高级的文档处理管道,或与 LangChain 工具结合使用,Agno 对后者提供原生支持。

2.6.0 版本(2025 年 4 月 23 日)引入了多框架支持,允许开发者将使用 LangGraph 或 DSPy 构建的现有智能体封装在 Agno 的 AgentOS 运行时中。该版本还添加了 Workspace 工具包,赋予智能体本地机器读写和 shell 访问权限(带有人机协同确认网关),以及用于大规模动态创建智能体的“Factories” API。到 v2.6.4(2026 年 4 月 28 日),该平台已集成 WikiContextProvider、Salesforce CRM 工具、Docling 文档处理以及备用模型支持(当主要提供商返回错误时,智能体会自动切换到备用模型)。

“我喜欢 Agno。它非常简单易用,即使我开发知识有限,也能构建出强大的智能体。我成功构建了一个 RSA 生成器和一个 Google Ads 智能体。” - Alfred Simon,Product Hunt,2025 年 4 月

Agno 与 CrewAI 和 LangGraph 的定位对比

最常与 Agno 进行比较的三个框架是 CrewAI、LangGraph,以及在较小程度上被提及的 smolagents 和 Mastra。它们各自代表了多智能体系统不同的架构理念。

CrewAI 使用基于角色的抽象。智能体被分配了角色、目标和背景故事,并在一个“团队(crew)”中按顺序或层级执行任务。这种隐喻能让原型快速运行;CrewAI 一直被认为是实现可用业务工作流阻力最小的途径。它的记忆模型分为三层:在单次运行中所有智能体共享的短期记忆、存储在本地 SQLite 数据库中的长期记忆,以及跨会话跟踪特定主题的实体记忆。其代价是,随着需求的增长,CrewAI 强主见的(opinionated)设计会变得具有局限性;团队通常报告在投入生产 6-12 个月后会触及这个天花板,需要重写为更灵活的框架。Agno 通过保持其原语(primitives)在更底层来避免这个天花板,但这意味着对于简单的用例需要更多的手动配置。从星标数来看,CrewAI 以约 44,300 颗星领先于 Agno 的 40,000 颗星,但 CrewAI 每月 520 万次的 PyPI 下载量与 Agno 明显较小的下载基数相比,表明 CrewAI 仍拥有更多活跃的生产部署。

LangGraph 在原始下载量方面是生产使用的领导者,每月 PyPI 下载量约为 3450 万次。其有向图架构迫使开发者将每个状态转换定义为命名边,并具有明确的状态模式和类型化持久性。这种繁琐的仪式感在复杂工作流中会得到回报:分支逻辑、重试处理、运行中检查点以及人机协同审批网关都是其原生核心功能。LangGraph 的缺点是学习曲线较陡,批评者指出其文档碎片化,且继承了 LangChain 生态系统的历史遗留复杂性。一个基础的 LangGraph 工作流需要 60 多行代码,而 Agno 只需要 5 行。在实例化速度方面,Agno 的基准测试显示它比 LangGraph 快 529 倍,这在每秒生成数百个短生命周期智能体时非常重要。LangGraph 在每个智能体实例的内存占用上也明显更重。对于需要对长时间运行的有状态工作流进行精确图级控制的团队来说,LangGraph 仍然是更安全的生产选择。而对于构建知识密集型智能体、需要快速原型设计且不需要显式状态机的团队来说,Agno 更符合人体工程学(更易用)。

相对于 smolagents(Hugging Face 的极简代码优先框架),Agno 对生产运行时层有更强的主见,但对智能体行动模型的主见较弱。smolagents 生成 Python 代码作为行动;Agno 使用带有 JSON 分发的标准工具调用。smolagents 将其整个核心保持在大约 1,000 行代码,并刻意不对部署做任何预设,而 Agno 则提供完整的生产技术栈。相对于 AutoGen(Microsoft 的基于对话的多智能体框架),Agno 的会话记忆模型更具结构化,但 AutoGen 拥有更大的研究社区,并在学术基准测试中拥有更长的记录。AutoGen 的消息传递模型(智能体轮流在对话线程中发言)与 Agno 的工具分发模型有着根本的不同;两者解决的是重叠但截然不同的问题。

“Agno 轻量且快速。当你只需要一个聪明的智能体时,它不会强迫你使用沉重的图架构。” - 2025 年框架比较研究中引用的开发者概述

智能体循环的实际运作方式

在实践中,使用 Agno 进行构建首先需要安装包,并将工具定义为类型化的 Python 函数。框架会从类型注解中推断出工具模式。添加记忆意味着将记忆存储(SQLite、PostgreSQL 或 MongoDB)传递给 Agent 构造函数。添加知识库意味着将智能体指向一个向量存储并调用 agent.knowledge.load()。app.agno.com 的监控仪表板会实时显示每次运行、每次工具调用、每个 token 计数以及每个模型响应。对于本地开发,内置的 playground 在 localhost 运行一个 Next.js 界面,让你能够与任何智能体聊天并检查其推理步骤。

监控层面的重要性远超营销文案所暗示的程度。每次智能体运行都会记录完整的工具调用追踪、每步延迟、每次模型调用的 token 计数,以及团队中智能体之间传递的确切输入和输出。当多智能体管道出现问题时(在开发过程中必然会发生),控制平面会准确显示哪个智能体做出了错误的决定,以及它当时所处的上下文。这与在 LangChain 工作流中通过阅读 print 语句进行调试有着本质的区别。为财务、法律或运营部门构建内部智能体的团队报告称,单凭这一可观测性层,就足以证明采用 Agno 比自己开发编排系统更具合理性。

HITL(人机协同)工作流值得特别提及,因为它是发布前最常被要求的功能。当智能体准备调用破坏性工具(发送电子邮件、创建 Jira 工单、修改数据库记录)时,运行会暂停,并通过 AgentOS API 弹出审批请求。人类进行批准或拒绝。智能体随后恢复运行或干净地终止。这种模式现在已内置于单个智能体和智能体团队中,尽管社区讨论表明,如果架构设计不当,多个团队成员同时暂停等待审批可能会导致死锁。

v2.5.14(2025 年 4 月)中添加的备用模型支持解决了一个真实的生产痛点:如果你的主要模型提供商(例如 OpenAI)在运行中途宕机,智能体会自动切换到指定的备用模型。正是这种运维特性,将专为生产设计的框架与专为演示设计的框架区分开来。

Agno 适合哪些人群

Agno 适合构建知识密集型智能体的 Python 开发者,这些智能体的主要工作是对大型结构化文档集进行推理:法律研究、财务分析、医学文档检索、企业知识管理以及深度集成 CRM 的客户支持。其与模型无关的架构,使得那些无法承受 OpenAI 供应商锁定,或者出于隐私或成本原因希望在本地模型上运行推理的团队,能够做出明智的选择。

它非常适合希望快速构建原型,然后在具有真正可观测性的自有基础设施上进行部署的工程团队。20 行代码部署 AgentOS 的说法是真实的:你无需自己编写基础设施,即可获得一个包含 50 多个端点、会话管理、身份验证和控制平面的 FastAPI 后端。

对于需要对具有分支逻辑、重试语义和显式检查点的复杂状态机进行图级控制的团队来说,Agno 并不是合适的工具。LangGraph 能更好地处理这些需求。它也不是为通过可视化界面构建智能体的非技术用户设计的;尽管 2025 年 1 月的公告中提到了“Agent Studio”,但该框架仍然是代码优先的。对依赖项变动敏感的团队应注意,其发布节奏非常激进,每周有多个版本发布,并且在重排器(reranker)导入、a2a-sdk 兼容性和记忆 API 升级中出现过破坏性变更。

对于与 Agno 一起探索该领域的开发者来说,LangChain 仍然是拥有最广泛工具生态系统的选择,而 LlamaIndex 提供了更深度的文档摄取选项,能与 Agno 的知识库层完美配合。

用户评价

暂无评价,快来分享你的第一条体验吧!

登录 后即可撰写评价。

收录于精选合集

包含 Agno 的精选合集。

相关文章

与 Agno 相关的指南和文章。