MemoLite
为 AI Agent 提供本地优先的长期记忆层,将事件、结构化事实和会话上下文统一存储、检索与回溯。
MemoLite 是面向 AI Agent 与 LLM 应用的轻量级记忆基础设施,适合开发本地 Agent、桌面助手和内部知识工具的人。它主要解决两个问题:模型只依赖近期提示词时容易跨会话遗忘;传统记忆方案又常要维护关系、图和向量等多套独立服务。MemoLite 将这些能力收敛为本地优先的单机服务。
功能与记忆链路
一条记忆写入后,原始对话或事件先作为 Episode 保存,再按句子拆成便于检索的 Derivative 片段并生成向量;Derivative 与原始 Episode 的来源关系会被保留下来。检索时可以选择事件记忆、语义记忆或混合模式,先按会话、角色和事件类型缩小范围,再做相似度排序,并可选用 CrossEncoder 重排,最后补回命中事件前后的对话。事实、偏好、分类和标签会进入结构化语义记忆,并通过 citation 回溯到来源事件;当前会话则由短期窗口保存,超出容量的旧消息被压缩为摘要。
实现所使用的服务
SQLite 通过 SQLAlchemy 与 aiosqlite 保存项目、会话、原始事件、结构化事实、配置和引用,是数据一致性的事务锚点。Kùzu 作为嵌入式图数据库,记录 Episode、Derivative 及其派生关系,支撑向量命中后的来源回溯。向量兼容层把 embedding 以二进制形式保存在 SQLite;当前默认由 Python 计算余弦相似度,适合轻量和单机数据集。文本向量默认使用无需模型下载的 hash 方案并结合 Jieba,也可切换 Sentence Transformers;检索重排可选 CrossEncoder。
对外服务由 FastAPI 与 Uvicorn 提供 REST 接口,FastMCP 同时提供 stdio 和 HTTP 两种 MCP 接入,项目还包含 Python SDK、TypeScript 客户端和 OpenClaw 插件。OpenClaw 可在 Agent 启动前召回相关记忆,并在一次成功运行结束后自动记录消息;macOS LaunchAgent 与 Linux systemd user service 用于后台托管。项目最终完成了“写入、结构化、检索、回溯、删除、修复”的端到端原型,让 Agent 在本地文件型存储上获得可持久、可检索且可解释的记忆,同时用统一接口降低接入与维护成本。