支持私有化部署
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


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

发布日期:2025-06-21 13:45:57 浏览次数: 1519
作者:三人行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

感谢阅读!

更多信息

三人行AI希望本文对你有所帮助!由笔者翻译整理自:https://github.com/agno-agi/agno?tab=readme-ov-file,感谢点赞、转发!

References

[1] Agno:https://docs.agno.com/introduction
[2]reasoning_finance_agent.mp4:https://private-user-images.githubusercontent.com/22579644/449896876-4ef27ba6-a781-4fb0-b49c-bfd838123c83.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NDk3MDE0NDksIm5iZiI6MTc0OTcwMTE0OSwicGF0aCI6Ii8yMjU3OTY0NC80NDk4OTY4NzYtNGVmMjdiYTYtYTc4MS00ZmIwLWI0OWMtYmZkODM4MTIzYzgzLm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA2MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNjEyVDA0MDU0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWRlNDVjYzFhMjRjZDVkNTE1ZDc2ZmM2MzUyZjQyNmZhM2IzZDMzYWIwMWU4NDU3MjU4ZDFkYzhhZGVhNmUyMTMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.tLv9Rkv8C23nTiXkkzQy5WPrtnKQXh9bRlupFdQ2GuQ
[3]智能体:https://docs.agno.com/introduction/agents
[4]Playground:https://docs.agno.com/introduction/playground
[5]agno.com:https://agno.com
[6]示例库:https://docs.agno.com/examples/introduction
[7]agno.com:https://agno.com
[8]reasoning_finance_agent.mp4:https://private-user-images.githubusercontent.com/22579644/431624338-bbb99955-9848-49a9-9732-3e19d77b2ff8.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NDk3MDE0NDksIm5iZiI6MTc0OTcwMTE0OSwicGF0aCI6Ii8yMjU3OTY0NC80MzE2MjQzMzgtYmJiOTk5NTUtOTg0OC00OWE5LTk3MzItM2UxOWQ3N2IyZmY4Lm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA2MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNjEyVDA0MDU0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWRlZDJkOTMzNjJlMWI1MzM4MzliZTY4YTBhNWE4NjgwMjIxZDMxY2VlODA4NTkwMDNlNzYzN2RmMGUxMzQ1Y2UmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.e2ceqZgDO7uhs1ASvxTUkm9LRSaNmEESLU6Rz0VOp7E
[9]Agno 官方文档中的 Cookbook 章节:https://github.com/agno-agi/agno/blob/main/cookbook/getting_started/05_agent_team.py
[10]agno_vs_langgraph_perf.mp4:https://private-user-images.githubusercontent.com/22579644/407806244-ba466d45-75dd-45ac-917b-0a56c5742e23.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NDk3MDI4NTcsIm5iZiI6MTc0OTcwMjU1NywicGF0aCI6Ii8yMjU3OTY0NC80MDc4MDYyNDQtYmE0NjZkNDUtNzVkZC00NWFjLTkxN2ItMGE1NmM1NzQyZTIzLm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA2MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNjEyVDA0MjkxN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWI0MzYyZTUxZjkzODI3OTJlODllM2E4ZTFkM2Q1NjVmZjEwN2I5OTkyYWUzNWYwZjRiMzUzMjk0ZWI4ZTM1NzEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.uJQJbosQjAB6Qxvb4eO8ES88GVlRWR-1GI9SaAhKWEg
[11]Cursor:https://cursor.sh
[12]docs.agno.com:https://docs.agno.com
[13]Cookbook:https://docs.agno.com/cookbook
[14]community.agno.com:https://community.agno.com
[15]加入 Discord:https://discord.gg/agno
[16]贡献指南(Contributing Guide): https://github.com/agno-ai/agno/blob/main/CONTRIBUTING.md

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

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

承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

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

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询