MemPalace/mempalace
摘要
MemPalace 是一款本地优先的开源 AI 记忆工具,能够逐字存储对话历史,并通过语义搜索进行检索,在 LongMemEval 上达到 96.6% R@5,无需任何 API 调用或 LLM。它采用可插拔后端架构,提供 CLI 界面,支持 Claude Code、Gemini CLI 以及 MCP 兼容工具。
查看缓存全文
缓存时间: 2026/06/05 14:08
MemPalace/mempalace 源码:https://github.com/MemPalace/mempalace
MemPalace
本地优先的 AI 记忆。逐字存储,可插拔后端,LongMemEval 原始 R@5 96.6%——零 API 调用。
警惕冒牌网站。 MemPalace 没有任何其他官方网站。唯一的官方来源是 本 GitHub 仓库 (https://github.com/MemPalace/mempalace)、PyPI 包 (https://pypi.org/project/mempalace/) 以及 mempalaceofficial.com (https://mempalaceofficial.com) 上的文档。任何其他域名(包括
.tech、.net或其他.com变体)均为冒牌货,可能分发恶意软件。详情和时间线请参阅:docs/HISTORY.md。
Claude Code 会话 30 天后过期,除非连接了自动保存钩子。 阅读这个 → (https://github.com/MemPalace/mempalace/discussions/1388)
需要最短的恢复/设置路径?使用 Claude Code 保留设置清单 (https://mempalaceofficial.com/guide/claude-code-retention.html)。
这是什么
MemPalace 将会话历史存储为逐字文本,并通过语义搜索进行检索。它不会做摘要、提取或改写。索引是结构化的——人物和项目成为翼(wings),话题成为房间(rooms),原始内容存放在**抽屉(drawers)**中——因此搜索可以设定范围,不必在扁平语料库上运行。
检索层是可插拔的。当前默认后端是 ChromaDB;接口定义在 mempalace/backends/base.py 中,可替换其他后端而无需改动系统其余部分。除非你主动选择,否则数据不会离开你的机器。
架构、概念和挖掘流程:mempalaceofficial.com/concepts/the-palace (https://mempalaceofficial.com/concepts/the-palace.html)。
安装
MemPalace 提供了 CLI,因此建议在隔离环境中安装,以避免在 Debian/Ubuntu/Homebrew 的 Python 上出现 PEP 668 错误,并防止 mempalace 的依赖项(chromadb、numpy、grpcio 等)与全局 site-packages 中的其他包冲突。
我们推荐使用 uv (https://docs.astral.sh/uv/)——uv tool install 会将 mempalace CLI 安装在隔离环境中并添加到 PATH:
uv tool install mempalace
mempalace init ~/projects/myapp
如果你更喜欢 pipx (https://pipx.pypa.io/),使用方式相同:pipx install mempalace。
仅当你在激活的虚拟环境中且明确希望 import mempalace 可用时,才使用普通的 pip:
python -m venv .venv && source .venv/bin/activate
pip install mempalace
快速开始
# 将内容挖掘到宫殿中
mempalace mine ~/projects/myapp # 项目文件
mempalace mine ~/.claude/projects/ --mode convos # Claude Code 会话(使用 --wing 按项目限定范围)
# 搜索
mempalace search "为什么我们改用 GraphQL"
# 为新会话加载上下文
mempalace wake-up
有关 Claude Code、Gemini CLI、MCP 兼容工具以及本地模型的使用,请参阅 mempalaceofficial.com/guide/getting-started (https://mempalaceofficial.com/guide/getting-started.html)。
基准测试
下面所有数字均可使用 benchmarks/BENCHMARKS.md 中的命令从本仓库重现。每个问题的完整结果文件已提交在 benchmarks/results_* 目录下。
LongMemEval —— 检索召回率(R@5,500 个问题):
| 模式 | R@5 | 是否需要 LLM |
|---|---|---|
| 原始(语义搜索,无启发式,无 LLM) | 96.6% | 不需要 |
| Hybrid v4,保留 450 个问题(在 50 个开发集上调参,训练时未见) | 98.4% | 不需要 |
| Hybrid v4 + LLM 重排序(全部 500 个) | ≥99% | 任何有能力的模型 |
原始 96.6% 无需 API 密钥、无需云端、整个流程无需 LLM。混合管道增加了关键词提升、时间邻近度提升以及偏好模式提取;保留的 98.4% 是诚实的、可泛化的数字。重排序管道使用 LLM 阅读器,从检索到的前 20 个会话中选出最佳候选。它适用于任何有合理能力的模型——我们已经用 Claude Haiku、Claude Sonnet 和通过 Ollama Cloud 的 minimax-m2.7 复现过(不依赖 Anthropic)。原始与重排序之间的差距与模型无关;我们不把“100%”作为头条,因为最后的 0.6% 是通过检查具体错误答案达到的,benchmarks/BENCHMARKS.md 将其标记为“针对测试进行训练”。
其他基准测试(完整结果见 benchmarks/BENCHMARKS.md):
| 基准测试 | 指标 | 得分 | 备注 |
|---|---|---|---|
| LoCoMo(会话,top-10,无重排序) | R@10 | 60.3% | 1,986 个问题 |
| LoCoMo(hybrid v5,top-10,无重排序) | R@10 | 88.9% | 同一数据集 |
| ConvoMem(所有类别,250 项) | 平均召回率 | 92.9% | 每类别 50 项 |
| MemBench(ACL 2025,8,500 项) | R@5 | 80.3% | 所有类别 |
我们刻意不加入与 Mem0、Mastra、Hindsight、Supermemory 或 Zep 的并排比较。这些项目在不同的数据拆分上使用不同的指标,将检索召回率与端到端 QA 准确率并列并非诚实的比较。请参阅每个项目自己的研究页面以了解其公布的数字。
重现所有结果:
git clone https://github.com/MemPalace/mempalace.git
cd mempalace
uv sync --extra dev
# 或:pip install -e ".[dev]"
# 数据集下载命令见 benchmarks/README.md
uv run python benchmarks/longmemeval_bench.py /path/to/longmemeval_s_cleaned.json
知识图谱
MemPalace 包含一个带有效性窗口的时间实体关系图——支持添加、查询、作废、时间线——由本地 SQLite 驱动。用法和工具参考:mempalaceofficial.com/concepts/knowledge-graph (https://mempalaceofficial.com/concepts/knowledge-graph.html)。
MCP 服务器
29 个 MCP 工具涵盖宫殿读取/写入、知识图谱操作、跨翼导航、抽屉管理和代理日记。安装及完整工具列表:mempalaceofficial.com/reference/mcp-tools (https://mempalaceofficial.com/reference/mcp-tools.html)。
代理
每个专业代理在宫殿中拥有自己的翼和日记。运行时可通过 mempalace_list_agents 发现——不会给系统提示增加负担:mempalaceofficial.com/concepts/agents (https://mempalaceofficial.com/concepts/agents.html)。
自动保存钩子
两个 Claude Code 钩子可以定期保存并在上下文压缩前保存:mempalaceofficial.com/guide/hooks (https://mempalaceofficial.com/guide/hooks.html)。如果你时间紧迫,请从 Claude Code 保留设置清单 (https://mempalaceofficial.com/guide/claude-code-retention.html) 开始:连接钩子,备份现有的 JSONL 转录,并用 mempalace mine ~/.claude/projects/ --mode convos 回填它们。要在钩子产生的文件级块之上实现每条消息的召回,请定期运行 mempalace sweep <wing>——它会为每条用户/助手消息存储一个逐字抽屉,幂等且可从中断处恢复。
要求
- Python 3.9+
- 一个向量存储后端(默认为 ChromaDB)
- 约 300 MB 磁盘空间用于嵌入模型。入门 (
python -m mempalace.onboarding) 提供embeddinggemma-300m(多语言,100+ 语言,推荐)或all-MiniLM-L6-v2(仅英文,约 30 MB)。详情和迁移说明见mempalace/embedding.py的文档字符串。核心基准测试路径无需 API 密钥。
文档
- 快速入门 → mempalaceofficial.com/guide/getting-started (https://mempalaceofficial.com/guide/getting-started.html)
- CLI 参考 → mempalaceofficial.com/reference/cli (https://mempalaceofficial.com/reference/cli.html)
- Python API → mempalaceofficial.com/reference/python-api (https://mempalaceofficial.com/reference/python-api.html)
- 完整基准测试方法 → benchmarks/BENCHMARKS.md
- 发布说明 → CHANGELOG.md
- 更正和公开通知 → docs/HISTORY.md
贡献
欢迎 PR。请参阅 CONTRIBUTING.md。
许可证
MIT —— 见 LICENSE。
相似文章
Memdex
Memdex 将每一次 AI 对话转化为可复用的本地记忆,让用户能够捕捉并重复利用 AI 交互中的洞见。
YourMemory
<p>通过自剪枝 MCP 记忆,Token 浪费减少 84%</p> <p> <a href="https://www.producthunt.com/products/yourmemory?utm_campaign=producthunt-atom-posts-feed&utm_medium=rss-feed&utm_source=producthunt-atom-posts-feed">讨论</a> | <a href="https://www.producthunt.com/r/p/1128311?app_id=339">链接</a> </p>
MemoryOS —— 具备时序知识图谱的 AI 智能体记忆,实现 9ms 摄取与 78ms 检索
MemoryOS 是一款开源、可自托管的 AI Agent 记忆工具,它利用时序知识图谱技术,在 LongMemEval-s 基准测试中实现了 86.2% 的准确率,并以 78 毫秒的快速检索速度著称。
rohitg00/agentmemory
agentmemory 是一个开源的持久化记忆层,专为 AI 编程智能体(Claude Code、Cursor、Gemini CLI、Codex CLI 等)设计。它通过知识图谱、置信度评分和混合搜索技术,借助 MCP、Hooks 或 REST API,为智能体提供跨会话的长期记忆能力。该项目基于 iii 引擎构建,无需外部数据库,提供 51 个 MCP 工具。
我的 Claude 夜里做梦,醒来后记得一切。比记忆宫殿更好用。
作者发布了 IaI-mcp,这是一个开源本地守护进程,通过逐字存储对话并管理上下文检索(无需手动提示),为 Claude 会话提供持久化、分层记忆。