本地优先 AI 记忆系统,原文存储 + 语义检索,LongMemEval R@5 96.6%,无需 API Key,55k stars。

定位

MemPalace 是一个开源 AI Memory 引擎,核心设计哲学是 verbatim storage(原文存储)——不做摘要、不抽取、不改写,把对话原文存进结构化索引后再用语义搜索召回。

与 supermemory、agentmemory 等同类项目的最大区别在于:

  • 零 API 依赖:嵌入模型本地运行,核心召回路径全程离线
  • 三层宫殿结构:Wing(项目/人物)→ Room(主题)→ Drawer(原始内容),支持范围化检索
  • 基准透明:所有数字均附带可复现命令,不做跨评测横向对比

核心架构

存储层:Palace 结构

  • Wing:按项目或人物分区(如 ~/.claude/projects/ 挂载为一个 Wing)
  • Room:Wing 内的主题分组
  • Drawer:最小存储单元,存一段原始对话或文档片段

检索层:三档模式

模式R@5(LongMemEval 500题)LLM 依赖
Raw(纯语义,无启发式)96.6%无
Hybrid v4(关键词+时间邻近+偏好抽取,外推450题)98.4%无
Hybrid + LLM Rerank≥99%任意模型

其他基准:

  • LoCoMo Hybrid v5 R@10:88.9%(1986 题)
  • ConvoMem 平均召回:92.9%(250 题)
  • MemBench R@5:80.3%(8500 题)

后端(可插拔)

  • chromadb(默认)
  • sqlite_exact(本地精确向量,无需服务)
  • qdrant(REST)
  • pgvector(Postgres,需 pip install mempalace[pgvector])

MCP Server

29 个 MCP 工具,覆盖 palace 读写、知识图谱操作、跨 Wing 导航、Drawer 管理、Agent 日记。

安装

# 推荐:uv 隔离安装
uv tool install mempalace
mempalace init ~/projects/myapp
 
# 或 pipx
pipx install mempalace
 
# Docker(MCP Server 模式)
docker run -i --rm -v mempalace-data:/data mempalace

Claude Code MCP 配置:

{
  "mcpServers": {
    "mempalace": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-v", "mempalace-data:/data", "mempalace"]
    }
  }
}

核心工作流

# 挖掘内容进 palace
mempalace mine ~/projects/myapp                    # 项目文件
mempalace mine ~/.claude/projects/ --mode convos   # Claude Code 会话
 
# 语义搜索
mempalace search "why did we switch to GraphQL"
 
# 新会话加载上下文
mempalace wake-up

Claude Code 集成亮点

  • Auto-save hooks:周期性保存 + 压缩前自动保存,防止 30 天会话到期丢失
  • 每条消息级存储:mempalace sweep <transcript-dir> 按条存入 Drawer,幂等且支持续传
  • 快速上手检查单:claude-code-retention.html

知识图谱

内置时序实体关系图,基于本地 SQLite,支持 add/query/invalidate/timeline 操作。

嵌入模型

  • embeddinggemma-300m(多语言,100+ 语言,推荐)
  • all-MiniLM-L6-v2(英文,~30 MB)

需 ~300 MB 磁盘。通过 python -m mempalace.onboarding 初始化。

资源