2026年7月16日 周四晚上19:30,报名腾讯会议了解“如何构建自进化的动态知识库(Brain)”(限30人)
免费POC, 零成本试错
FDE知识库

FDE知识库

学习大模型的前沿技术与行业落地应用


收藏

如何使用 Agno 构建一个基础的 AI 智能体?

发布日期:2025-06-21 13:45:57 浏览次数: 2894
作者:三人行AI

微信搜一搜,关注“三人行AI”

推荐语

Agno框架助你快速构建多级智能体系统,从基础工具到复杂协作一网打尽。

核心内容:
1. Agno框架的五大智能体等级详解
2. 金融推理智能体的实战代码示例
3. Agno在性能、多模态和多智能体方面的核心优势

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家

什么是 Agno?

Agno[1] 是一个用于构建具备记忆、知识与推理能力的多智能体系统(Multi-Agent Systems)的全栈框架。

你可以使用 Agno 构建具备以下五个等级的智能体系统:

Level 1:拥有工具和指令的智能体Level 2:具备知识和存储能力的智能体Level 3:具备记忆和推理能力的智能体Level 4:能够协作与推理的智能体团队Level 5:具有状态管理与确定性的智能体流程

示例:Level 1 的金融推理智能体

以下是一个使用 YFinance API 回答问题的 Level 1 推理智能体示例代码:

from agno.agent importAgentfrom agno.models.anthropic importClaudefrom agno.tools.reasoning importReasoningToolsfrom agno.tools.yfinance importYFinanceTools
reasoning_agent =Agent(    model=Claude(id="claude-sonnet-4-20250514"),    tools=[ReasoningTools(add_instructions=True),YFinanceTools(            stock_price=True,            analyst_recommendations=True,            company_info=True,            company_news=True),],    instructions="使用表格展示数据。",    markdown=True,)

📎 示例视频:reasoning_finance_agent.mp4[2]

快速开始

如果你是 Agno 的新手,建议先阅读官方文档,学习如何构建你的第一个智能体[3](Agent),并在 Playground[4] 中与其对话,还可以在 agno.com[5] 上实时监控。

完成入门后,前往示例库[6],开始使用 Agno 构建实际应用程序。

为什么选择 Agno?

Agno 可以帮助你构建一流、高性能的智能体系统,节省大量的调研和样板代码时间。以下是 Agno 的核心优势:

🚀 模型无关:Agno 提供统一的接口,支持 23+ 个模型提供商,无需被某一个平台锁定。⚡ 高性能:智能体实例化时间仅约 3 微秒,平均内存占用约为 6.5 KiB🧠 推理为核心能力:推理能力是构建复杂自主智能体的关键,能显著提高系统可靠性。Agno 提供三种推理方案:推理模型推理工具自定义思维链方法🎥 原生多模态支持:Agno 智能体原生支持多模态输入输出,包括文本、图像、音频和视频。🧑‍🤝‍🧑 多智能体架构:提供业界领先的多智能体架构(Agent Teams),具备推理、记忆和共享上下文能力。🔍 内建 Agentic 搜索:支持 20+ 种向量数据库,智能体可在运行时搜索信息。Agno 提供先进的 Agentic RAG,异步执行,性能优异。🧠 内建记忆与会话存储:智能体自带存储与记忆驱动器,实现长期记忆与会话追踪。📦 结构化输出:智能体可返回完全类型化的响应,支持模型原生结构化输出或 json_mode 格式。🌐 预构建 FastAPI 路由:创建智能体后,使用内置的 FastAPI 路由即可将其上线,从开发到部署仅需几分钟。📊 实时监控:你可以在 agno.com[7] 上实时监控智能体的会话与性能表现。

安装方式

pip install -U agno

示例:推理智能体

让我们来构建一个推理智能体,以此感受 Agno 的强大能力。

📄 第一步:保存代码: reasoning_agent.py

from agno.agent importAgentfrom agno.models.anthropic importClaudefrom agno.tools.reasoning importReasoningToolsfrom agno.tools.yfinance importYFinanceTools
agent =Agent(    model=Claude(id="claude-sonnet-4-20250514"),    tools=[ReasoningTools(add_instructions=True),YFinanceTools(            stock_price=True,            analyst_recommendations=True,            company_info=True,            company_news=True),],    instructions=["使用表格展示数据","只输出报告内容,不要输出其他文本",],    markdown=True,)
agent.print_response("请撰写一份关于 NVDA(英伟达)的报告",    stream=True,    show_full_reasoning=True,    stream_intermediate_steps=True,)

第二步:创建虚拟环境,安装依赖,将 sk-ant-api03-xxxx 替换为你自己的 Anthropic API 密钥,并运行智能体。

uv venv --python 3.12source .venv/bin/activate
uv pip install agno anthropic yfinance
export ANTHROPIC_API_KEY=sk-ant-api03-xxxx
python reasoning_agent.py

执行以上代码后,你将看到智能体如何进行推理,使用 ReasoningTools 与 YFinanceTools 来收集信息、生成报告。这一过程将在控制台中以流式方式展示中间推理步骤。

📎 示例输出视频:reasoning_finance_agent.mp4[8]

示例:多智能体团队

在 Agno 中,Agent 是最小的工作单元。每个 Agent 最适合承担专一任务,工具数量较少时效率最佳。

当你需要使用大量工具,或者处理多个领域的知识时,推荐使用 Agent 团队(Team) 将任务负载进行分工协作。

📄 示例代码:agent_team.py

from agno.agent importAgentfrom agno.models.openai importOpenAIChatfrom agno.tools.duckduckgo importDuckDuckGoToolsfrom agno.tools.yfinance importYFinanceToolsfrom agno.team importTeam
# 网络搜索智能体web_agent =Agent(    name="Web Agent",    role="搜索互联网上的信息",    model=OpenAIChat(id="gpt-4o"),    tools=[DuckDuckGoTools()],    instructions="始终附上信息来源",    show_tool_calls=True,    markdown=True,)
# 财经数据智能体finance_agent =Agent(    name="Finance Agent",    role="获取金融数据",    model=OpenAIChat(id="gpt-4o"),    tools=[YFinanceTools(        stock_price=True,        analyst_recommendations=True,        company_info=True)],    instructions="使用表格展示数据",    show_tool_calls=True,    markdown=True,)
# 多智能体团队agent_team =Team(    mode="coordinate",# 协作模式    members=[web_agent, finance_agent],    model=OpenAIChat(id="gpt-4o"),    success_criteria="生成一份内容全面、结构清晰、数据驱动的 AI 半导体公司财经新闻报告",    instructions=["始终附上信息来源","使用表格展示数据"],    show_tool_calls=True,    markdown=True,)
# 执行任务agent_team.print_response("请分析 AI 半导体公司的市场前景和财务表现",    stream=True)

⚙️ 安装依赖,运行示例

pip install duckduckgo-search yfinance
python agent_team.py

📘 查看完整示例: 请参考 Agno 官方文档中的 Cookbook 章节[9]

性能表现

在 Agno,我们对性能极度执着。为什么?因为即使是最简单的 AI 工作流,也可能生成成千上万个智能体(Agent)。当你将系统规模扩展到一定数量的用户时,性能立刻成为瓶颈

Agno 的设计目标就是构建高性能的智能体系统(Agentic Systems)

📦 智能体实例化时间:平均约 3 微秒💾 内存占用:平均约 6.5 KiB

✅ 测试环境:Apple M4 芯片的 MacBook Pro

虽然智能体的运行时间最终取决于模型的推理性能,但我们仍要尽可能优化执行速度、减少内存使用并实现工具调用的并行化。虽然这些数据看起来微不足道,但在实际运行中,即使是小规模使用也会快速积累成本

🧪 实例化时间测试

我们将测量一个带有 1 个工具的智能体的启动时间。我们运行 1000 次评估,以获得基准测量值。

⚠️ 建议你在自己的机器上运行此测试,不要直接参考以下结果。

# 使用官方脚本设置虚拟环境./scripts/perf_setup.shsource .venvs/perfenv/bin/activate
# 或者手动安装依赖# pip install openai agno langgraph langchain_openai
# Agnopython evals/performance/instantiation_with_tool.py
# LangGraphpython evals/performance/other/langgraph_instantiation.py

此评估在 Apple M4 MacBook Pro 上运行,并作为 GitHub Action 集成在官方仓库中。

右侧运行的是 LangGraph,我们提前启动它以让它领先

左侧是 Agno,但你会注意到:Agno 在 LangGraph 完成一半运行时间测量前就已经完成整个任务;更关键的是,LangGraph 甚至还没有开始测量内存使用,而 Agno 早已完成全部流程。

🎬 演示视频:agno_vs_langgraph_perf.mp4[10]

内存使用情况

为了评估内存使用情况,我们使用了 Python 的 tracemalloc 库。

首先运行一个空函数,计算基准内存占用;然后运行智能体(Agent)1000 次;最后计算两者的差值。

这种方法可以(相对)独立地测量单个 Agent 的内存占用

⚠️ 建议你在自己的机器上亲自运行该测试,并深入阅读相关代码,了解实现机制。如果你发现了任何问题,欢迎反馈给我们!

🧾 总结

Agno 智能体是专为高性能而设计的。虽然我们与其他框架进行了部分性能对比,但我们始终认为:

⚠️ 准确性和可靠性,永远比纯粹的速度更重要。

由于每个框架的架构差异较大,我们无法像优化 Agno 那样优化其他框架。因此,未来我们将只与自身历史版本进行性能对比。

🖱️ 在 Cursor 中使用 Agno 文档

使用 Cursor[11] 编写 Agno 智能体时,加载官方文档能显著提高开发效率。

1.打开 Cursor 设置(Settings)或偏好设置(Preferences);2.找到“管理文档源”(Manage Documentation Sources);3.添加以下 URL:https://docs.agno.com4.保存设置。

完成后,Cursor 就可以直接访问 Agno 的文档内容,助你更高效地开发智能体。

📚 文档资源与社区支持

官方文档docs.agno.com[12]示例 CookbookCookbook[13]社区论坛community.agno.com[14]官方 Discord加入 Discord[15]

🤝 贡献指南

我们欢迎社区开发者的参与!
请阅读 贡献指南(Contributing Guide)[16] 来开始参与贡献。

📡 遥测信息

Agno 会记录每个智能体使用了哪个模型,以便我们优先为最受欢迎的模型提供支持。

如果你希望禁用此功能,请在环境变量中设置:

AGNO_TELEMETRY=false

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询

扫码登录
登录即表示您同意《53AI网站服务协议》
服务协议

欢迎您使用【53AI 官方网站】(以下简称“本网站”或“我们”)。本《会员服务协议》(以下简称“本协议”)是您(以下简称“会员”或“用户”)与【深圳市博思协创网络科技有限公司】之间关于注册、登录及使用本网站会员服务所订立的法律协议。

在您注册或登录前,请务必审慎阅读、充分理解各条款内容,特别是免除或限制责任的条款、知识产权条款、争议解决条款等。此类条款将以加粗形式提示您注意。 当您通过微信公众号授权、手机验证码验证或其他方式成功登录本网站时,即视为您已完全理解并同意接受本协议的全部内容。

一、 定义

本网站:指由【深圳市博思协创网络科技有限公司】运营的,域名为【53ai.com】的网站及相关移动端页面。

会员服务:指本网站向注册会员提供的知识库文章查阅、内容检索及其他相关增值服务。

知识库内容:指本网站发布的包括但不限于文字、图表、数据、研究报告、行业分析等数字化内容资源。

二、 账号注册与登录

登录方式:本网站支持以下登录方式,您可根据实际情况选择:

微信公众号授权登录:您同意将您的微信OpenID信息授权给本网站,用于创建或关联会员账号。

手机验证码登录:您需提供真实有效的手机号码,并通过短信验证码完成身份验证与登录/注册。

账号安全:您的账号仅限您本人使用,禁止赠与、借用、租用、转让或售卖。因您保管不善导致的账号被盗、密码泄露等损失,由您自行承担。

实名认证:根据相关法律法规要求,我们可能要求您在特定功能下完成实名认证。如您拒绝提供,可能无法使用部分或全部服务。

未成年人保护:若您未满18周岁,请在法定监护人的陪同下阅读本协议,并在征得监护人同意后使用本服务。

三、 服务内容与规范

知识库查阅权限:会员登录后,有权按照其会员等级对应的权限范围,在线浏览、检索本网站知识库中的相关文章及内容。

服务变更:我们有权根据业务发展需要,调整、变更或终止部分服务内容,并将以网站公告、公众号消息等方式提前通知。

禁止行为:您在使用服务时不得实施以下行为:

利用技术手段批量爬取、下载、转存知识库内容;

将知识库内容用于商业目的或未经授权地向第三方传播;

干扰本网站正常运行或侵犯其他用户合法权益;

发布违法违规信息或从事违反公序良俗的活动。

四、 知识产权声明

权利归属:本网站知识库中的排版设计、软件代码等内容的知识产权均归【公司全称】或原权利人所有,受《中华人民共和国著作权法》等法律保护。

有限许可:本网站授予会员一项非独占、不可转让、不可转授权的普通许可,仅限于个人学习、研究之目的在线查阅知识库内容。

侵权追责:未经书面许可,任何单位或个人不得以任何形式复制、转载、摘编、镜像、汇编或以其他方式使用上述内容。一经发现,我们保留追究其法律责任的权利。

五、 个人信息保护

我们重视对您个人信息的保护。关于我们如何收集、使用、存储和保护您的个人信息,请单独阅读 《隐私政策》。

您通过微信公众号授权或手机号验证所提供的信息,我们将严格按照《个人信息保护法》的规定处理,仅用于身份识别、服务提供及安全验证等必要用途。

您可以随时通过网站设置或联系客服行使查阅、更正、删除个人信息及撤回授权同意的权利。

六、 免责声明

内容准确性:知识库内容仅供参考,不构成专业建议。我们不对其完整性、准确性、时效性作任何明示或暗示的保证,您应自行判断并承担使用风险。

不可抗力:因自然灾害、政策法规变化、网络故障、第三方平台接口异常(如微信接口维护、运营商短信通道故障)等不可抗力导致的服务中断或延迟,我们不承担违约责任。

第三方链接:本网站可能包含指向第三方网站的链接,该等网站的内容和服务不受我们控制,请您自行甄别风险。

七、 违约责任

如您违反本协议约定,我们有权视情节采取警告、限制功能、暂停服务、注销账号等措施,并保留要求赔偿损失的权利。

如因您的违约行为导致我们遭受行政处罚、第三方索赔或商誉损失,您应承担全部赔偿责任(包括但不限于罚款、赔偿金、律师费、公证费等)。

八、 法律适用与争议解决

本协议的订立、执行和解释均适用中华人民共和国大陆地区法律。

因本协议产生的或与本协议有关的任何争议,双方应友好协商解决;协商不成的,任何一方均可向【公司所在地】有管辖权的人民法院提起诉讼。

九、 其他

本协议构成双方就本服务达成的完整协议,取代此前任何口头或书面约定。

本协议任一条款被认定为无效或不可执行的,不影响其他条款的效力。

我们对本协议享有最终解释权,并在法律允许的范围内保留随时修改的权利。修改后的协议一经公布即生效,继续使用服务即视为同意修订内容。


已查阅