尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

agentmemory 基准测试报告编写指南:基于 TEMPLATE.md 与 coding-agent-life-v1 实战解读

agentmemory 基准测试报告编写指南:基于 TEMPLATE.md 与 coding-agent-life-v1 实战解读 agentmemory 基准测试报告编写指南基于 TEMPLATE.md 与 coding-agent-life-v1 实战解读【免费下载链接】agentmemory#1 Persistent memory for AI coding agents based on real-world benchmarks项目地址: https://gitcode.com/GitHub_Trending/age/agentmemory导读本文以仓库中 docs/benchmarks/TEMPLATE.md 为骨架逐字段讲解 agentmemory 检索质量基准测试报告的标准结构与撰写规范并结合仓库中唯一一份按此模板产出的真实报告 docs/benchmarks/2026-05-20-coding-agent-life-v1.md 以及 eval/runner 下的评测源码说明每个字段背后的数据来源、指标定义与复现命令。读完本文你将能够独立编写一份信息完整、可复现、可被检索与引用的 agentmemory 基准测试报告并理解 PK、RK、Hit rate、p50 延迟这些指标在评测流水线中究竟如何被计算出来。一、模板的定位一份报告该有的最小完整结构docs/benchmarks/TEMPLATE.md是一个报告骨架文件用于规范 agentmemory 每次检索质量评测结果的记录格式。它把一份可被长期存档、跨版本对比的报告拆成七个固定区块头部元数据日期、Commit、Bench、N、K、Hardware、模型Headline一句话结论Per-adapter按适配器汇总表Per-question-type按问题类型拆解表Methodology方法论如何摄入、如何查询、如何打分Reproduce可复现命令Notes意外发现、回退点、值得注意的经验这套结构与仓库benchmark/目录下的长文报告LONGMEMEVAL.md、QUALITY.md、REAL-EMBEDDINGS.md、SCALE.md互补长文报告承载完整的数据表与深度分析而模板报告定位为轻量、可扫描、可对比的得分卡适合每次评测迭代快速产出。模板头部注释也暗示了它的适用场景既可用于 LongMemEval 的_s子集也可用于仓库自建的coding-agent-life-v1语料。二、报告头把实验条件写清楚是复现的第一前提模板的第一段是六个必填元数据项每一项都直接影响结果的可比性字段含义填写示例来自真实报告# YYYY-MM-DD — benchmark-name评测日期 基准名称作为报告标题2026-05-20 — coding-agent-life-v1 (v0.9.26)**Commit:**被测代码的 git SHA锚定代码版本e9dc710**Bench:**基准标识LongMemEval_s/ coding-agent-life-v1 / …coding-agent-life-v1**N:**问题数 / 会话数15 sessions, 15 queries**K:**截断深度取 Top-K5**Hardware:**运行环境macos-15 / ubuntu-22.04 / …macOS 15 (Apple Silicon)**OpenAI model:**若使用向量适配器标注 embedding 模型text-embedding-3-small**Anthropic model:**检索链路中是否有 LLMN/A (no LLM in retrieval loop)以真实报告为例它还额外补充了agentmemory版本v0.9.26、iii-engine版本v0.11.2、embedding providerlocal default以及沙箱隔离方式独立数据目录/tmp/agentmemory-eval-sandbox/、端口 3411/3412这些附加字段进一步缩小了结果的可变空间值得在模板基础上沿用。写报告头时有一个隐含原则凡影响检索结果的配置都必须留痕。embedding 用本地模型还是 OpenAI API、是否在检索回路里调用 LLM这两项直接决定报告的定位——TEMPLATE 默认Anthropic model: N/A明确表示这是一次纯检索评测与端到端 QA 评测有本质区别详见下文第四节。三、Headline 与数据表指标口径决定数字含义3.1 Headline 的写法模板要求 Headline 用一行给出核心结论格式为agentmemory-hybrid: **R5 XX.XX%**, P5 XX.XX%, p50 latency XXms Beats grep baseline by X.Xpt R5, vector by X.Xpt R5.真实报告的写法可供参考agentmemory-hybridhits100% top-5 hit rate, R5 1.000, P5 0.240达到数学上限——所有 gold session 都进入了 top-5。grep baseline 的 R5 0.967P5 0.227在某个 multi-gold 问题上漏掉了一个 gold session。提升点在于recall而非聚合 precision。注意一个关键细节真实报告在 Headline 里解释了P5 0.240 就是数学上限这个说明避免了读者对数字的误读——这正是模板 Headline 隐含要求的结论 边界条件双要素。3.2 Per-adapter 表的指标口径模板的适配器汇总表包含四列P5、R5、Hit rate、p50 latency行对应grep/vector/agentmemory-hybrid三种适配器。这些指标全部来自 eval/runner/score.ts 中的scoreQuestion函数其口径为PKprecisionAtKtop-K 中命中 gold 的数量 / KRKrecallAtKtop-K 中命中 gold 的数量 / 该问题的 goldSessionIds 总数gold 为空时记为 0Hithit 只要 top-K 中至少命中一个 gold session 即为 trueHit rate 命中问题数 / 总问题数p50 latency 各问题查询延迟的中位数在aggregate函数中通过对延迟数组排序取中位实现。三个指标回答的问题各不相同PK 衡量返回的结果有多干净RK 衡量该找回的是否都找回了Hit rate 衡量用户最关心的那条信息是否出现在视野内——这也是为什么模板要求三者同时列出而非只看一个。真实报告的 per-adapter 表含延迟实测AdapterP5R5Hit ratep50 latencygrep (tokenized substring)0.2270.96715 / 150 msagentmemory-hybrid0.2401.00015 / 1514 ms报告还补充了重要背景agentmemory-hybrid走的是生产环境的POST /agentmemory/smart-search端点因此覆盖了完整的 BM25 embedding reranker 栈对应 eval/runner/adapters/agentmemory.ts 中的实现而 grep 只是子串命中计数的朴素基线见 eval/runner/adapters/grep.ts。3.3 Per-question-type 表定位差异发生在哪类问题上模板的第二张表按问题类型拆分grep R5 / vector R5 / agentmemory R5。真实报告按single-session-bug、single-session-refactor、preference、multi-session-causal、temporal等类型逐行列出。这张表的分析价值在真实报告中体现得很充分在 15 个问题的语料上两种适配器在绝大多数类型上都打满类型上限真正的分歧点只有temporal类What was shipped on April 8th 2026?——grep 只找到 2 个 gold session 中的 1 个R5 0.50hybrid 两个都找到R5 1.00。这就是典型的聚合数字被饱和掩盖、按类型拆解才能暴露差异的案例也印证了模板保留此表的意义。3.4 数学上限写表之前先算天花板真实报告在 Headline 之前专门用一节分析Math ceiling on this dataset15 个问题中 12 个有 1 个 gold session、3 个有 2 个 gold session按PK hits / k逐问平均的定义最大可达 P5 为((12 × 1/5) (3 × 2/5)) / 15 (2.4 1.2) / 15 0.240而 R5 上限是 1.000。这个预计算的价值在于当语料小、gold 稀疏时聚合 P5 会饱和而无法区分顶尖适配器此时真正有效的信号是recall 与分类型的 P5。写模板报告时这一节不是可选项——它防止报告读者对饱和数字产生错误解读。四、Methodology让每个数字都有数据管道背书模板的 Methodology 区块用四行要点概括了评测的数据流这是整份报告最需要忠实记录的实验协议- Sessions ingested via POST /agentmemory/remember with typeeval-session - Queries hit POST /agentmemory/smart-search with limitk*4 - No LLM in retrieval loop. Direct rank from hybrid scoring. - Ranks dedup by sessionId before truncating to K - Latency measured as initquery for LongMemEval (per-question fresh state), query-only for coding-life (shared state)这四行对应评测流水线的四个阶段逐一在源码中有据可查1. 摄入Ingest。eval/runner/adapters/agentmemory.ts 的init方法对每条会话调用POST /agentmemory/remember请求体为{ content: s.content, type: eval-session, concepts: [s.id] }——即用typeeval-session标记评测会话并把 session id 写入concepts从而在搜索结果的 observation 与 session 之间建立映射observationToSession。2. 查询Query。同一文件的query方法调用POST /agentmemory/smart-searchlimit取Math.max(k * 10, 50)。模板中写的limitk*4是早期或 LongMemEval 场景的参数约定coding-life 场景实际使用k*10下限 50说明模板的limit值应随评测脚本演进同步更新——写报告时以实际脚本为准。3. 去重与截断Dedup truncate。查询返回的 rows 会先按sessionId缺失时通过observationToSession反查去重遇到已见过的 session 直接跳过直到凑满 K 个为止。这一步保证同一 session 的多条 observation 不会霸榜。4. 打分Score。eval/runner/score.ts 的scoreQuestion用goldSessionIds集合对 top-K 逐项比对产出precisionAtK、recallAtK、hit、topGoldRank、latencyMsaggregate再按适配器和问题类型两级汇总。真实报告引用的scoreQuestion行为与此完全一致。模板还特别标注了两类延迟的测量口径差异LongMemEval 每题重建全新索引延迟记initquerycoding-life 共享同一份索引延迟只记query-only。这个区分非常重要——延迟数字如果不说明测量口径跨报告对比就没有意义。五、Reproduce用可执行命令锁死实验模板要求给出从 checkout 到出数的完整命令链。真实报告的复现块2026-05-20-coding-agent-life-v1.md可作为标准写法git checkout e9dc710 npm install --legacy-peer-deps npm run build source eval/scripts/sandbox.sh npm run eval:coding-life -- --adapters grep,agentmemory逐条解读git checkout e9dc710锚定代码版本与报告头 Commit 一致npm install --legacy-peer-deps项目依赖中含 peer 依赖较深的包见 package.json 的 overrides 字段覆盖了qs、ws、protobufjs该参数可规避解析冲突npm run build先构建出dist/因为评测需要本地 daemonagentmemory 适配器通过AGENTMEMORY_BASE_URL指向运行的实例默认http://localhost:3111source eval/scripts/sandbox.sh沙箱脚本通过覆盖HOME和改用备用端口3411/3412隔离出干净的评测数据目录避免用户真实记忆库的交叉污染npm run eval:coding-life -- --adapters grep,agentmemory运行评测 runner对应 package.json 中的eval:coding-life脚本 tsx eval/runner/coding-life.ts。eval/runner/coding-life.ts 的参数解析揭示了更多可调项--data语料目录默认eval/data/coding-agent-life-v1内含sessions.json与queries.json见 eval/data/coding-agent-life-v1--adapters参与评测的适配器默认grep,vector,agentmemory--k截断深度默认 5--out输出目录默认eval/reports/coding-life。输出两份文件scores.ndjson逐问、逐适配器一行的明细和summary.json按适配器与按类型的聚合结果。报告中的两张表格正是这两份输出的表格化呈现——这意味着模板表中的任何数字都可以回溯到一行原始记录这是可复现报告的最后一环。若要在 LongMemEval 上复现模板头部给出的是另一条命令--stratify 10分层抽样完整数据集下载与运行方式见 benchmark/LONGMEMEVAL.md。六、Notes记录反直觉与承重墙模板最后一个区块只有一行占位what surprised, what regressed, whats load-bearing什么出乎意料、什么回退了、什么是承重设计。真实报告用三条笔记示范了该区块的写作质量词汇精确性 vs 语义理解single-session-feature问题的查询文本含PR introduced helm chart而 gold session 中字面出现helm chart——grep 靠词汇精确命中占优hybrid 虽然命中但未拉开差距。这说明在字面重叠场景下关键词基线并不弱。语料规模是刻意的15 个问题的小语料是为快速迭代检索栈而设计后续加固方向明确列出——改写式查询、同义词替换、含共享关键词的语料内干扰项、更长的多会话链条。范围声明vector 适配器本次未测量需要OPENAI_API_KEY将在后续得分卡中与 LongMemEval_s一并补齐。这种欠账清单让报告读者知道哪些结论的覆盖范围有限。Notes 的价值在于把数字之外的经验存档哪些场景基线的表现会反转、当前语料的局限在哪、下一轮要测什么。模板用三个问句引导真实报告用三个要点作答这个模式可直接照搬。七、模板之外的配套资产往哪存、怎么比写完一份模板报告后它应该与benchmark/目录下四份长文报告配合使用形成完整的证据链benchmark/LONGMEMEVAL.mdLongMemEval-S 学术基准500 问、每问约 48 个会话、约 115K tokens的纯检索评测混合检索 R5 达 95.2%并附完整复现命令与指标口径声明benchmark/QUALITY.md内部 240 条观测、20 条标注查询的质量对比含 context token 节省分析benchmark/REAL-EMBEDDINGS.md本地 embeddingXenova/all-MiniLM-L6-v2384 维相对纯关键词检索的增益benchmark/SCALE.md5 档语料规模24050,000 条观测下的索引构建、检索延迟与存储成本benchmark/README.mdload-100k.ts负载测试的用法产出benchmark/results/load-100k-sha.json格式报告现有样例见 benchmark/results/load-100k-96c0ed0.json。模板报告与这些长文报告的分工是模板给这一次评测的得分卡长文给这一类能力的全景分析。发布流程上负载数据还会在发版时被追加进 CHANGELOG.md 的 Performance 章节JSON 文件作为凭证。因此模板报告的存档位置建议与 docs/benchmarks 保持一致按YYYY-MM-DD-benchmark-name.md命名形成可按时间线翻阅的评测史。八、编写自检清单综合模板与真实报告写一份合格的 agentmemory 基准测试报告前应逐项核对头部完整日期、Commit、Bench、N、K、Hardware、embedding 模型、是否有 LLM 在回路中缺一不可真实报告中还建议补充 agentmemory / iii-engine 版本、embedding provider 与沙箱信息先算天花板根据 gold 分布预先计算 PK / RK 的数学上限防止饱和数字误导读者Headline 带结论与边界一句话给结论紧接一句说明提升来自 recall 还是 precision、是否达到上限表格口径自洽PK / RK / Hit rate / p50 的定义与 eval/runner/score.ts 一致延迟注明是 initquery 还是 query-onlyMethodology 可复述摄入端点、查询端点、limit、去重截断规则、无 LLM 声明五要素齐全Reproduce 可跑通命令以仓库根目录为准包含git checkout sha、依赖安装、构建、沙箱与评测脚本调用并说明输出文件位置Notes 诚实记录写出反直觉现象、回退点与承重设计标注语料局限与未覆盖的适配器。TEMPLATE.md 的价值正在于它把评测结果从一次性的聊天记录提升为可归档、可复现、可对比的工程资产。遵循这份模板产出的每一份报告都能让后续开发者或 Agent 本身在不重跑实验的情况下准确判断一次改动到底让检索质量变好还是变坏。【免费下载链接】agentmemory#1 Persistent memory for AI coding agents based on real-world benchmarks项目地址: https://gitcode.com/GitHub_Trending/age/agentmemory创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表