![]()
![]()
![]()
前言
agno v2.7.4 已正式发布,这是一次内容非常密集的版本更新。整体来看,这个版本的重点非常明确:一方面继续扩展工具生态,新增了可执行代码与管理文件的沙箱能力、短信与语音通信能力,以及运行链路观测能力;另一方面则围绕创建项目、消息渠道集成、搜索能力、工作流上下文、分页处理、内容抓取结果格式等方面进行了系统增强;同时,团队运行、会话管理、流式输出、数据库建表、抓取结果限制、文档切分、读取器默认配置等多个关键细节也得到了修复。
如果你正在使用 agno 构建智能体、团队协作流、工作流编排、工具调用链路或多渠道集成,那么 v2.7.4 的这批更新非常值得完整了解。下面就基于本次发布说明,对所有新增功能、改进项、缺陷修复以及变更记录进行详细梳理,确保不遗漏任何一项更新内容。
一、版本概览
本次 agno v2.7.4 更新可以概括为四个关键词:
• 工具生态继续扩展
• 工作流与团队能力进一步打磨
• 外部平台集成更丰富
• 底层稳定性与一致性显著提升
从更新内容来看,v2.7.4 不仅新增了多个面向实际生产场景的工具能力,还在很多容易被忽视但影响体验的重要细节上进行了修复与优化。这意味着它不仅“更能做事”,也“做得更稳”。
二、新增功能详解
1. Superserve Tools:新增 SuperserveTools
本次版本新增了SuperserveTools,用于在 Superserve 中运行由智能体生成的代码,并管理文件。Superserve 是一个基于 Firecracker 的沙箱平台,面向长时间运行的智能体场景。
这一更新的关键词有三个:
• 运行智能体生成的代码
• 文件管理
• 长时间运行智能体的沙箱环境
从更新描述可以看出,这不是简单的工具补充,而是对智能体执行能力边界的一次明显扩展。此前很多智能体场景会涉及代码生成,但“生成之后如何安全执行、如何在隔离环境中运行、如何处理运行过程中产生的文件”一直是关键问题。SuperserveTools 正是针对这类问题给出的官方工具化支持。
同时,基于 Firecracker 的沙箱平台这个设定也非常关键。它说明 agno 在工具执行场景中已经开始更加重视运行环境隔离与长时间任务支持,这对复杂代理任务、持续性工作流以及需要文件产出的场景都很重要。
发布说明中指出该功能“详见文档”。
2. Plivo Tools:新增 PlivoTools
本次版本新增了PlivoTools,支持以下能力:
• 发送短信
• 发起语音通话
• 查询电话号码
这意味着 agno 的工具集成已经进一步延伸到通信能力层面。通过 PlivoTools,智能体不再局限于文本处理、数据检索和工作流编排,而是可以具备更直接的消息触达与电话交互能力。
从功能项来看,PlivoTools 覆盖了三类核心通信动作:
• 通知类场景中的短信发送
• 语音类场景中的电话呼叫
• 数据确认类场景中的号码查询
该功能同样在发布说明中标注为“详见文档”。
3. The Context Company:新增可观测性集成
本次版本新增了与The Context Company的可观测性集成,用于追踪智能体运行过程。
这项能力的核心价值在于“trace agent runs”,也就是对智能体执行链路进行追踪。对于复杂的代理系统来说,问题往往不在于是否能运行,而在于:
• 每一步到底做了什么
• 哪一步调用了什么工具
• 哪个环节出现了异常或延迟
• 某次运行的状态变化如何形成
此次接入 observability integration,意味着 agno 在运行可见性方面又向前推进了一步。对于调试、排障、性能定位以及运行分析来说,这是非常实用的一项增强。
发布说明同样标注为“详见文档”。
三、改进项详解
1. agno create 增强
在开发体验方面,v2.7.4 对agno create做了多项增强,包括:
• 交互式 starter 模板选择
• 项目名称提示
• 新增四个 starter
• 自动写入 .env 初始内容
这里的四个新 starter 分别是:
• Azure
• Helm
• Modal
• Render
这一组增强集中改善了项目初始化体验。更新后的 agno create 不再只是一个基础创建命令,而是进一步向“更友好的项目引导流程”迈进。交互式 starter 模板和项目名提示,会让新项目的创建过程更直观;新增的四个 starter 则丰富了启动路径;而自动 .env seeding,则减少了开发者在环境变量配置上的重复劳动。
2. Telegram Tools 增强
本次版本对Telegram Tools做了多项补充,新增能力包括:
• pin_message
• get_chat
• get_file
• react_with_emoji
除此之外,还新增了以下参数能力:
• save_downloads
• output_directory
这两个参数用于将下载的文件保存到磁盘。
这一轮增强使 Telegram Tools 的实用性进一步提高。更新点可以分为两类来看:
第一类是对消息与会话操作的补足:
• pin_message:支持置顶消息
• get_chat:获取聊天信息
• get_file:获取文件
• react_with_emoji:用 emoji 进行反应
第二类是对文件下载与本地落盘的增强:
• save_downloads:控制是否保存下载内容
• output_directory:指定输出目录
这说明 Telegram 相关能力不再仅停留在基础消息维度,而是逐步向更完整的聊天控制和文件处理能力扩展。
3. Tavily Tools 搜索能力增强
在Tavily Tools中,搜索新增了多种高级过滤参数,包括:
• domain 过滤
• date range 时间范围过滤
• topic 主题过滤
• country 国家过滤
对于搜索工具来说,这类高级参数的价值非常明确:让搜索结果更可控、更聚焦、更贴合任务需求。尤其当智能体需要在复杂信息源中进行目标检索时,这些过滤条件有助于减少噪音结果,提升搜索质量。
4. Google Tools:新增分页能力
本次更新提到,Google Tools新增了分页支持,覆盖以下模块:
• Gmail
• Calendar
• Drive
• Slides
分页能力的加入意味着在处理大规模结果集时,工具可以具备更细粒度的结果获取方式。对于邮件、日历、云盘和幻灯片等常见 Google 生态组件而言,分页支持是非常关键的能力补足。
需要注意的是,在后续变更记录中,也出现了一条与 Gmail 分页及每次请求最大结果数相关的回退记录。由于本篇文章严格依据发布说明整理,因此这两部分内容都会完整保留,不做超出原始信息的延伸解释。
5. Oxylabs Tools:返回完整页面 Markdown 内容
在Oxylabs Tools中,本次改进为:
• 返回完整网页内容,并以 Markdown 格式输出
这项更新的重点不只是“抓到页面”,更在于“结果格式”。Markdown 形式通常更利于后续处理、摘要、结构化提取与模型消费,因此这项调整会让抓取结果在下游使用时更顺畅。
6. Workflows:支持在 Router 和 Condition 中接收 run_context
在工作流能力方面,本次版本更新为:
• Router selectors 支持接收 run_context
• Condition evaluators 支持接收 run_context
• session_state 被弃用
也就是说,工作流中的路由选择器与条件判断器开始统一面向 run_context,而 session_state 被标记为弃用。
这是一次非常关键的接口层变化。它直接影响工作流内状态访问与上下文传递的方式。虽然从发布说明来看,内容是简洁的一句更新,但这实际上关系到工作流逻辑如何读取运行期上下文、如何统一行为模型,以及未来如何逐步摆脱旧接口。
四、缺陷修复详解
本次 v2.7.4 的修复项非常多,覆盖团队、AgentOS、Workflow、Slack、数据库、抓取工具、文档切分、读取器等多个模块。下面逐条说明。
1. Teams:向在一次运行中多次暂停的成员传递用户输入
修复内容为:
• 在一次运行中,如果成员多次暂停,也能够向其传递用户输入
这个问题明显影响团队协作式运行场景,尤其是涉及多轮暂停、恢复、人工介入或阶段性处理的流程。修复后,用户输入在这类复杂执行过程中能够正确传递给相应成员。
2. Teams:序列化已经是字典的媒体或成员响应输出
修复内容为:
• 当运行输出中的媒体字段或成员响应已经是 dict 时,能够正确序列化
这项修复处理的是输出序列化的一致性问题。对于团队运行结果而言,如果媒体字段或成员返回本身已经是字典结构,错误处理可能会导致异常或格式混乱。修复后,这类数据将得到正确处理。
3. AgentOS:流式输出团队响应时跳过累计运行输出
修复内容为:
• 在流式返回团队响应时,跳过累计的运行输出
这一修复点面向流式团队响应场景,避免将累计运行输出错误混入 SSE 流中,从而提升流式结果的一致性和清晰度。
4. AgentOS:拒绝使用已存在的 id 创建会话,而不是覆盖历史记录
修复内容为:
• 当创建会话时,如果 id 已存在,则直接拒绝创建
• 不再覆盖原有会话历史
这个修复非常关键,因为它直接关系到会话历史安全性。此前若使用已有 id 重新创建会话,可能出现历史被覆盖的风险。现在这一行为被明确阻止,避免数据被误改。
5. Workflow 与 Team Sessions:正确处理零和负数历史限制
修复内容为:
• Workflow Session 与 Team Session 会正确处理零和负数的历史限制值
这是一项边界值修复。很多时候系统在处理历史记录条数限制时,默认只考虑正数场景,而零和负数会触发不一致行为。修复后,这些边界情况能够被正确识别与遵循。
6. Workflows:工作流中途流式失败时展示底层错误
修复内容为:
• 当工作流在中途流式执行失败时,能够暴露底层真实错误
这项修复对于调试体验非常重要。相比只看到表层失败提示,直接暴露底层错误能够显著降低排障成本,让开发者更快定位问题。
7. Slack:按频道范围隔离会话
修复内容为:
• 会话范围按 channel 切分
• 不同频道之间不再共享历史记录
这意味着 Slack 场景下的 session key 已经改为频道级作用域,从而避免跨频道历史碰撞问题。对于多频道机器人或团队协同场景,这是一项非常实用的修复。
8. Tavily Tools:应用配置的提取深度
修复内容为:
• 正确应用已配置的 extract depth
这项修复确保 Tavily 工具在实际提取时,会遵循既定的深度配置,而不是忽略它。
9. OpenRouter:返回图像模型生成的图片
修复内容为:
• OpenRouter 响应中,能够返回图像模型生成的图片
这补足了图像生成结果在响应链路中的返回行为,让图像模型输出能够被正常带回。
10. PostgresDb:尊重 create_schema=False 配置
修复内容为:
• 当组件覆盖表名时,仍然遵守 create_schema=False
• 不因配置解析路径中的克隆行为而破坏该设置
这一修复关系到数据库模式创建策略。对于不希望自动创建 schema 的场景来说,这个细节非常重要。
11. PubMed、Firecrawl 与 Spider Tools:遵守结果数量限制
修复内容为:
• 同时遵守全局配置的结果数量限制
• 也遵守每次调用单独传入的结果数量限制
这是一项结果限制逻辑修复。它保证这些工具在返回数据时,不会无视配置或单次调用的显式限制。
12. FixedSizeChunking:当重叠长度超过内容时保留短文档
修复内容为:
• 当 overlap 大于等于内容长度时,不再静默丢弃短文档
• 短内容会被保留
这是文档切分中的典型边界修复。原先在重叠长度设置过大时,短文档可能被直接丢失。修复后,这类内容能够正确保留。
13. CSVReader 与 ExcelReader:各自拥有独立的默认行切分配置
修复内容为:
• CSVReader 和 ExcelReader 不再共享同一个可变默认 RowChunking 实例
• 每个读取器拥有自己的默认 row chunking 配置
这项修复虽然看似底层,但实际影响很大。共享一个可变默认实例容易导致配置互相污染,进而引发隐蔽问题。拆分后,两者行为更加独立和可预测。
五、What’s Changed 全量变更整理
下面对变更记录中的具体条目进行完整整理。为满足“不遗漏任何内容”的要求,以下内容会逐项覆盖,同时不包含人名,也不包含编号信息。
修复类变更
• CSVReader 和 ExcelReader 不再共享一个可变的默认 RowChunking 实例
• FixedSizeChunking 在 overlap 大于等于内容长度时,不再静默丢弃短文档
• 对于已存在的 session_id,创建会话的行为改为幂等式保护,不再覆盖历史
• 在团队的 SSE 流中跳过运行输出累计器
• WorkflowSession 与 TeamSession 辅助逻辑中,正确处理零和负数的运行数与消息数
• OpenRouter 响应中返回图像模型生成的图片
• PubMed、Firecrawl 和 Spider 工具遵守已配置和显式指定的结果限制
• TeamRunOutput.to_dict 在 media 字段和 member_responses 已经是 dict 时能够正确处理
• 移除 cookbooks 中已经弃用的 show_tool_calls
• Slack 中会话键按频道作用域隔离,防止跨频道冲突
• 在配置解析的克隆路径中保留 Postgres 的 create_schema 设置
• 在多轮团队人工介入场景中,正确持久化被暂停的成员运行
• 更新 Oxylabs 的 scrape_website 方法
• 撤销与 Gmail 分页及每次请求最大结果数相关的一项变更
新增与增强类变更
• 新增 PlivoTools,用于短信和语音能力
• TelegramTools 新增 react_with_emoji
• 增加 The Context Company 的可观测性示例
• TelegramTools 新增 pin_message、get_chat、get_file
• 改进 agno create 的引导流程
• Gmail 工具新增分页与每次请求最大结果数相关能力
• 在 Tavily 工具中暴露高级搜索参数
• 在工作流的 condition 与 router 中弃用 session_state,改为使用 run_context
• 新增 Superserve 沙箱工具
• 持续集成测试通过 pytest-split 并行化
维护与整理类变更
• 移除共享默认的 OpenAI 模型工具方法,并刷新示例模型标识
• 发布 v2.7.4 正式版本
这里需要特别注意两点:
第一,变更记录中同时出现了“Gmail 工具新增分页与每次请求最大结果数能力”以及“撤销相关变更”的记录。本文严格按原始发布内容保留,不做超出发布说明之外的推断。
第二,The Context Company 的部分在“新功能”中体现为可观测性集成,在变更记录中又出现了可观测性示例的补充,这两部分都属于本次版本的组成内容。
六、这一版本最值得关注的几个方向
虽然本次更新项很多,但从整体上看,v2.7.4 的重点主要集中在以下几个方向。
1. 智能体执行环境正在增强
SuperserveTools 的加入非常关键。它让 agno 在“生成代码”之外,进一步具备了“执行代码”和“管理文件”的能力,而且运行环境指向的是面向长时任务的 Firecracker 沙箱平台。这说明 agno 在真实执行场景中的能力边界正持续扩大。
2. 外部通信与消息平台集成更深
PlivoTools、Telegram Tools 和 Slack 修复共同体现出一个趋势:agno 正在不断强化与外部消息和通信平台的协同能力。无论是发送短信、拨打电话,还是聊天管理、频道隔离、文件获取,这些能力都使得智能体更接近真实业务链路。
3. 工作流上下文模型正在统一
run_context 进入 Router selectors 和 Condition evaluators,同时 session_state 被弃用,这说明工作流上下文的访问方式正在走向统一。这对于后续工作流编排的一致性和可维护性都具有重要意义。
4. 搜索、抓取、读取、切分这些基础能力更稳定了
Tavily Tools、Oxylabs Tools、PubMed、Firecrawl、Spider Tools、FixedSizeChunking、CSVReader、ExcelReader 等更新,覆盖了搜索、抓取、结果格式、返回限制、文档切分、表格读取等基础数据通路。这些能力虽然不如“新增功能”显眼,但它们直接决定了整个系统的数据质量和运行稳定性。
5. 流式响应、会话管理、团队协作继续被重点打磨
AgentOS、Teams、Workflow Sessions、Team Sessions、Slack 会话域隔离等更新,说明 agno 仍在持续优化多成员、多轮次、流式执行、人工介入等复杂协作场景。这些修复并不只是补 bug,而是在增强系统对复杂运行状态的控制能力。
七、完整更新清单汇总
为了便于快速查阅,下面给出一个更紧凑的汇总版本。
新增功能
• 新增 SuperserveTools,用于在基于 Firecracker 的 Superserve 沙箱中运行智能体生成的代码并管理文件,适用于长时间运行的智能体
• 新增 PlivoTools,支持发送短信、语音通话和电话号码查询
• 新增 The Context Company 可观测性集成,用于追踪智能体运行
改进项
• agno create 增强:交互式 starter 模板、项目名提示、新增 Azure、Helm、Modal、Render 四个 starter、自动 .env seeding
• Telegram Tools 增强:新增 pin_message、get_chat、get_file、react_with_emoji,并提供 save_downloads 和 output_directory 用于将下载文件保存到磁盘
• Tavily Tools 增强:新增 domain、date range、topic、country 搜索过滤参数
• Google Tools 增强:为 Gmail、Calendar、Drive、Slides 增加分页支持
• Oxylabs Tools 增强:返回完整页面的 Markdown 内容
• Workflows 增强:Router selectors 和 Condition evaluators 接收 run_context,并弃用 session_state
修复项
• Teams:向在一次运行中多次暂停的成员正确传递用户输入
• Teams:正确序列化已为 dict 的媒体字段和成员响应
• AgentOS:团队响应流式输出时跳过累计运行输出
• AgentOS:拒绝使用已有 id 创建会话,避免覆盖历史
• Workflow 与 Team Sessions:正确处理零和负数历史限制
• Workflows:工作流中途流式失败时暴露底层错误
• Slack:会话按频道隔离,不同频道不再共享历史
• Tavily Tools:正确应用 extract depth 配置
• OpenRouter:返回图像模型生成的图片
• PostgresDb:在覆盖表名场景下仍遵守 create_schema=False
• PubMed、Firecrawl、Spider Tools:遵守配置与单次调用的结果限制
• FixedSizeChunking:当 overlap 超过内容长度时保留短文档
• CSVReader 与 ExcelReader:各自拥有独立默认 RowChunking 配置
变更记录中出现的补充项
• 移除 cookbooks 中弃用的 show_tool_calls
• 新增 The Context Company 可观测性示例
• 持久化多轮团队人工介入中的暂停成员运行
• 持续集成测试通过 pytest-split 并行化
• 移除共享默认 OpenAI 模型工具方法并刷新示例模型标识
• 更新 Oxylabs 的 scrape_website 方法
• 包含一条与 Gmail 分页及每次请求最大结果数相关的变更回退记录
• 发布 v2.7.4
八、总结
代码地址:github.com/agno-agi/agno
agno v2.7.4 是一个兼具“扩展能力”和“稳定性修复”的版本。
如果用一句话概括,这次更新不是单点升级,而是一次覆盖面很广的系统性增强:
• 在工具层,新增了沙箱执行、通信和可观测性能力
• 在开发体验层,优化了项目创建与配置初始化
• 在平台集成层,增强了 Telegram、Slack、Google、Tavily、Oxylabs 等能力
• 在工作流层,推动 run_context 成为更重要的上下文接口
• 在底层实现层,修复了会话、流式输出、序列化、数据库配置、结果限制、切分策略和默认实例共享等多个关键问题
我们相信人工智能为普通人提供了一种“增强工具”,并致力于分享全方位的AI知识。在这里,您可以找到最新的AI科普文章、工具评测、提升效率的秘籍以及行业洞察。 欢迎关注“福大大架构师每日一题”,发消息可获得面试资料,让AI助力您的未来发展。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.