Show HN: Mnemo – 本地优先的AI记忆层,适用于任何大语言模型(Rust, SQLite, petgraph)
Mnemo 是一个旁路服务,通过提取实体和关系构建知识图谱,为LLM提供持久记忆。它支持本地或云端LLM,响应时间低于50毫秒,无需云依赖。提供Docker、二进制和Python SDK部署方式。
Mnemo 是一个开源项目,旨在为大语言模型(LLM)提供持久化的记忆层。与传统的无状态对话不同,Mnemo 通过监控每次交互,自动提取命名实体及关系,并构建存储在 SQLite 中的知识图谱,从而在后续对话中注入相关上下文。整个过程在 50 毫秒内完成,无需依赖任何云服务。
Mnemo 采用 Rust 编写,核心由四个 crate 组成:mnemo-core 负责实体提取、图操作和检索引擎;mnemo-api 提供 Axum REST API;mnemo-cli 是命令行工具;mnemo-bench 用于性能基准测试。其工作流程简单高效:用户通过 POST /ingest 提交文本,Mnemo 调用 LLM 提取实体并更新图谱;后续通过 POST /retrieve 获取经过排序和排名的上下文,自动注入到系统提示中。
部署选项灵活多样。用户可以通过 Docker Compose 一键部署(推荐与 Ollama 配合使用),也可直接运行预编译的二进制文件,或通过 Python SDK 集成。支持多个 LLM 提供商:Ollama(完全本地,免费)、OpenAI、Anthropic 及其他兼容 OpenAI 接口的后端。
API 设计完整,涵盖健康检查、记忆存储与检索、实体和块的管理、全文搜索以及一键清空所有记忆等功能。所有端点返回 JSON。此外,还提供丰富的配置选项,包括环境变量和 TOML 配置文件。
性能方面,在 Apple M2 上的调试构建测试显示,实体插入延迟约 0.12 毫秒,完整检索管线约 4.2 毫秒;发布构建预计快 3–5 倍。项目包含 122 个 Rust 测试、21 个 Python 测试和 12 个基准测试。
Mnemo 以 MIT 许可证开源,欢迎贡献。更多细节请参阅 GitHub 仓库。