为什么你的 OpenClaw 又贵又健忘?QMD 和 MemOS 的真相在这里
相信大家都已经知道 OpenClaw 的 Token 烧的太快了,看着都肉疼。记忆也不咋地,只有最基础的记忆,然后记住的也不是你想要的。最近 MemOS 针对 OpenClaw 插件也出来了,操作更容易上手。本文从多方面、多维度展开对比。话不多说,开干~
相信大家都已经知道 OpenClaw 的 Token 烧的太快了,看着都肉疼。记忆也不咋地,只有最基础的记忆,然后记住的也不是你想要的。最近 MemOS 针对 OpenClaw 插件也出来了,操作更容易上手。本文从多方面、多维度展开对比。话不多说,开干~
一、核心架构对比
QMD(Query Memory Database)
架构特点:
- 本地优先:完全运行在本地机器上,无需云服务
- SQLite + Vector 扩展:基于 SQLite 数据库 + sqlite-vec 向量扩展
- 混合搜索:支持向量搜索 + 关键词搜索的混合模式
- 文件源头:Markdown 文件是源头,SQLite 是索引层
技术栈:
Markdown 文件 (源头)
↓
分块处理 (400-token chunks, 80-token overlap)
↓
向量嵌入 (gemma-300M-Q8_0 模型)
↓
SQLite + sqlite-vec (本地存储)
↓
混合搜索引擎 (向量 + 关键词)
数据流:
- 存储位置:
~/.openclaw/memory/下的 SQLite 数据库 - 核心表:5 个核心表追踪内存条目、源文件、嵌入向量
- 索引:全文搜索 token 表 + 元数据表(创建时间戳等)
MemOS(Memory Operating System)
架构特点:
- 三层架构:API 层 → 内存调度管理层 → 存储基础设施层
- 云 + 本地混合:支持云 API 部署或自托管
- 图数据库:基于图结构的内存组织,可检查和编辑
- 多源支持:原生支持文本、图像、工具追踪、人设
技术栈:
多源输入 (文本/图像/工具调用/人设)
↓
MemCube (核心组织单元)
↓
内存调度管理 (生命周期、多源追踪、实体标签)
↓
图数据库存储 (可检查、可编辑)
↓
统一 API 接口 (MIP - Memory Interchange Protocol)
数据流:
- 存储方式:MemCube 容器 + 图数据库
- 跨模型互操作:通过 MIP 协议支持跨模型、跨设备
- 内存管理:完整的生命周期管理(创建、删除、更新、回滚)
二、功能对比表
| 功能维度 | QMD | MemOS |
|---|---|---|
| 部署方式 | 本地优先(必须本地) | 云 API + 自托管 |
| 数据存储 | SQLite + sqlite-vec | 图数据库 + MemCube |
| 搜索方式 | 向量搜索 + 关键词混合 | 向量搜索 + 图遍历 |
| 支持的数据类型 | 文本(Markdown) | 文本、图像、工具调用、人设 |
| 分块策略 | 固定 400-token,80-token 重叠 | 可定制化分块 + 上下文唤醒 |
| 内存生命周期 | 基础(存储/检索) | 完整(创建/删除/更新/回滚) |
| 跨模型支持 | 不支持 | 支持(MIP 协议) |
| 可编辑性 | 间接(编辑源文件) | 直接(图结构可编辑) |
| 隐私性 | 完全本地,最高隐私 | 取决于部署方式 |
| 启动速度 | 快(本地索引) | 中等(取决于网络) |
| 依赖项 | Node.js + npm | Node.js + npm + API 密钥 |
三、性能对比
QMD 性能特性
优势:
- 检索时间恒定:约 100ms,不随历史增长而变慢
- 零网络延迟:完全本地运行,无网络往返时间
- 启动快速:本地 SQLite 索引,无需初始化
- Token 消耗低:通过向量检索只加载最相关的历史记忆
劣势:
- 单机限制:无法跨设备同步
- 嵌入模型固定:使用 gemma-300M-Q8_0,无法切换
- 扩展性有限:SQLite 在大规模数据下性能下降
MemOS 性能特性
优势:
- 可扩展性强:支持分布式部署
- 灵活的嵌入模型:可选择不同的嵌入模型
- 跨设备同步:云部署时支持多设备访问
- 上下文唤醒:智能召回前后文本,提高语义连贯性
劣势:
- 网络依赖:云部署时依赖网络连接
- API 调用成本:云版本需要付费 API 密钥
- 隐私考虑:数据需要上传到服务器
- 启动延迟:首次连接需要初始化
四、配置复杂度对比
QMD 配置
安装步骤:
见我上一篇文章:OpenClaw 3.8 QMD 记忆系统完整配置指南(Windows)
MemOS 配置
安装步骤:
-
获取MemOS API Key:https://memos-dashboard.openmem.net/cn/apikeys/
-
配置API Key到OpenClaw
在终端中执行以下命令,将API Key写入OpenClaw配置目录:
# 写入API Key(替换为你的实际密钥) echo "MEMOS_API_KEY=mpg-你的密钥" > ~/.openclaw/.env # 可选:自定义用户ID(不设置则默认为openclaw-user) echo "MEMOS_USER_ID=my-custom-id" >> ~/.openclaw/.env关键说明 :
MEMOS_API_KEY:必填,上一步获取的密钥MEMOS_USER_ID:可选,用于区分不同用户/实例的记忆空间。多个OpenClaw用同一个user_id即可共享记忆池
-
安装MemOS插件
执行插件安装命令:
# 安装MemOS Cloud插件 openclaw plugins install github:MemTensor/MemOS-Cloud-OpenClaw-Plugin安装完成后重启网关:
openclaw gateway restart -
验证插件是否启用
# 检查插件配置 cat ~/.openclaw/openclaw.json | grep memos-cloud-openclaw-plugin # 或查看插件列表 openclaw plugins list如果输出中包含
"enabled": true或插件状态为loaded,说明安装成功
五、MemOS 一键快速接入编辑器
快速接入步骤:
第一步:申请 API Key
MemOS 官方 API 密钥申请:https://memos-dashboard.openmem.net/cn/apikeys/
第二步:配置 MCP 服务
在 Kiro/VS Code/Cursor 中配置 MCP 服务器:
- 点击最左侧面板的"幽灵"形状的图标
- 找到 “MCP Servers” 列表
- 点击 “+” 添加新服务器
第三步:完整配置示例
编辑 ~/.kiro/settings/mcp.json(或对应编辑器的 MCP 配置文件):
{
"mcpServers": {
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"],
"env": {},
"disabled": true,
"autoApprove": []
},
"memos": {
"command": "npx",
"args": ["-y", "@memtensor/memos-api-mcp"],
"env": {
"MEMOS_API_KEY": "your-api-key",
"MEMOS_USER_ID": "your-user-id"
},
"disabled": false,
"autoApprove": [
"add_message",
"search_memory",
"delete_memory",
"add_feedback"
]
},
"md5-calculator": {
"command": "npx",
"args": ["-y", "md5-mcp"],
"disabled": false,
"autoApprove": ["calculateMD5"]
}
}
}
配置说明:
MEMOS_API_KEY:从官方申请的 API 密钥MEMOS_USER_ID:唯一标识用户的 IDautoApprove:自动批准的操作列表(无需每次确认)
第四步:重启编辑器
重启 Kiro/VS Code/Cursor,MemOS 会自动初始化并连接。
支持的编辑器:
- Kiro
- VS Code
- Cursor
- Claude(通过 MCP 协议)
五、使用场景对比
QMD 适用场景
最佳用途:
- 本地开发和测试
- 对隐私要求极高的应用
- 离线工作环境
- 单用户、单机部署
- 需要快速响应的场景
不适合:
- 多用户协作
- 跨设备同步需求
- 大规模企业部署
- 需要灵活嵌入模型的场景
MemOS 适用场景
最佳用途:
- 多用户、多设备协作
- 企业级部署
- 需要灵活配置的应用
- 跨模型、跨平台场景
- 需要完整内存生命周期管理
不适合:
- 完全离线环境
- 对隐私要求极高的场景
- 简单的单机应用
- 网络不稳定的环境
六、成本对比
| 成本项目 | QMD | MemOS |
|---|---|---|
| 软件许可 | 免费(开源) | 免费(开源)+ 云 API 付费 |
| 云服务 | 无(完全本地) | 按使用量计费(API 调用) |
| 硬件要求 | 低(本地 SQLite) | 中等(需要网络) |
| 维护成本 | 低(无依赖) | 中等(需要管理 API 密钥) |
| 总体成本 | 最低 | 中等到高 |
七、数据隐私对比
QMD 隐私保护
隐私等级:🔒🔒🔒 最高
- 所有数据存储在本地 SQLite 数据库
- 无网络传输,无第三方访问
- 完全符合 GDPR、CCPA 等隐私法规
- 用户拥有完全的数据所有权
存储位置:
~/.openclaw/memory/
├── memory.sqlite # 主数据库
├── embeddings/ # 向量存储
└── metadata/ # 元数据
MemOS 隐私保护
隐私等级:🔒🔒 中等(取决于部署方式)
云部署:
- 数据上传到 MemOS 服务器
- 需要信任第三方服务提供商
- 受服务提供商的隐私政策约束
自托管:
- 可以部署在自己的服务器上
- 隐私等级接近 QMD
- 需要自己维护基础设施
八、技术深度对比
QMD 技术栈
核心技术:
- 向量嵌入:gemma-300M-Q8_0(固定)
- 向量数据库:sqlite-vec(SQLite 扩展)
- 搜索算法:混合搜索(向量 + BM25 关键词)
- 分块策略:固定 400-token,80-token 重叠
优化特性:
- 向量搜索时间复杂度:O(n)(线性扫描)
- 关键词搜索:O(log n)(B-tree 索引)
- 混合搜索:加权组合
MemOS 技术栈
核心技术:
- 向量嵌入:可配置(支持多种模型)
- 图数据库:自定义图结构
- 搜索算法:图遍历 + 向量搜索
- 分块策略:可定制化 + 上下文唤醒
优化特性:
- 图遍历支持复杂关系查询
- 上下文唤醒提高语义连贯性
- 相关性过滤(0~1 阈值)
- 原文 + 记忆的协调存储
九、选择建议
选择 QMD 如果你:
- 需要完全的数据隐私
- 在离线环境工作
- 追求最快的响应速度
- 是单用户、单机部署
- 希望零成本运行
- 不需要跨设备同步
选择 MemOS 如果你:
- 需要多用户协作
- 需要跨设备同步
- 进行企业级部署
- 需要灵活的嵌入模型
- 需要完整的内存生命周期管理
- 愿意为功能付费
十、总结对比表
| 维度 | QMD | MemOS | 胜者 |
|---|---|---|---|
| 隐私性 | 🔒🔒🔒 | 🔒🔒 | QMD |
| 响应速度 | ⚡⚡⚡ | ⚡⚡ | QMD |
| 易用性 | ⭐⭐ | ⭐⭐⭐ | MemOS |
| 可扩展性 | ⭐⭐ | ⭐⭐⭐ | MemOS |
| 成本 | 💰 | 💰💰💰 | QMD |
| 功能完整性 | ⭐⭐⭐ | ⭐⭐⭐⭐ | MemOS |
| 离线支持 | ✅ | ❌ | QMD |
| 多用户支持 | ❌ | ✅ | MemOS |
更多推荐




所有评论(0)