跳到主要内容
印格

为什么结构化 Atom 优于固定分块 RAG

在 ENGRA-KB-v2(550 文档、400 查询)上,结构化 Atom Recall@10 达 75.3%,固定分块 RAG 为 54.8%——Library → Scope → Topic → Atom 如何改变检索。

分块大小的陷阱

多数 Agent 记忆栈仍把长期召回当作固定大小分块上的向量检索。512 token 会把表格切到边界外;2000 token 又会稀释相关性。团队最终在为每个语料调 chunk 大小,而不是定义记忆的存储单元。

分块流水线在更新时也很吃力:政策一改,就要重新嵌入重叠窗口并祈祷正确片段能浮上来。没有「三月定价决策」这类稳定标识——只有随措辞变化而漂移的 embedding。

Engra 以结构化 Atom 存储记忆——锚定在 Library → Scope → Topic → Atom 层级上的自洽事实与叙事。检索目标是 Atom,而非任意 token 窗口。

我们测了什么

ENGRA-KB-v2 是合成企业知识库:550 篇文档、400 条标注查询,所有方案共用同一 embedder(Xenova/all-MiniLM-L6-v2)。在同一语料上对比 BM25、固定 512 分块 RAG 与结构化 Atom 检索,便于本地复现。

结构化 Atom 达到 75.3% Recall@10,分块 RAG 为 54.8%,BM25 为 52.0%。MRR 排序一致——Atom 提升的是排序质量,不只是命中率。

完整 JSON 套件见 基准测试结果页方法论文档 说明指标定义。

Atom 为何胜出

Atom 贴合工程师对 Agent 记忆的思考方式:一项决策、一条客户偏好、一步 runbook——而不是「第 12 块的第 7 段」。每个 Atom 携带 Library、Scope、Topic 元数据(JSON 字段 libraryKey),向量打分前即可过滤。

Atom 之间的路径回链让唤醒与 L2 召回可解释,而非不透明的相似度分数。Agent 引用记忆时,可追踪注入了哪些 Atom ID 以及链接原因。

Engra 的 L0–L3 记忆栈(身份 → 叙事 → 主题召回 → 深度搜索)让 Agent 按任务加载合适深度,而不是塞满一个扁平上下文窗口。

分块何时仍会出现

入库时仍可能切分源文件以便嵌入,但检索单元始终是 Atom。附件与源文件预览单独计费——配额详见记忆库产品页。

若与自建分块流水线对比,请使用相同 embedder 与查询集。公平对比比绝对分数更重要。

接入你的技术栈

Cursor 类 Agent 用 Memory MCP + Agent Skills;编排服务用 REST API。两条路径同一 Atom 模型。

先在自有语料复现我们的数字,再与现有分块流水线对比。流程与政策类知识库通常收益最大。