MemPalace
[!info] 知识库定位 这是一篇 工具评估 / 使用笔记,重点回答”它值不值得用、怎么用、什么时候不用”。 底层概念链接到
related_concepts;真实项目落地链接到used_in_projects。
MemPalace 是一个 本地优先的 AI 记忆系统,将对话历史以原文逐字存储,通过语义搜索检索,核心路径不需要 LLM API,LongMemEval 基准测试 R@5 达 96.6%。
为什么需要它
LLM 的核心限制:上下文窗口有上限,会话结束记忆消失。每次新对话都要重新解释背景,跨项目的知识无法复用。
现有记忆方案的问题:大多数(mem0、Zep 等)会摘要或提取对话内容——信息在压缩中丢失。MemPalace 的核心差异:逐字原文存储,不总结、不提取、不转述,检索时拿到的是真实发生过的一段对话,而不是 AI 猜测的摘要。
适合需要跨会话、跨项目精确回忆过往对话的开发者和知识工作者。
核心优势
- 逐字原文存储(Verbatim):不对内容做摘要或提取,保留完整原文。检索结果就是真实说过的话,不是 AI 的二手转述
- 零 API 核心路径:纯语义搜索 R@5 达 96.6%(LongMemEval),不需要任何 LLM API Key,完全本地运行
- 结构化索引(宫殿隐喻):人和项目 → wings(翼),主题 → rooms(室),原文内容 → drawers(屉)。检索时可按范围限定,不用跑全量搜索
- 可插拔后端:默认 ChromaDB,可切换 SQLite Exact / Qdrant / pgvector,后端接口开放(
mempalace/backends/base.py) - 29 个 MCP 工具:作为 MCP Server 接入 Claude Code / Gemini CLI 等,覆盖读取、写入、知识图谱、跨翼导航
- 时序知识图谱:带有效期窗口的实体-关系图(SQLite),支持增删查和时间线回溯
性能表现
MemPalace 是目前开源 AI 记忆系统中 benchmark 最透明 的一个,所有结果可在仓库内复现。
LongMemEval(500 问,R@5)
| 模式 | R@5 | 需要 LLM |
|---|---|---|
| Raw(纯语义搜索) | 96.6% | ❌ 不需要 |
| Hybrid v4(held-out 450q) | 98.4% | ❌ 不需要 |
| Hybrid v4 + LLM rerank(500q) | ≥99% | ✅ 任意模型即可 |
其他基准
| 基准 | 指标 | 得分 | 备注 |
|---|---|---|---|
| LoCoMo(session, top-10) | R@10 | 60.3% → 88.9%(hybrid v5) | 1,986 问 |
| ConvoMem(250 项) | Avg recall | 92.9% | 5 类各 50 项 |
| MemBench(ACL 2025, 8,500 项) | R@5 | 80.3% | 全类别 |
官方刻意不做与 mem0 / supermemory / Zep 的横向对比表,理由是各家指标体系不同,放在一起不公平。这种态度比直接贴”吊打竞品”的表格更可信。
快速上手
安装
# 推荐:uv 工具安装(自动隔离环境,避免 PEP 668 冲突)
uv tool install mempalace
# 或 pipx
pipx install mempalace
# 或 pip(需在虚拟环境中)
python -m venv .venv && source .venv/bin/activate
pip install mempalace
# Docker 方式
docker build -t mempalace .
docker run -i --rm -v mempalace-data:/data mempalace
最小示例
# 初始化宫殿
mempalace init ~/projects/myapp
# 导入项目文件
mempalace mine ~/projects/myapp
# 导入 Claude Code 会话记录
mempalace mine ~/.claude/projects/ --mode convos
# 语义搜索
mempalace search "why did we switch to GraphQL"
# 新会话前加载上下文
mempalace wake-up
配置要点
- 后端选择:默认 ChromaDB(零配置)。切换用
--backend sqlite_exact/qdrant/pgvector - 嵌入模型:onboarding 时可选
embeddinggemma-300m(多语言,推荐)或all-MiniLM-L6-v2(仅英文,30MB) - Claude Code 集成:通过 MCP Server 接入,在
settings.json中配置 stdio 连接 - 自动保存 Hook:两个 Claude Code Hook 实现定期保存和上下文压缩前保存
- 命名空间隔离:Qdrant / pgvector 后端支持租户级命名空间隔离
Claude Code MCP 配置
{
"mcpServers": {
"mempalace": {
"command": "docker",
"args": ["run", "-i", "--rm", "-v", "mempalace-data:/data", "mempalace"]
}
}
}
适用场景
适合:
- Claude Code 重度用户:有大量项目会话记录需要跨会话检索——MCP 工具 + Hook 自动保存,开箱即用
- 隐私敏感场景:完全本地运行,默认不走任何外部 API,数据不出机器
- 精确回忆需求:需要”当时到底说了什么”的逐字原文,而不是模糊的摘要
- 多 Agent 环境:每个 Agent 有独立的 wing 和 diary,运行时通过
mempalace_list_agents发现 - 需要 benchmark 验证:所有基准可复现,适合对数据敏感的技术选型
不适合:
- 需要跨设备同步:本地优先架构,没有内置云同步(需自行用 Qdrant/pgvector 外部后端解决)
- 轻量记忆需求:如果只需要 Claude Code 简单的
CLAUDE.md记忆,MemPalace 太重了 - 非技术用户:CLI 工具,需要命令行和 Python 环境,无 GUI
- 需要摘要型记忆:如果你的场景是”帮我把长对话压缩成要点”,MemPalace 不是这个定位(它只存原文)
已知坑 & 注意事项
[!warning] README 与代码库不一致(#27, 39 评论, Open) GitHub 上最高评论数的 open issue 指出 README 中的多项声明与实际代码存在差距。虽然项目迭代快、积极修复中,但说明 文档可能超前于实现,评估时以实际运行为准。
[!warning] 多语言嵌入模型支持不完善(#442, 27 评论, Open) 默认的
all-MiniLM-L6-v2仅支持英文。embeddinggemma-300m号称多语言但中文效果未明确验证。对中文用户来说,检索精度可能打折。
[!warning] HNSW 图损坏 & PreCompact 死锁(#976, 已修复) 曾出现 ChromaDB 底层 HNSW 索引损坏和上下文压缩前 Hook 死锁的 bug,已在后续版本修复。但说明底层存储层在极端情况下不够健壮。
- 项目极年轻:2026-04-05 创建,仅 2 个月历史,55k stars 增速惊人但意味着大量用户在测而非在生产用
- 586 个 Open Issues:2 个月积累 586 个未关闭 issue,说明社区活跃但问题也不少
- Ingest 不完全幂等(#1628):部分 miner 重新运行时会覆盖而非追加,正在修复中
- LanceDB 后端尚未完成(#574):目前可用后端为 ChromaDB / SQLite Exact / Qdrant / pgvector
- 冒牌网站警告:官方明确提醒有仿冒域名分发恶意软件,只认 GitHub / PyPI / mempalaceofficial.com
竞品对比
| 维度 | MemPalace | mem0 | supermemory | claude-mem |
|---|---|---|---|---|
| 存储方式 | 逐字原文 | 摘要 + 提取 | 摘要型 | 文本追加 |
| 需要 API Key | ❌ 核心不需要 | ✅ 依赖 LLM 提取 | ✅ | ❌ |
| 本地运行 | ✅ 默认本地 | 部分支持 | ✅ | ✅ |
| Benchmark | 透明可复现 | 有但不透明 | 较少 | 无 |
| MCP 工具 | 29 个 | 有 | 有 | 无 |
| 知识图谱 | ✅ 时序 ER 图 | ✅ | ❌ | ❌ |
| 上手难度 | 中(CLI + 配置) | 中 | 低 | 极低 |
| Stars | 55k | ~25k | ~10k | ~5k |
| 项目年龄 | 2 个月 | ~1.5 年 | ~1 年 | ~1 年 |
| 稳定性 | ⚠️ 早期 | 较稳定 | 一般 | 稳定 |
选择建议:
- 要精确回忆(逐字原文)+ 隐私优先 → MemPalace(核心路径零 API)
- 要跨平台多 LLM 统一记忆 → mem0(生态更成熟,支持更多 LLM)
- Claude Code 用户想要最简单的记忆持久化 → claude-mem(零配置,直接装)
- 想快速评估 AI 记忆系统能力 → MemPalace 的 benchmark 可复现,适合做技术验证
生态 & 社区
- 维护状态:极其活跃。最近 push 2026-06-08(昨天),迭代速度快
- Stars 增速:55k stars / 2 个月,开源 AI 项目中的现象级增长
- 文档质量:较好。有独立文档站 mempalaceofficial.com,README 结构清晰,但存在 #27 指出的文档超前问题
- 周边生态:Claude Code Hook、MCP Server、Docker 支持、Hermes Agent 集成(#1684 进行中)
- 社区活跃度:Discord + GitHub Issues,响应积极,但 586 open issues 说明排雷压力也大
引入评估
| 维度 | 评分(/5) | 备注 |
|---|---|---|
| 上手难度 | 3 | 安装简单(uv tool install),但概念多(wing/room/drawer),CLI 参数不少 |
| 文档完善度 | 4 | 独立文档站 + CLI 参考 + Python API 文档,但 README 与代码有差距(#27) |
| 社区活跃 | 5 | 55k stars / 2 个月,极速迭代,Discord 活跃 |
| 性能 | 5 | benchmark 透明、可复现、结果领先 |
| 稳定性 | 2 | 仅 2 个月历史,586 open issues,曾出现 HNSW 损坏和死锁 |
| 综合 | ⭐⭐⭐ | 特定场景适用 |
结论:观望 — MemPalace 在技术层面极具吸引力:逐字原文存储、零 API 核心路径、透明可复现的 benchmark、29 个 MCP 工具。但两个现实问题限制当前推荐度:(1) 项目仅 2 个月,586 个 open issues,有高赞 issue 质疑 README 与代码库不一致;(2) 多语言嵌入模型支持不完善,中文场景效果待验证。建议等 v4.x 稳定后、多语言模型支持落地(#442)再引入。目前可以先用其 benchmark 方法论评估你自己的记忆需求。
推荐引入版本:暂不推荐特定版本,建议观望至多语言嵌入模型支持落地后
相关链接
前置知识:RAG · 向量数据库 · MCP · 语义搜索 · 知识图谱 竞品:mem0 · supermemory · claude-mem · agentmemory 底层概念:嵌入模型 · HNSW · ChromaDB 使用场景:Claude Code · AI Agent
个人备注
{留白,供后续补充实际使用心得}