PAST-Bench – 普林斯顿推出的个人 Agent 的性能归因基准
导读摘要:
PAST-Bench是普林斯顿大学王梦迪团队推出的基准测试,专门用于评估个人AI Agent的递归自我改进能力。该基准通过对比有持久化记忆与无持久化记忆条件下的任务表现,精确判断Agent保存的跨会话经验是否真正改善了后续行为。它覆盖记忆、流程复用、信息搜集、状态更新四类核心能力,包含26个任务场景和204个任务回合,为Agent的跨会话学习能力提供标准化量化评估。
1. PAST-Bench是什么
PAST-Bench是普林斯顿大学王梦迪团队推出的基准测试,专门用于评估个人AI Agent的递归自我改进能力。该基准通过对比有持久化记忆与无持久化记忆条件下的任务表现,精确判断Agent保存的跨会话经验是否真正改善了后续行为。它覆盖记忆、流程复用、信息搜集、状态更新四类核心能力,包含26个任务场景和204个任务回合,为Agent的跨会话学习能力提供标准化量化评估。
技术定位与领域: PAST-Bench属于AI Agent评估与基准测试领域,专注于递归自我改进(Recursive Self-Improvement)和持久化能力的归因分析。与现有基准(如SWE-Bench)仅评估单会话任务完成不同,PAST-Bench将评估焦点扩展到跨会话的经验积累与复用,填补了该领域的标准化评估空白。其方法论借鉴了因果推断中的对照实验思想,在Agent评估中首次实现了对改进来源的精确归因。
研发背景: 该基准由普林斯顿大学王梦迪团队(Gen-Verse)开发,旨在解决当前AI Agent评估中普遍忽视“改进来源归因”的问题。随着个人AI Agent逐渐具备记忆和技能持久化能力,如何验证这些功能真实带来性能提升成为关键。PAST-Bench应运而生,提供一套严谨的因果对比方法,区分经验积累与其他因素(如模型升级、Prompt优化)的贡献。团队此前在强化学习和多智能体系统领域有深厚积累,为基准的设计提供了理论支撑。
核心价值: PAST-Bench的核心价值在于“归因”而非“评分”。它通过匹配对照实验设计,为每个任务族同时运行有持久化和无持久化版本,直接计算自我进化差值Δ(Delta),从而精确衡量经验积累带来的净收益。此外,它引入机制证据评分(Mechanism-Evidence Score),追踪“存储→检索→应用”的完整路径,避免将偶然正确误判为真正改进。这种归因能力为Agent持久化功能的优化提供了明确方向,使开发者能够区分“有效改进”与“虚假提升”。
技术特点: PAST-Bench采用四项关键技术:任务族序列设计(多轮会话模拟持续使用)、匹配对照实验(有记忆vs无记忆)、机制证据追踪(运行时遥测数据记录)、持久化产物审计(检查实际保存内容)。这些技术共同实现了从最终结果到内部过程的全面诊断,使评估不仅知其然,更知其所以然。与现有基准相比,PAST-Bench在归因粒度上达到了机制级,能够识别Agent是否真正遵循了预期的经验复用路径。
2. 主要功能
递归自我改进评估: 核心功能是量化Agent的跨会话经验复用效果。通过对比有持久化记忆版本与无持久化记忆版本在同一任务族上的表现,计算Δ值(有记忆得分减无记忆得分),直接反映经验积累带来的性能提升。Δ值越大,说明Agent的自我改进能力越强。该功能为Agent的长期学习能力提供了可量化的指标。
经验积累效果隔离: 采用匹配对照实验设计,确保“有记忆”和“无记忆”两组实验除持久化能力外所有条件(任务、模型、Prompt、环境)完全一致。这消除了基础模型升级、Prompt调整、任务难度波动等外部因素的干扰,使得Δ值能够纯净地归因于经验积累。这种隔离设计在现有Agent基准中独一无二,保证了评估结论的科学性。
四维能力诊断: 将模糊的“自我改进”能力拆解为记忆(Memory)、流程复用(Workflow Reuse)、信息搜集(Information Gathering)、状态更新(State Update)四个具体维度。每个任务族对应其中一类能力,评估结果可以精准定位Agent在哪类跨会话能力上存在缺陷,为改进提供明确方向。例如,如果Agent在“流程复用”维度Δ值偏低,说明其技能抽象和复用机制存在问题。
机制归因分析: 提出Mechanism-Evidence Score(机制证据分数),不仅看最终答案是否正确,还追踪Agent在运行时是否真正执行了“存储经验→检索相关记忆→应用经验”的完整路径。这有效区分了“真正复用经验”和“碰巧答对”两种情况,避免归因偏差。机制证据分数通过分析运行时遥测数据(如记忆写入、技能调用、会话检索等)计算得出,具有可审计性。
持久化产物审计: 评估过程中记录Agent实际保存的内容,包括记忆条目、技能文件、会话索引等。审计维度包括数据结构合理性、时效性(是否及时更新)、可复用性(检索效率)。这一功能帮助开发者发现“存了但找不到”或“存了但没用”的无效持久化问题,直接指导记忆系统设计优化。
任务族序列设计: 每个任务族包含多轮会话(早期会话用于积累经验,后期会话用于检验复用),模拟个人Agent在真实场景中持续使用的过程。任务族覆盖日常助手、工具使用、信息检索等多种场景,共26个任务族、204个任务回合,确保评估的全面性和代表性。这种序列设计使得评估能够捕捉到经验积累的动态过程。
自定义Agent适配器: 提供标准适配器接口,允许用户评估自有Agent。只需在
agents/目录下实现必要接口(如persist、retrieve、act),并确保支持--compare-no-persistence开关,即可将PAST-Bench集成到现有开发流程中,实现持续评估。适配器设计遵循最小侵入原则,降低接入成本。结果对比与可视化: 评估完成后生成
sequence_comparison.json文件,包含每个任务族的Δ值、机制证据分数、各轮次得分明细等结构化数据。开发者可基于这些数据绘制改进曲线,直观观察经验积累的效果趋势。同时,该文件支持与历史评估结果进行对比,便于追踪Agent架构迭代的效果。
3. 如何使用
环境准备与安装: 首先从GitHub克隆PAST-Bench仓库(
git clone https://github.com/Gen-Verse/PAST-Bench.git),然后安装核心依赖:pip install -r requirements.txt。此外,还需要安装Agent适配器(根据待测Agent选择相应适配器)。系统需预装Docker(版本20.10+),因为评估需要在沙箱环境中运行,确保任务隔离和可复现性。建议使用Linux操作系统以获得最佳兼容性。模型与API配置: PAST-Bench本身不绑定特定模型,通过环境变量配置所使用的语言模型API Key。例如,设置
OPENAI_API_KEY或ANTHROPIC_API_KEY等。确保模型支持Agent所需的工具调用和长上下文能力,因为多轮会话可能涉及较长的历史记录(建议至少8K上下文)。如果使用本地模型,需确保其通过兼容API服务暴露。沙箱镜像构建: 执行
past-bench build-image --kind sandbox命令,构建评估所需的Docker沙箱镜像。该镜像包含隔离的任务环境,确保每个任务族在干净的环境中运行,避免状态污染。构建过程可能需要几分钟,取决于网络和系统配置。构建完成后可通过docker images验证镜像是否成功创建。快速验证(Smoke Test): 使用
past-bench evolve --task-family <task_family_name> --compare-no-persistence命令运行单个任务族进行快速验证。--compare-no-persistence参数会同时运行有持久化和无持久化两个版本,输出初步的Δ值。这用于验证环境配置是否正确,以及Agent是否能够完成基本任务。建议选择规模最小的任务族(如memory_basic)进行首次测试。完整评估: 确认快速验证通过后,运行完整评估:
past-bench evolve --all --compare-no-persistence。该命令将遍历全部26个任务族,每个任务族自动执行有持久化和无持久化两组实验。评估过程可能耗时较长(取决于任务数量和模型响应速度,完整评估可能需要数小时),建议使用高性能GPU或API服务以加快速度。评估过程中可通过--verbose参数查看实时进度。结果分析: 评估完成后,在
--trace-dir指定的目录下查看sequence_comparison.json文件。该文件包含每个任务族的详细结果:Δ值(自我进化差值)、机制证据分数(Mechanism-Evidence Score)、各轮次得分、持久化产物审计报告等。开发者可以据此分析Agent的跨会话能力表现,重点关注Δ值接近零或为负的任务族,这些通常是能力短板所在。自定义Agent接入: 如需评估自有Agent,在
agents/目录下创建适配器类,继承BaseAgent接口。必须实现的关键方法包括:act()(执行动作)、persist()(保存经验)、retrieve()(检索相关记忆)。适配器还需支持--compare-no-persistence开关,在无持久化模式下禁用所有保存和检索操作。完成适配器后,通过--agent your_agent_name参数指定即可运行评估。详细指南可参考GitHub仓库中的agents/README.md。
4. 优缺点分析
| 优点 |
|---|
| 精确的归因能力: 通过匹配对照实验和机制证据评分,能够准确区分改进来自经验积累还是其他因素,为Agent持久化优化提供可靠依据。这种归因粒度在现有基准中独树一帜。 |
| 四维能力诊断: 覆盖记忆、流程复用、信息搜集、状态更新四个维度,提供细粒度能力短板定位,指导针对性改进。每个维度都有对应的任务族,诊断结果具有操作性。 |
| 机制级追踪: 追踪“存储→检索→应用”全过程,避免偶然正确带来的误判,确保评估结果反映真实经验复用能力。机制证据分数提供了可审计的归因证据。 |
| 开源且可扩展: 代码完全开源(Apache 2.0许可证),支持自定义Agent接入,便于社区贡献和定制化评估。适配器接口设计清晰,扩展成本较低。 |
| 诊断驱动改进: 基于评估暴露的运行时故障,团队已催生出Hermes+框架,证明其不仅是评估工具,更是Agent架构优化的诊断引擎。这种“评估-诊断-改进”闭环具有实际价值。 |
5. 同类工具对比
| 维度 | PAST-Bench | SWE-Bench | GAIA |
|---|---|---|---|
| 核心目标 | 检验Agent是否能够通过跨会话经验积累改进后续行为,评估递归自我改进能力。 | 检验Agent能否一次性正确修复真实GitHub issue,评估代码修复能力。 | 评估通用AI助手在多轮对话中完成复杂任务的能力,强调多步推理和工具使用。 |
| 评估单元 | 一个任务族的多轮会话序列(早期积累→后期复用),模拟持续使用。 | 单个独立的代码修复任务,每个任务从零开始。 | 单个多轮对话任务,通常需要多步推理和工具调用。 |
| 持久化设计 | 核心设计: 支持持久化状态(记忆、技能、会话历史)的开启与关闭,是评估的核心变量。 | 无持久化: 每个任务都是全新环境,Agent没有跨会话记忆。 | 无持久化: 每个任务独立,Agent没有跨任务记忆。 |
| 对照机制 | 匹配对照实验: 同一任务族分别运行“有记忆”和“无记忆”版本,精确归因Δ值。 | 无对照设计: 只判断patch是否正确,不区分改进来源。 | 无对照设计: 只评估最终任务完成率,不设计对照实验。 |
| 归因粒度 | 机制级: 通过Mechanism-Evidence Score追踪“存储→检索→应用”的完整路径。 | 结果级: 只判断最终patch是否通过测试用例。 | 结果级: 只判断任务是否成功完成。 |
| 能力覆盖 | 记忆、流程复用、信息搜集、状态更新(4类跨会话能力)。 | 代码理解、调试、测试驱动开发(单会话代码能力)。 | 多步推理、工具使用、信息整合、指令遵循(单会话通用能力)。 |
选型建议:
如果您的研究或开发重点是验证个人Agent的跨会话经验积累效果,例如测试不同记忆架构或技能复用策略,PAST-Bench是唯一提供精确归因能力的基准。它能够告诉您“改进是否真正来自经验”,而不是模型本身变强或任务变简单。对于Agent持久化功能的研发团队,PAST-Bench可以作为核心评估工具,配合其四维诊断结果优化Agent设计。同时,其机制证据分数可以帮助区分“真正复用”与“偶然正确”,避免被虚假提升误导。
如果您的目标是评估Agent在特定领域(如代码修复)的单次任务能力,SWE-Bench更合适。它聚焦于代码补丁的正确性,拥有大量真实GitHub issue,是代码Agent领域的标准基准。而GAIA和AgentBench则更适合评估通用Agent在多步推理和环境交互中的表现,但它们都不关注跨会话经验复用。因此,在实际研发中,可以将PAST-Bench与其他基准结合使用:用PAST-Bench评估长期学习能力,用SWE-Bench或AgentBench评估单次任务执行能力,形成互补评估体系。例如,在开发个人助手Agent时,先用PAST-Bench验证其记忆系统是否有效,再用GAIA测试其在复杂对话中的推理能力。
6. 编辑总结
PAST-Bench的出现填补了AI Agent评估领域的一个重要空白:递归自我改进的归因分析。当前主流基准(如SWE-Bench、GAIA、AgentBench)均聚焦于单会话任务完成能力,而忽略了Agent在持续使用中积累经验并改进后续行为的关键特性。PAST-Bench通过创新的任务族序列设计和匹配对照实验,首次实现了对跨会话经验积累效果的精确量化,其提出的Mechanism-Evidence Score更是在归因粒度上达到了机制级,远超传统结果级评估。
从技术角度看,PAST-Bench的设计体现了严谨的因果推断思想。通过为每个任务族构建“有记忆”和“无记忆”的对照版本,它能够纯净地分离经验积累的贡献,这类似于科学实验中的控制变量法。这种设计不仅提升了评估的科学性,也为Agent持久化功能的优化提供了明确信号——开发者可以针对Δ值较低或机制证据分数不高的维度进行针对性改进。事实上,该团队已经基于PAST-Bench暴露的问题催生了Hermes+框架,证明了其作为诊断引擎的实用价值。这种“评估-诊断-改进”的闭环模式,为Agent研发提供了可量化的迭代路径。
在实用价值方面,PAST-Bench对三类人群尤其重要:学术研究者可以获得标准化、可复现的评估环境,用于对比不同Agent架构的自我改进能力;框架开发者可以利用四维诊断结果精准定位短板,指导架构迭代;模型选型团队可以在固定框架下对比不同基础模型的跨会话经验复用表现,识别模型的能力偏向。此外,产品团队可以使用PAST-Bench验证新版本中持久化功能的真实效果,避免“为了持久化而持久化”的无意义开发。对于个人Agent开发者而言,PAST-Bench提供了一种客观手段来检验自己的Agent是否真正越用越聪明。
当然,PAST-Bench仍处于早期阶段,任务场景的覆盖度、使用便捷性、文档完善度等方面还有提升空间。但其核心方法论——匹配对照实验与机制证据追踪——具有广泛的借鉴意义,可能成为Agent评估领域的新范式。随着个人AI Agent的普及,跨会话学习能力将是衡量Agent智能水平的重要维度,PAST-Bench在这一方向上迈出了坚实的一步。未来,如果PAST-Bench能够扩展更多任务场景、降低使用门槛,并与其他基准形成评估矩阵,其影响力将进一步扩大。
7. 应用场景
学术研究: 为Agent递归自我改进提供标准化、可复现的量化评估环境。研究人员可以使用PAST-Bench对比不同记忆架构(如向量数据库、结构化记忆、技能库)的自我改进效果,或者研究基础模型规模对经验复用能力的影响。所有实验均通过匹配对照设计确保结论的可靠性,论文中可引用Δ值和机制证据分数作为核心指标。
框架开发: 通过四维能力诊断精准定位Agent框架在记忆、流程复用、信息搜集、状态更新等方面的短板。例如,如果Agent在“流程复用”维度Δ值偏低,说明其技能抽象和复用机制存在问题,开发者可以针对性优化工作流管理模块。Hermes+框架的诞生就是这一场景的直接例证,它基于PAST-Bench暴露的运行时故障进行了架构重构。
模型选型: 在固定Agent框架下,使用PAST-Bench对比不同基础模型(如GPT-4、Claude、Llama等)的跨会话经验复用表现。通过比较Δ值和机制证据分数,可以识别各模型在记忆容量、检索准确性、技能迁移等方面的能力偏向,为模型选择提供数据支撑。例如,某些模型可能在“信息搜集”任务族上表现突出,但在“状态更新”上存在不足。
持久化验证: 测试不同记忆结构和检索策略的实际效果。例如,对比基于语义相似度的检索与基于时间戳的检索在“信息搜集”任务族上的表现,验证哪种策略能更有效地支持经验复用。PAST-Bench的持久化产物审计功能还能帮助发现“存了但找不到”或“存了但没用”的无效持久化问题,直接指导记忆系统设计优化。
产品迭代: 区分新版本Agent的得分提升是来自“跨会话经验积累”还是“基础模型变强/Prompt优化”,确保持久化功能真实产生价值。产品团队可以在每次迭代后运行PAST-Bench,观察Δ值的变化趋势,确保持久化改进方向正确。如果Δ值没有提升,说明新版本的持久化功能并未带来实质改进,需要重新审视设计。
8. 常见问题FAQ
Q:PAST-Bench主要评估Agent的什么能力?
A:PAST-Bench专门评估个人AI Agent的递归自我改进能力,即Agent能否利用跨会话保存的经验(记忆、技能、任务历史)来改进后续任务的表现。它通过对比有持久化和无持久化条件下的任务得分,量化经验积累带来的净收益。与单会话基准不同,它关注的是Agent是否越用越聪明。
Q:运行PAST-Bench需要哪些硬件和软件环境?
A:硬件方面,需要一台能够运行Docker的计算机(Linux推荐,macOS/Windows也可),评估本身消耗资源主要取决于所调用模型API的响应速度。软件方面,需要Python 3.8+、Docker 20.10+、Git,以及相应模型API的访问权限(如OpenAI、Anthropic等)。建议至少8GB内存和20GB磁盘空间。如果使用本地模型,需要额外配置兼容的API服务。
Q:如何解读评估结果中的Δ值和机制证据分数?
A:Δ值(自我进化差值)是“有记忆得分减无记忆得分”,正值表示经验积累带来了性能提升,值越大改进越明显。机制证据分数(Mechanism-Evidence Score)衡量Agent是否真正遵循了“存储→检索→应用”的路径,分数越高说明改进有真实路径支撑,而非偶然正确。两者结合可全面判断Agent的自我改进能力。例如,高Δ值但低机制证据分数,可能意味着改进来自其他因素而非真正的经验复用。
Q:PAST-Bench支持哪些基础模型?
A:PAST-Bench不绑定特定模型,通过环境变量配置API Key即可接入任何支持工具调用和长上下文的语言模型。常见的支持模型包括GPT-4系列、Claude系列、Llama系列(通过API服务)。需要注意的是,模型的能力(如推理、长上下文)会影响评估结果,因此在对比不同Agent架构时应固定使用同一模型。对于本地模型,需要确保其通过兼容OpenAI格式的API暴露。
Q:PAST-Bench与SWE-Bench的主要区别是什么?
A:两者目标不同:SWE-Bench评估Agent一次性修复代码bug的能力,每个任务独立,无跨会话记忆;PAST-Bench评估Agent在持续使用中积累经验并改进后续行为的能力,核心设计是跨会话的持久化对比。SWE-Bench是结果级评估,PAST-Bench是机制级归因评估。如果关注长期学习能力,选择PAST-Bench;如果关注单次代码修复能力,选择SWE-Bench。两者可以互补使用。
Q:如何将自定义Agent接入PAST-Bench?
A:在agents/目录下创建适配器类,继承BaseAgent接口,必须实现act()、persist()、retrieve()等方法。同时需要支持--compare-no-persistence开关,在无持久化模式下禁用所有保存和检索操作。完成适配器后,通过past-bench evolve --agent your_agent --task-family <family>运行评估。详细指南可参考GitHub仓库中的agents/README.md。建议先阅读示例适配器(如agents/openai_agent.py)以理解接口约定。
9. 项目地址
- 项目主页(GitHub仓库): https://github.com/Gen-Verse/PAST-Bench
- 技术论文(arXiv): https://arxiv.org/pdf/2608.04003
版权声明:本文部分内容由 AI 辅助生成并经人工校准,版权归本站所有,未经允许禁止任何形式的转载。



