TapeAgents

以可回放 Tape 日志构建、调试、服务并优化 LLM 智能体。

Star 数
★ 320
最近更新
1 年前
License
Apache-2.0
主语言
Python

30 秒速览

运行形态
代码库 / SDK开发框架
可在哪里用
兼容但需适配
费用
软件免费,模型调用费用自付
上手难度
低 · 几分钟可跑通
开始前需要
uvShell / 命令行网络访问
典型场景
正在开发知识问答智能体的工程师,需要把用户输入、模型输出和环境观察统一保存为可回放的 DialogTape。
不适合
  • 需要开箱即用图形界面或托管服务的团队
  • 只想用现成聊天机器人、不写代码的用户

这个 Agent 能做什么,适合哪些场景?

TapeAgents 是一个面向 LLM 智能体完整开发生命周期的 Python 框架,核心数据结构是记录会话步骤的可回放 Tape。智能体处理既有 Tape 和 LLM 输出,生成 thought、action 或控制流步骤并追加到 Tape;环境则把 observation 步骤追加回去。它支持低层状态机、高层多智能体团队配置,以及由多个提示词引导的单智能体。项目提供 TapeAgent studio、TapeBrowser、响应流式服务,以及基于成功或修订 Tape 的配置优化和 LLM 微调路径。README 中的最小示例使用 Agent、Node、DialogTape、LiteLLM 与 tape_to_messages 运行一次对话任务。

开发者创建 Node,并在 make_prompt 中将 DialogTape 通过 tape_to_messages 渲染为 Prompt messages;generate_steps 从 LLMStream 读取文本并产出如 AssistantStep 的步骤。随后以 Agent[DialogTape].create(llm, nodes=[MainNode()]) 创建智能体,用 agent.run(start_tape).get_final_tape() 执行并取得最终 Tape 的 JSON 表示。框架还提供示例:GAIA 智能体进行规划、网页搜索和代码解释器调用;data_science 示例构建 AutoGen 风格团队;gsm8k_tuning 示例微调用于 GSM-8k 数学题的小型 LLM。示例以 uv run -m examples.<MODULE> <ARGS> 运行。

  1. 正在开发知识问答智能体的工程师,需要把用户输入、模型输出和环境观察统一保存为可回放的 DialogTape。
  2. 需要排查多步骤智能体行为的团队,可使用 TapeAgent studio 或 TapeBrowser 调试 Tape。
  3. 希望用规划、网页搜索和代码解释器回答知识型问题的开发者,可参考 GAIA benchmark 示例。
  4. 采用 AutoGen 风格低代码范式组织协作智能体的开发者,可参考 data_science 团队示例。
  5. 希望依据成功或修订后的 Tape 优化配置,或在 GSM-8k 数学题上微调小型 LLM 的研究与工程团队。

如何安装或部署这个 Agent?

安装已发布版本:pip install tapeagents。如需 converters 与 finetune 可选依赖:pip install 'tapeagents[converters,finetune]'。从源码运行时,README 要求先安装 uv,然后执行 make setup(等同于 uv sync --all-extras)。README 未说明 Python 版本、模型服务凭据或 LiteLLM 的认证配置。

如何使用这个 Agent?

先按 README 示例创建 LiteLLM(model_name="gpt-4o-mini"),定义继承 Node 的 MainNode:在 make_prompt 中返回 Prompt(messages=tape_to_messages(tape)),在 generate_steps 中 yield AssistantStep(content=llm_stream.get_text())。再调用 Agent[DialogTape].create(llm, nodes=[MainNode()]),以包含 UserStep 的 DialogTape 作为输入,并运行 agent.run(start_tape).get_final_tape()。仓库示例可用 uv run -m examples.<MODULE> <ARGS> 启动;模型服务所需凭据和配置细节未在所给材料中说明。

这个 Agent 有哪些优点和局限?

优点
  • 以 Tape 作为会话、模型调用、步骤与配置关联的可回放记录,便于在变更提示词或团队结构后继续调试。
  • 同时覆盖低层 Node/状态机实现、多个提示词引导的单智能体和高层多智能体团队配置。
  • 提供从构建、调试和流式服务到 Tape 优化与 LLM 微调的明确工作流,并附有 GAIA、WorkArena、GSM-8k 等示例。
局限
  • 示例虽使用 LiteLLM(model_name="gpt-4o-mini"),但所给材料未说明模型服务认证、凭据管理或其他模型提供商配置。
  • 源码安装依赖 uv,且完整安装使用 uv sync --all-extras;采用可选 converters 或 finetune 功能还需额外依赖。
  • TapeAgent studio、TapeBrowser 与响应流式服务被列为功能,但所给材料没有提供其部署命令、接口契约或运维要求。

这个 Agent 与同类方案有什么区别?

README 将 LangGraph、AutoGen、AIWaves Agents 和 DSPy 列为设计灵感来源,但未提供可核验的功能或性能对比。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
TapeAgents 当前 51 · 缺口较多 代码库 / SDK免费 + 模型费 ★ 320 1 年前 Python —
CaveAgent 63 · 存在缺口 代码库 / SDK免费 + 模型费 ★ 219 1 个月前 Python OpenAI API · Claude API
构建你自己的 OpenClaw 38 · 缺口较多 命令行工具免费 + 模型费 ★ 1.9k 4 个月前 Python —
AIWG 77 · 表现良好 命令行工具免费 + 模型费 ★ 229 今天 TypeScript Codex · Claude Code

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
51/ 100 五分制 2.6 / 5
信任安全 11/29
可靠稳定 8/14
适用触发 10/18
规范维护 11/18
有效结果 7/13
证据核验 4/8
查看各维度的扣分理由
信任安全11 / 29 · 1.9/5

代码与文档说明 Agent 通过 tape、LLM 和环境步骤协作,并可选择是否保存 LLM 调用;这使主要数据流较清楚(2)。但所给代码片段不完整,且未展示权限隔离、用户确认、敏感信息保护或回滚机制,故最小权限(1)、确认(0)、敏感数据处理(1)、外部效果控制(1)和回滚(1)均有限。pyproject 列出大量依赖,却未提供此处可见的安全审计结果或完整锁定证据,依赖安全为(1)。README 列出联系人、承认参考项目,来源归属有一定支持(2);发布者身份按题设未知,不另行加减分。

可靠稳定8 / 14 · 2.9/5

README 的 tape、step、prompt 和 LLM 调用描述与 agent.py 中的 Agent、Node、Prompt 和事件流概念相互吻合,自洽性为(2)。pyproject 声明 Python 3.10 至 3.12,而 tox 环境还列出 3.13,配置存在版本范围不一致;依赖可用性也未由静态材料充分证明,分别评为(2)与(1)。AgentStream 对未产生最终 tape 的情况给出明确 ValueError,Node 未实现生成逻辑时也抛出 NotImplementedError,失败信息为(2);未见更全面的故障恢复证据。

适用触发10 / 18 · 2.8/5

文档覆盖低层状态机、多 Agent、单 Agent、多种开发与服务场景,并列举 GAIA、数据科学、微调及 WorkArena 示例,受众和场景为(2)。框架强调灵活性,但材料未清晰界定安全边界、适用限制或不适用场景,能力边界为(1)。示例和安装入口具体,触发精度为(2);Python 版本范围与 tox 配置有一处不一致,且示例依赖外部模型及环境,故环境适配为(2)。

规范维护11 / 18 · 3.1/5

README 组织了介绍、入门、示例、安装、文档和联系信息,信息架构为(2);安装提供 pip、可选依赖和源码步骤(2)。Agent、Node、Tape 等命名与产品概念一致(2),示例丰富但未见常见问题解答,示例与 FAQ 合评为(2)。未见系统的已知限制说明,故为(1)。仓库提供完整 Apache-2.0 许可证文本且元数据一致,许可证为(3)。pyproject 有版本号,README 有发布徽章,但材料未展示变更日志或明确版本政策,版本与变更记录为(1)。README 列出团队联系人,维护责任有部分指向但未见支持或更新承诺,维护责任为(2)。

有效结果7 / 13 · 2.7/5

框架支持将 tape 作为结构化、可回放的会话记录,并提供调试、流式服务和基于 tape 的优化方向;文档示例表明输出可用于后续检查,实用性与边际价值均为(2)。成本效益仅有功能描述,没有资源消耗、运行成本或与替代方案的比较依据,评为(1)。

证据核验4 / 8 · 2.5/5

主要能力可追溯至 README 和示例入口,Agent 基础概念也可在 agent.py 中看到,主张可追溯性为(2)。README 与源码概念互相支持,且打包元数据、许可证和发布工作流提供额外佐证,跨来源印证为(2);但 README 与 quickstart 内容重复,且部分主张(如完整生命周期价值)主要是产品陈述,事实与推断区分不足,评为(1)。

风险与缓解建议
  • 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
  • 这是基于静态样本的低置信度审查;agent.py 仅提供部分内容,未对运行结果或测试进行独立验证。
  • pyproject 的 Python 支持范围与 tox 环境列表不一致。使用该框架时还需评估 LLM、工具和环境集成带来的数据处理及外部操作风险;材料未展示通用确认或回滚机制。
证据充分度:低 评估于 2026年11月8日 审查版本 e22d5e39ee04
查看完整评分方法 →
你是这个项目的维护者?把 FARS 徽章加到 README

徽章显示当前的评审分数和结论,点击回到本页。重新评审后约一小时内更新。

FARS

[![FARS 评测](https://followagents.com/badge/tapeagents.svg?lang=zh)](https://followagents.com/zh/agents/tapeagents)
<a href="https://followagents.com/zh/agents/tapeagents"><img src="https://followagents.com/badge/tapeagents.svg?lang=zh" alt="FARS 评测"></a>

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v0.1.16
  2. v0.1.15
  3. v0.1.14

常见问题

Tape 是什么?
Tape 是结构化、可回放的智能体会话日志;智能体把 thought、action 和控制流步骤追加其中,环境把 observation 步骤追加其中。
能否构建多智能体系统?
可以。README 明确支持高层多智能体团队配置,并提供 AutoGen 风格的 data_science 示例。
如何运行最小对话?
创建 DialogTape 和 UserStep,使用 Agent[DialogTape].create 创建智能体,再调用 agent.run(start_tape).get_final_tape()。
模型 API 密钥如何配置?
所给材料没有说明凭据、环境变量或 LiteLLM 的认证配置,因此实施前需要补充这部分集成信息。
这页内容对你有帮助吗?
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。