AMB 记忆基准套件
用可复现的准确率、速度与 token 成本评测 Agent 记忆系统。
- Star 数
- ★ 144
- 最近更新
- 今天
- 主语言
- Python
- FA 评分
- 39/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 记忆系统开发者比较不同 provider 在同一数据集上的回答准确率、速度和 token 成本。
- 不适合
- 需要无需 API 密钥即可完成评测的团队
- 需要评测 MemBench 但无法提供本地数据目录的团队
这个 Agent 能做什么,适合哪些场景?
AMB(Agent Memory Benchmark)是一套用于评测 Agent 记忆系统的基准工具,包含数据集、提示词、评分逻辑和结果。命令行通过 `uv run amb` 提供数据集与 provider 查询、评测运行、统计和结果浏览命令。常规流程将数据集文档载入记忆 provider,由 provider 检索上下文,再由 Gemini 生成答案,并由第二次 Gemini 调用依据标准答案评分。工具分别记录检索与生成耗时,也记录摄取耗时;结果写入 `outputs/{dataset}/{memory}/{mode}/{domain}.json`,可用 `uv run amb view` 浏览。PrecisionMemBench 使用 `--mode retrieval`,按返回的 belief-ID 集合是否满足逐案例断言评分,不调用答案模型或评审模型。
AMB 读取所选数据集中的文档并将其载入指定记忆 provider;针对每个查询请求 provider 检索相关上下文;常规模式下调用 Gemini 生成答案,再调用 Gemini 将答案与标准答案比较评分。它记录检索、生成和摄取时间,并保存评测结果及准确率、速度和 token 成本相关信息。使用 --oracle 可仅摄取标准文档,以单独测试生成质量;使用 dataset-stats 查看数据集统计。对于 PrecisionMemBench,--mode retrieval 直接核对返回 belief-ID 集合与该案例的必需及禁止断言。
- 记忆系统开发者比较不同 provider 在同一数据集上的回答准确率、速度和 token 成本。
- 研究者用
--oracle隔离生成质量,判断问题来自生成还是检索上下文。 - Agent 团队用 PersonaMem 等数据集评测跨多轮交互形成的偏好如何影响多步决策。
- 记忆 provider 作者用 PrecisionMemBench 检查检索是否返回指定 belief,并将噪声结果视为失败。
- 评测负责人用公开的评测 harness、提示词和模型配置复现并审查基准结果。
如何安装或部署这个 Agent?
要求 Python ≥ 3.11。README 未说明具体安装命令或包安装流程;提供的前置步骤是配置 Gemini API 密钥:
cp .env.example .env在 .env 中填写:
GEMINI_API_KEY=...若要运行 MemBench,还需将 MEMBENCH_DATA_PATH 设置为本地数据目录。
如何使用这个 Agent?
列出可用数据集、记忆 provider 和模式:
uv run amb providers运行一个评测:
uv run amb run --dataset personamem --domain 32k --memory bm25快速限制查询数:
uv run amb run --dataset personamem --domain 32k --memory bm25 --query-limit 20浏览结果:
uv run amb viewPrecisionMemBench 检索模式示例:
uv run amb run --dataset precisionmembench --split single-turn --memory hindsight-cloud --mode retrieval这个 Agent 有哪些优点和局限?
- 公开评测 harness、评审提示词、答案生成提示词和确切模型配置,便于复现与审计。
- 准确率之外还跟踪检索速度、生成速度、摄取耗时和 token 成本。
- 提供
--oracle模式,可将生成质量与记忆检索效果分开评测。 - PrecisionMemBench 对每个案例明确断言必须及不得返回的记忆,噪声会直接影响评分。
- 常规评测要求
GEMINI_API_KEY,并依赖 Gemini 生成和评分。 - Python 运行环境要求为 3.11 或更高版本。
- MemBench 需要用户已有本地数据目录,并配置
MEMBENCH_DATA_PATH。 - README 展示了
uv run amb命令,但未给出安装步骤或依赖清单。
这个 Agent 与同类方案有什么区别?
README 将 LoComo 和 LongMemEval 描述为面向聊天机器人场景、面向 32k 上下文时代的数据集,并指出在百万 token 上下文窗口下,直接将全部内容放入上下文也可能取得有竞争力的分数。AMB 增加了面向 Agent 任务的数据集,关注工具调用间的记忆、文档研究积累的知识和多步决策中的偏好。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| AMB 记忆基准套件 当前 | 39 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 144 | 今天 | Python | — |
| ReLE中文大模型能力评测与缺陷库 | 14 · 缺口较多 | 网页应用免费版 + 付费版 | ★ 6.5k | 9 天前 | — | — |
| Dolt:面向数据的 Git | 55 · 缺口较多 | 命令行工具免费 | ★ 25k | 今天 | Go | — |
| MobileGym | 50 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 805 | 今天 | Python | — |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
README说明文档载入、检索、生成、评判流程,结果保存位置,并要求通过环境变量提供 Gemini 密钥,因此数据流有一定可见性,least_privilege、sensitive_data_handling 与 external_effects 得 1–2 分。材料没有确认步骤、权限边界、密钥保护细节或回滚流程;这些缺口使 user_confirmation、rollback 得 0,相关安全项未获更高分。依赖仅列版本下限并有一条兼容性说明,没有安全审计证据,dependency_security 得 1。README 提及上游 PrecisionMemBench,但未提供维护者或来源治理信息;发布者身份未知,source_attribution 得 1。
README 的用法与 pyproject 中的命令入口、包名和 Python 版本要求大体吻合,self_consistency 得 2。依赖有版本下限和局部兼容性说明,但没有锁定文件或可用性保证,dependency_availability 得 1。材料未说明失败信息或错误处理,因此 failure_messages 得 0。
README 描述了对话记忆、文档研究、跨工具调用等场景,并给出多个数据集、记忆提供方、模式和规模限制示例,audience_and_scenarios 得 2。文档明确区分常规问答评测与 PrecisionMemBench 检索模式,但没有系统说明能力边界或触发规则,capability_boundaries、trigger_precision 各得 1。Python、环境变量、MemBench 数据路径和命令行步骤都有说明,environment_fit 得 2。
README 按概览、问题、评测流程、设置、用法、结果和需求组织,提供了多个命令示例;安装步骤和命名说明也较清楚,install_notes、naming_stability、examples_and_faq 得 2。仅有少量对评测形状和成本的说明,未形成完整局限清单,known_limitations 得 1。给定材料没有许可证、变更日志或维护责任人证据,license、versioning_changelog、maintenance_responsibility 得 0;仓库信息架构仅能从 README 判断,information_architecture 得 1。
工具提供数据集与提供方列表、统计、运行、结果文件及浏览器查看入口,输出用途较明确,output_usability 得 2。README 对百万 token 上下文下基准区分力不足的动机,以及准确率、速度和 token 成本的衡量目标作了具体说明,marginal_value 得 2。文档强调成本指标,但没有提供运行成本或资源需求的具体估算,cost_benefit 得 1。
README 点名评测流程、模式、结果路径和复现所需材料,并给出 PrecisionMemBench 上游名称;这些内容让部分主张可追踪,claim_traceability 得 2。当前材料只有 README 和项目配置,配置能佐证入口、依赖和 Python 要求,但不能独立证实评测结果、数据集内容或复现主张,cross_source_corroboration 得 1。文档将评测步骤和 PrecisionMemBench 的检索计分方式分开说明,也把性能主张作为项目动机呈现;不过没有足够独立材料核实这些说法,fact_inference_separation 得 2而非满分。
- 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
- 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
- 所给材料未展示许可证、变更日志、维护责任人、依赖锁定、安全审查或错误处理说明;不要据此推断这些方面已得到保障。
- README 的基准优势与可复现性主张未由所给材料中的结果或独立来源佐证。
常见问题
运行评测需要什么密钥?
GEMINI_API_KEY;生成答案和评审答案都使用 Gemini 调用。所有数据集都需要调用答案模型和评审模型吗?
--mode retrieval 不运行答案 LLM 或评审调用,而是根据 belief-ID 集合是否满足断言计分。MemBench 能直接运行吗?
MEMBENCH_DATA_PATH 设置为该目录。结果会保存在哪里?
outputs/{dataset}/{memory}/{mode}/{domain}.json,并可通过 uv run amb view 浏览。