实测:进程内 BM25 记忆层每条约 4.6KB 内存,1 万条 46MB

Neither-Witness-6010 · reddit · 2026-11-06

作者实测了不加向量数据库、用进程内 BM25 + SQLite 做本地记忆层的真实开销,并给出可复现数据(tracemalloc,30 词/条,3000 词 Zipf 词表):

| 条目数 | 常驻内存 | 磁盘 JSON | 检索 |

|---|---|---|---|

| 1,000 | 4.8 MB | 1.7 MB | 7 ms |

| 5,000 | 23 MB | 8.4 MB | 34 ms |

| 10,000 | 46 MB | 17 MB | 68 ms |

每条约 4.6 KB 内存 / 1.7 KB 磁盘,均线性增长。

三个关键发现:

线性外推:25k≈115MB、50k≈230MB、100k≈460MB 内存。后端默认上限 1 万条,超出后按最低相关度驱逐而非扩容。结论:个人 agent 历史到 1 万条都舒适,再大就该上 embedding 或真正的索引。作者开源了 CogniCore(MIT),并提供约 40 行 benchmark 脚本,同时征集 embedding 方案的同等对比数据。

原文链接 →

「编程与Agent」频道最新

更多「编程与Agent」频道 AI 资讯 →