星标数:60546★ Fork数:7669 《mempalace:基准领先的开源 AI 记忆系统》
MemPalace 是一个本地优先的 AI 记忆系统。它将你的对话历史以逐字原文的形式存储,并通过语义搜索进行检索——不做摘要、不做抽取、不做改写。索引是结构化的:人物和项目成为「侧翼」(wings),主题成为「房间」(rooms),原始内容存放在「抽屉」(drawers)中,因此搜索可以按范围限定,而不是面对一个扁平的语料库。项目在 LongMemEval 上的原始检索指标为 96.6% R@5,全程零 API 调用。

检索层是可插拔的:当前默认后端为 ChromaDB,接口定义在 mempalace/backends/base.py 中,其他后端可以直接接入,无需改动系统的其余部分。除非你主动选择,否则没有任何数据离开你的机器。
项目还提供了三种 Agent 技能:mempalace 用于引导安装与运维,mempalace-recall 用于「先回忆再回答」的检索,mempalace-task 用于 logstream 委派。
主要特点
- 本地优先,数据默认不离开本机,零 API 调用
- 逐字原文存储,不摘要、不抽取、不改写
- 结构化索引(wings / rooms / drawers),搜索可限定范围
- 检索后端可插拔,接口定义在 mempalace/backends/base.py,默认使用 ChromaDB
- 提供 CLI、MCP 服务器与多种安装方式(uv、pipx、pip、Docker)
- 内置原生向量检索:rust_exact 与 sqlite_exact 共用同一 sqlite_exact.sqlite3 数据库文件,零数据迁移
安装与快速开始
通过技能引导安装(由编码 Agent 完成系统检测、Python 包安装与 MCP 配置):
npx skills add MemPalace/mempalace
直接使用 CLI 安装(推荐 uv,避免 PEP 668 错误与依赖冲突):
uv tool install mempalace
mempalace init ~/projects/myapp
或使用 pipx:
pipx install mempalace
在已激活的虚拟环境中使用普通 pip:
python -m venv .venv && source .venv/activate
pip install mempalace
使用 Docker(多架构镜像,支持 amd64 与 arm64,数据持久化在 /data 卷):
docker pull ghcr.io/mempalace/mempalace:latest
# 以 stdio 运行 MCP 服务器(注意 -i 参数,JSON-RPC 需要 stdin)
docker run -i --rm -v mempalace-data:/data ghcr.io/mempalace/mempalace
# 运行 CLI 命令示例
docker run --rm -v mempalace-data:/data -v /path/to/project:/work:ro
ghcr.io/mempalace/mempalace mine /work
docker run --rm -v mempalace-data:/data ghcr.io/mempalace/mempalace search "why GraphQL"
存储后端
- chroma(默认):本地嵌入式,开箱即用,无需配置
- sqlite_exact:本地精确 NumPy 检索
- rust_exact:本地原生向量检索,与 sqlite_exact 共用同一数据文件
- milvus:本地 Lite 或服务器模式,需安装 mempalace[milvus],通过 MEMPALACE_MILVUS_URI 配置
- qdrant:REST 服务器模式,通过 MEMPALACE_QDRANT_URL 配置
- pgvector:Postgres 服务器模式,需安装 mempalace[pgvector],通过 MEMPALACE_PGVECTOR_DSN 配置
通过 –backend <name>、MEMPALACE_BACKEND=<name> 或 config.json 中的 “backend”: “<name>” 进行选择,所有非默认后端均为可选启用。
📊 本项目 GitHub 星标数:60546。最后更新:2026-11-13,发布:2026-11-12。项目地址:https://github.com/MemPalace/mempalace
