Agent Memory Leaderboard
正式文档

用户文档

了解如何接入 Add / Search、运行统一评测、查看结果,并将符合条件的结果发布到公开榜单。

01

OVERVIEW

评测机制

Agent Memory Leaderboard 使用统一的端到端流程评估不同记忆系统。数据库、索引和内部架构不作限制。开源方法榜(学术榜)的 Embedding 模型须使用 text-embedding-v4,LLM 相关组件须使用 gpt-4o-mini;Reranker 不作限制。商业产品榜(工业榜)不受上述模型限制。Add / Search 接口须符合现行规范,评测过程和检索结果须能够复核。

1

写入评测记忆

我们按样本和来源会话调用 Add 接口。

2

完成记忆管理

你的系统负责持久化、组织、索引和更新记忆。

3

检索相关记忆

我们针对每道题调用 Search 接口并接收排序结果。

4

统一回答与评分

我们使用固定流程生成答案、完成评分并汇总结果。

统一评测边界

你只负责 Add / Search 环节。回答模型、提示词、评分器、数据集组合、Top K 和汇总规则由我们统一固定,使榜单分数尽可能反映记忆系统本身的能力。

02

WHO THIS IS FOR

适用对象

榜单读者

无需登录即可查看

你可以在 Textual、Multimodal 或 Coding Track 中查看 Overall、分项指标、系统版本和发布日期。不同 Track 使用的任务和指标不同,分数不宜跨 Track 直接比较。

参测团队

完成接入并提交评测

实现 Add / Search → 提交准入申请 → 获取 API Key → 运行公开 smoke → 提交 full 正式评测 → 查看私有结果 → 进入公榜审核。

03

PARTICIPATION WORKFLOW

准入与评测流程

先提交 Evaluation Access Request,完成参测系统、版本、在线 Add / Search 接口和鉴权方式审核。第二期所有榜单均要求参赛方自行部署接口,AML 不接受仅提交仓库后代为部署。

  1. 01

    提交准入申请

    选择申请新 Key,或输入已有 Key 为其增加版本;填写联系人、系统版本、Add / Search 接口、鉴权、容量和运行限制。开源方法另附仓库与来源披露。

  2. 02

    完成 Key 绑定

    审核通过后,新申请会签发 Leaderboard API Key;新增版本申请会直接绑定到原 Key,无需管理员再次手工录入接口信息。

  3. 03

    运行公开 Smoke

    平台直接校验参赛方提交的在线接口,并按照现行同步规范执行 Add → Search → Answer → Evaluate Smoke 流程,确认接口可用后再进入正式评测。

  4. 04

    完成 Full 前置检查

    选择 full 前,必须逐项勾选提交清单:smoke 已通过、API 契约正确、运行说明完整,以及原创性披露和诚信承诺均已完成。

  5. 05

    提交评测任务

    在 Evaluation 页面验证 API Key,选择已绑定的版本,填写唯一的 Run Label 后提交 full 评测。正式任务使用统一的数据集套件和 Top K。

  6. 06

    查看进度与审计状态

    任务依次执行写入、检索、回答、评分和结果汇总。页面会显示当前阶段、完成进度和错误摘要;我们同时保留复核所需的过程记录。

  7. 07

    查看结果与发布状态

    评测结果首先仅对绑定的 API Key 可见。成功完成的 full 任务会进入公榜资格校验和审核队列;审核通过后生成公榜提交记录。

代码审核与取消资格

允许复现已有论文或封装已有仓库,但必须披露原始作者、技术报告以及方法改动;未披露的重复代码可能被视为抄袭。发现重复代码时,平台会优先保护本人已披露并先提交的评测结果。重复提交相似或低质量代码、提示词注入、数据或结果操纵、恶意刷榜等行为,均可能取消参赛资格。

04

EVALUATION MODES

评测模式与配额

模式用途标准配额结果范围公榜资格
smoke通过独立的兼容性测试接口检查同步 Add、Search 和评分链路。每小时 1 次;本届每赛道最多 30 次仅私有不可发布
full运行固定的完整评测套件,并进入正式排队、审计和发布流程。本届每个 AML Key、每个赛道最多 2 次;第 2 次须在首次 Full 完成后 30 天发起优先私有审核通过后发布
选择建议

首次接入或接口行为变更后,先使用独立的兼容性 smoke 检查接口规范;接口稳定且版本准备完成后,再提交唯一的正式评测模式 full。

05

ADD / SEARCH CONTRACT

Add / Search 接入规范

参赛选手配置 Add 和 Search 的接口地址,请求和响应格式按照现行规范固定,不随 URL 路径变化。生产环境建议使用 HTTPS。URL 中不得包含用户名、密码等凭据,也不得指向私有、回环或链路本地地址。

写入方式

同步

记忆写入完成后,Add 接口返回 HTTP 200

正式评测 Top K

100

返回数量不得超过 top_k,超量会判为契约错误

检索范围

user_id

Add 和 Search 必须使用完全相同的 user_id

鉴权与健康检查

Add / Search 支持 Token、Bearer 和 X-Api-Key;none 仅用于公开 smoke。Health 接口通过无需鉴权的 GET 请求调用,返回任意 2xx 状态码即表示服务正常。

POST

Add 请求

普通文本在达到 20 条消息或 2,000 个词中的任一边界时确定性分段,词数按冻结 Adapter 计数;Streaming 按增量会话/任务单元写入;代码保留仓库/会话轨迹,多模态按公开数据源单元与媒体限制处理。单次请求最长 30 分钟。

{
  "request_id": "eval:run_abc123:locomo_refined:conv-0:chunk-0",
  "messages": [{
    "role": "user",
    "timestamp": 1704067200000,
    "content": "memory text"
  }],
  "user_id": "eval:run_abc123:locomo:conv-0",
  "session_id": "eval:run_abc123:sample:0"
}
request_id

必填。本次写入请求的唯一标识;成功响应必须原样返回该值。

messages

必填。消息按原顺序排列,每条消息包含 role 和非空 content。文本与代码使用字符串;多模态可使用字符串或有序 text/image_url 内容数组。timestamp 可选,单位为 Unix 毫秒。

user_id

必填。Search 接口唯一使用的检索范围标识;写入和检索时必须保持一致。

session_id

必填。用于标识来源会话,可以用于组织记忆,但不作为 Search 的筛选条件。

未使用字段

现行规范不发送 metadata、app_id、agent_id 或 async_mode;同步语义由 Add 完成写入后返回 HTTP 200 保证。

200

Add 响应

写入完成并且相关记忆能够立即检索后,才能返回成功响应。

HTTP 200
{
  "success": true,
  "request_id": "eval:run_abc123:locomo_refined:conv-0:chunk-0",
  "user_id": "eval:run_abc123:locomo:conv-0",
  "session_id": "eval:run_abc123:sample:0"
}
success

必填,且必须是布尔值 true。

request_id / user_id / session_id

全部必填,并且必须与请求中的值完全一致。

同步完成

服务内部可以采用异步处理,但 Add 接口必须等待处理完成后再返回。

HTTP 202

仅当提交版本已审核绑定包含 {task_id} 的 Add 状态查询地址时支持;响应须返回 task_id。未绑定时返回 202 属于契约错误。响应不需要 memory_ids。

POST

Search 请求

平台按赛道流程发起 Search;Streaming 可在多个增量节点检索同一道题。查询使用基准原文;多模态可使用图片内容数组,选择题在顶层另行传入选项。单次请求最长 30 分钟。

{
  "query": "Which answer best matches the memory?",
  "options": ["A. First answer", "B. Second answer"],
  "user_id": "eval:run_abc123:locomo:conv-0",
  "top_k": 100
}
query

必填。按照原文检索相关记忆;多模态可使用与 Add 相同的 text/image_url 内容数组。不得替换为最终答案或使用评测金标。

options

可选。选择题(含 Streaming)在 Search 顶层传入选项文本数组;开放题不发送,不包含金标答案。

user_id

必填。只能在该 user_id 对应的记忆范围内检索。

top_k

必填。返回的记忆数量不得超过该值;正式外部评测固定为 100。

请求格式

现行规范不发送 filters、rerank 或 keyword_search。

200

Search 响应

响应必须是一个 JSON 对象,其中 data 为按相关性排序的数组。没有检索结果时,返回空数组。

{
  "data": [{
      "id": "mem_1",
      "content": "remembered fact text",
      "score": 0.87,
      "created_at": "2026-07-01T12:00:00Z"
  }]
}
data

必填,类型为数组。不要增加 items 包装层,也不要直接返回顶层数组。

id

必填,非空字符串,用于稳定标识该条记忆。

content

必填,非空字符串;多模态可返回 text/image_url 内容数组。平台保留原始候选并传入统一 Answer 流程。

score

可选,数值类型。数值越大应表示相关性越高。

created_at

可选,用于记录记忆的来源时间或持久化时间。

其他字段

我们只读取上述字段;metadata 等未声明字段会被忽略。

返回顺序和数量:我们保留接口返回的顺序;返回数量不得超过 top_k。超量或存在非法条目会判为契约错误,不会静默截断后继续评分。
06

ERROR HANDLING

错误处理

参测接口应使用标准 HTTP 状态码,并返回便于排查问题且不含密钥的错误信息。平台业务错误通常采用 {"detail":{"reason":"..."}} 格式;字段校验失败时,HTTP 422 会返回结构化错误明细。

HTTP错误类型常见原因处理方式
400 / 422接口格式错误Add / Search 请求无法解析,或者成功响应缺少必填字段、字段类型不正确。不自动重试。根据错误信息修正请求或响应格式,然后重新运行 smoke。
401认证失败Memory System Key 无效,或者 Authorization / X-Api-Key 与申请时选择的方式不一致。不自动重试。核对鉴权方式和绑定的密钥。
403访问被拒绝当前密钥无权调用接口,或者服务端拒绝访问指定的 user_id。不自动重试。检查接口权限和检索范围配置。
404资源不存在接口路径错误,或者平台侧的 test、job、result ID 无效。检查 URL 或资源 ID。现行同步规范不包含 Add Status 查询。
409状态冲突同一 Add 可能仍在处理,或者平台已有任务正在运行、Run Label 重复。Add 可保持同一 request_id 与请求体进行有界重试,但不能仅凭 409 视为成功;Search 的 409 不重试。平台任务冲突时,请等待现有任务结束或更换 Run Label。
408 / 425暂时不可用请求超时,或者服务尚未准备完成。Add / Search 请求都会按照平台策略进行有限次数的退避重试。
429触发限流或配额参测接口容量不足,或者平台评测配额尚未恢复。接口调用会在限定次数内重试;如果是平台配额限制,请等待页面显示的下次可用时间。
500 / 502 / 503 / 504临时服务异常参测接口、网关或上游依赖暂时不可用。我们会自动退避重试。若持续失败,请保留 Job/Test ID 和发生时间,便于进一步排查。
自动重试范围

Add 遇到网络错误及 408、409、425、429、500、502、503、504、524 时会有界重试;409 不单独代表成功。Search 遇到网络错误及 408、425、429、500、502、503、504 时会有界重试;400、401、403、404、409、422 等永久性 4xx 不重试。重试和断点续跑保持同一 Add 的 request_id 与请求体。

格式错误立即终止

即使 HTTP 状态码为 200,只要 Add 未返回 success=true、三个 ID 未正确返回,或者 Search 未返回 data 数组、某条记录缺少 id / content,当前阶段都会立即失败。

07

DATA, SECURITY & PRIVACY

数据安全与隐私

01

仅传输必要数据

你的接口只会收到当前任务所需的记忆片段、user/session 标识和检索问题。我们不会提供金标答案、评分依据或完整数据集下载。

02

隔离检索范围

user_id 是 Search 接口唯一使用的检索范围标识,存储和检索时必须完全一致。session_id 只用于组织来源会话。禁止跨 user_id 返回记忆。

03

保护访问密钥

Memory System Key 通过受控的申请流程提交并加密保存,任务信息中只保留不可读的引用。密钥不会出现在邮件、公榜或公开 API 响应中。

04

校验接口地址

我们只连接通过网络校验的公开 HTTP(S) 接口,并拒绝 URL 中包含凭据,或者指向私有、回环、链路本地地址的目标。

05

保留审计记录

我们会保留复核所需的请求结果、耗时、错误、候选记忆和接口格式校验记录,用于确认评测是否完整,以及结果是否符合公榜条件。

06

控制结果权限

私有任务和结果仅对绑定的 Leaderboard API Key 可见。公榜只展示审核通过的系统、版本、分数和必要的评测信息。

你的数据处理责任

评测数据及其派生副本只能用于完成当前任务,不得用于模型训练、微调、产品分析、数据集重建或对外传播。请仅向必要人员开放访问权限,避免记录不必要的请求正文,并在任务完成后 30 天内删除相关数据;如需延长保留时间,必须事先获得我们的书面同意。

08

EVALUATION & RESULTS

评测与结果发布

ADD

同步写入记忆

每个记忆分块都必须在返回 HTTP 200 前完成持久化,并且能够立即检索。

SEARCH

检索并校验格式

我们会检查 data 数组、必填字段和 Top K,并按照接口返回的顺序接收候选记忆。

ANSWER

统一生成回答

通过校验的候选记忆会进入统一的回答模型和提示词流程。

EVAL

统一完成评分

我们按照题型使用固定的评分规则,并汇总各数据集和 Overall 结果。

PRIVATE

查看私有结果

任务完成后,你可以使用绑定的 API Key 查看运行状态、分项结果、错误摘要和任务信息。

PUBLIC

发布至公榜

full 结果通过资格校验和审核后,会生成公榜提交记录并展示在公开榜单中。

PUBLICATION GATE

公榜准入条件

结果必须来自成功完成的 full 模式固定套件,且所有评测任务均执行成功。统一回答模型、评测规范、pipeline code hash、dataset bundle hash 和题量记录必须完整,并与现行发布基线一致。结果不得重复提交,同时还需通过平台审核。

09

BENCHMARK SUITE

基准详情

按能力维度浏览基准数据集。每张卡片均链接到源仓库,并说明任务格式、指标与评测备注。

文本数据集

多模态数据集

多模态

ATM-Bench

以问题质量等指标评估多模态智能体记忆能力。

多模态

Mem-Gallery

使用 F1 指标评估图集式记忆检索能力。

编程数据集

编程 · 当前正式计分

CAMBench Coding

150 个软件工程任务分别在 relevant 与 noisy 记忆条件下运行,共 300 次评测尝试。

编程 · 参考目录

SWEContextBench

当前不作为 AML 代码赛道的正式计分基准。