知识库检索基准测试
ENGRA-KB-v2 论文规模套件(550 文档 / 400 查询)与 ENGRA-KB-v1 冒烟套件:在相同语料与查询上对比 BM25、传统分块 RAG 与结构化 Atom 索引。
为什么需要这套基准
多数知识库 / RAG 产品很少公开可复现的对照数据。ENGRA-KB-v2 提供 550 篇合成企业文档与 400 条查询(规模对齐 BEIR 子任务量级,如 SciFact ~300 query),可在本地离线运行;ENGRA-KB-v1(12/30)保留为快速冒烟。
对照系统
| ID | System | Family | Product analogue |
|---|---|---|---|
| bm25 | BM25 | 词法检索 | Confluence / Notion 关键词查找 |
| rag-chunk-512 | RAG fixed-512 | 传统 RAG | LangChain 默认 TextSplitter(512) |
| rag-chunk-256-overlap | RAG 256+128 overlap | 传统 RAG | PDF / 长文档 ingest 常见策略 |
| rag-sentence | RAG sentence | 传统 RAG | 按句边界分块再合并 |
| atom-structured | Structured atom | 结构化 KB | 印格 Persona / Scope / Topic / Atom 单向量模型 |
指标说明
- Recall@K
- Top-K 结果中是否出现任一标注相关文档(文档级,BEIR 常用协议)
- MRR
- 第一个相关文档排名的倒数均值,反映「首条命中」质量
- nDCG@K
- 考虑排序位置的增益,相关文档越靠前得分越高
- ms/q
- 单条查询平均检索耗时(本地 CPU,不含 LLM 生成)
- Task success
- Agent 代理:Top-K 上下文是否含 extractive gold span(`benchmark:memory:agent-task`)
- Token F1
- Gemini E2E QA:生成答案与 gold span 的 token F1(`benchmark:memory:gemini-qa`)
数据集 ENGRA-KB-v2(主) / v1(冒烟)
- ENGRA-KB-v2:550 篇英文企业知识文档(11 部门 × 55 主题 × 10 变体)
- 400 条查询:lexical 120、semantic 126、disambiguation 44、中文 80、cross-scope 30
- ENGRA-KB-v1:12 文档 / 30 查询,本地秒级冒烟
- fixtures:scripts/memory-benchmarks/fixtures/engra-kb-v2/(主)与 engra-kb-v1/
- 重新生成 v2:npm run benchmark:memory:generate-v2
如何运行
npm run benchmark:memory:v2 — 论文规模 ENGRA-KB-v2npm run benchmark:memory:ablation — Atom 元数据消融npm run benchmark:memory:agent-task — 上下文可答性(无 LLM)npm run benchmark:memory:gemini-qa -- --subset full — Gemini 端到端 QA(需 GEMINI_API_KEY)npm run benchmark:memory — ENGRA-KB-v1 冒烟(默认 --suite engra-kb-v1)npm run benchmark:mteb:install && npm run benchmark:mteb — MTEB 检索子任务(SciFact / NFCorpus / FiQA2018)- 快速冒烟(仅 BM25):npm run benchmark:memory:lexical
- 默认嵌入:Xenova/all-MiniLM-L6-v2(MTEB 侧等价 sentence-transformers/all-MiniLM-L6-v2)
与业界基准的关系
- MTEB:本仓库已集成 SciFact / NFCorpus / FiQA2018 三个检索子任务,成绩与官方 Leaderboard 对照见上方表格
- ENGRA-KB-v2:论文 / 产品分块策略对照(BM25 vs chunk-RAG vs Atom)
- Gemini E2E QA:冻结阅读器 + Top-5 上下文,测检索增益是否转化为可答性(见已公布结果页)
- ENGRA-KB-v1:开发时快速验证管线
- RAGAS:偏生成质量;上述基准均只评检索阶段,不调用 LLM 回答
使用注意
- 合成语料,不代表真实客户数据分布;发布对外数字时请注明套件版本与嵌入模型
- Gemini QA 若启用 gemini-embedding-2,与 MiniLM 主检索表不可混读
- 生产环境还有 rerank、混合检索、权限过滤等;本基准隔离检索内核便于公平对比
- 中文查询数量较少,多语言结论需谨慎