ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

如何运行 MemPalace 的 MemBench(ACL 2025)检索基准并解读各难度类别得分?

如何运行 MemPalace 的 MemBench(ACL 2025)检索基准并解读各难度类别得分? 如何运行 MemPalace 的 MemBenchACL 2025检索基准并解读各难度类别得分【免费下载链接】mempalaceThe best-benchmarked open-source AI memory system. And its free.项目地址: https://gitcode.com/GitHub_Trending/me/mempalaceMemPalace 仓库的benchmarks/目录内置了多个记忆检索基准脚本其中 membench_bench.py 对应 MemBenchACL 2025数据集8,500 个多轮对话 QA 条目覆盖 10 个难度类别。这篇文章说明如何在本机运行这个基准复现仓库公布的 80.3% R5hybrid 模式、top-5并逐类别解读得分含义。整个过程不需要 API key、不需要 LLM、不需要 GPU只需要提前把数据集下载到本地。先确认指标口径检索召回率不是问答准确率MemBench 每个条目包含一段多轮对话message_list和一道选择题question、choices、ground_truth、target_step_id。脚本的评分方式是把该条目的所有对话轮次建入临时 ChromaDB 集合EphemeralClient跑完即弃用问题做检索取 top-K 候选RK 答案相关轮次target_step_id是否出现在 top-K 检索结果中。这一点在 BENCHMARKS.md 的 Notes on Reproducibility 中有明确界定这些分数衡量的是正确会话/轮次是否在 top-K 里即 retrieval recall不是端到端 QA 准确率由 LLM 用检索结果生成答案是否正确。两者不能直接比较解读得分时先记住这个口径。准备安装依赖与获取数据集安装环境在 mempalace 仓库根目录执行来自 benchmarks/README.md 的 Setup 一节uv sync --extra dev # or: pip install -e .[dev]benchmarks/README.md 列出的要求是Python 3.9chromadb唯一依赖基准运行期间不需要联网数据下载完成后、不需要 API key、不需要 GPU下载 MemBench 数据membench_bench.py 的文档头写明数据来源于import-myself/Membench仓库用法示例把数据目录放在/tmp/membench/MemData/FirstAgent。克隆到该位置即可对上示例路径git clone https://github.com/import-myself/Membench.git /tmp/membench克隆后MemData/FirstAgent目录下应包含各类别的 JSON 文件simple.json、highlevel.json、knowledge_update.json、comparative.json、conditional.json、noisy.json、aggregative.json、highlevel_rec.json、lowlevel_rec.json、RecMultiSession.json、post_processing.json。注意脚本对缺失的文件是静默跳过的——某个类别文件不在该类别就不会出现在结果里也不会报错。如果数据放在别处把下面命令的第一个参数改成你的FirstAgent目录即可。运行基准先用 --limit 做冒烟测试脚本用法示例中给出的快速测试命令只跑 50 条python benchmarks/membench_bench.py /tmp/membench/MemData/FirstAgent --limit 50确认能正常输出检索进度和结果后再跑全量。完整默认运行python benchmarks/membench_bench.py /tmp/membench/MemData/FirstAgent这条命令对应仓库公布的 80.3% 参考结果默认--mode hybrid、--top-k 5、全部类别、movie 主题外加数据文件中的 roles/events 题目共 8,500 条。可选参数来自脚本的 argparse 定义参数默认值用途--category全部类别只跑单个类别如--category highlevel可选值即上表 11 个类别文件对应的名称--topicmovie主题过滤movie、food、book--top-k5检索 top-k--limit0全量限制条目数用于快速测试--modehybridraw为纯嵌入检索hybrid先取 3 倍 top-k 候选再用谓词关键词重合度重打分取前 top-k--out自动命名结果 JSON 输出路径默认形如benchmarks/results_membench_{mode}_{category}_{topic}_top{k}_{时间戳}.json单类别示例脚本 docstring 中的原示例python benchmarks/membench_bench.py /tmp/membench/MemData/FirstAgent --category highlevel如果你想对比纯嵌入检索的效果可加--mode raw。注意仓库公布的 MemBench 参考分数是 hybrid top-5 口径要复现 80.3% 就用默认参数。输出长什么样运行中每 50 条打印一次进度[ 100/8500] running R5: 81.0%以上为按脚本打印格式示意的一行数值会随你的运行进度变化。结束时打印汇总块结构如下——数值部分为仓库公布的参考结果BENCHMARKS.md MemBench (ACL 2025) 一节并已核对提交在仓库的结果文件RESULTS — MemPal on MemBench (hybrid mode, top-5) Overall R5: 80.3% (6828/8500) By category: aggregative 99.3% (993/1000) comparative 98.4% (984/1000) knowledge_update 96.0% (960/1000) simple 95.9% (959/1000) highlevel 95.8% (479/500) lowlevel_rec 99.8% (499/500) highlevel_rec 76.2% (381/500) post_processing 56.6% (566/1000) conditional 57.3% (573/1000) noisy 43.4% (434/1000)脚本是确定性的——文档明确说明same data same script same result嵌入同样可复现所以同样的数据与参数应得到同样的数。结果 JSON 默认写入benchmarks/下仓库已提交一份完整结果文件 results_membench_hybrid_all_movie_top5_20260414_1656.json其中 8,500 条记录逐题包含 question、ground_truth、target_sids、retrieved_sids 和 hit 标志可以逐题审计而不是只看汇总。如何解读各难度类别的得分BENCHMARKS.md 给出的各含义说明类别R5含义aggregative99.3%组合多轮信息comparative98.4%跨轮次比较两个对象lowlevel_rec99.8%推荐类——低层knowledge_update96.0%随时间变化的事实simple95.9%单轮事实召回highlevel95.8%需要聚合的推理highlevel_rec76.2%推荐类——高层conditional57.3%条件推理post_processing56.6%后处理类任务noisy43.4%混入干扰项/无关信息Overall80.3%6828/8500解读时按文档给出的结论分三档看强项aggregative / comparative / lowlevel_recMemPalace 对多轮事实组合处理得很好这是它的核心设计逐字原文存储 嵌入检索覆盖的场景noisy43.4%是设计上的最难类别题目刻意混入与信号在嵌入层面无法区分的干扰信息文档明确称这是verbatim storage 的设计硬场景——噪声与信号在嵌入层面不可区分时检索就会退化。如果你的运行里 noisy 落在 43% 上下这是文档记录的预期行为不是配置错误conditional / post_processing57.3% / 56.6%属于推理密集型类别文档的表述是retrieval alone is insufficient——纯检索本身不够这解释了为什么它们停在 50%–60% 区间。如果某个类别分数明显偏离上表文档支持的核对方向是确认数据目录里对应类别的 JSON 文件齐全缺失会被静默跳过、运行参数与参考口径一致默认 hybrid top-5然后打开结果 JSON 逐题比对retrieved_sids与target_sids。限制全程无 LLMMemBench 这条基准只测检索召回不需要任何 API key这与 LongMemEval 等脚本中可选的--llm-rerank流程不同。80.3% 是 hybrid 模式 top-5 的口径。换成--mode raw或不同--top-k分数会不同仓库没有公布这些口径的 MemBench 参考值无法直接对照。主题过滤只影响 topic-keyed 文件movie/food/book数据中按 roles/events 组织的条目会始终被加载所以默认一次运行就是全部 8,500 条。继续深入基准总分、其他基准LongMemEval / LoCoMo / ConvoMem的复现命令benchmarks/README.md 与 benchmarks/BENCHMARKS.mdhybrid 评分细节关键词重打分公式等benchmarks/membench_bench.py 的run_membench逐题审计入口benchmarks/results_*.json结果文件每个文件包含每一题的检索明细【免费下载链接】mempalaceThe best-benchmarked open-source AI memory system. And its free.项目地址: https://gitcode.com/GitHub_Trending/me/mempalace创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表