方案简介
OpenClaw 是一款开源的个人 AI 助手平台,支持通过多种消息渠道与 AI 交互,可接入阿里云百炼的通义千问系列模型。Mem0 是一个开源的个性化 AI 记忆层,通过提取、向量化、存储、检索和融合等步骤,为 LLM 应用提供跨会话的长期记忆能力。
Hologres 是阿里云推出的一站式实时数据仓库,具备高性能向量检索和实时写入能力。Hologres 已开源支持 Mem0 的向量存储后端实现,详见 Hologres Mem0 实现大模型长记忆实践。通过将 Hologres 作为 Mem0 的向量存储后端,可以为 OpenClaw 提供更强大的长记忆支持,实现跨设备的记忆同步和企业级可靠性。
相关文档:
方案架构
本方案的整体架构包含以下核心组件:
核心流程:
-
提取(Extract):Mem0 从用户输入中提取关键信息,识别需要记忆的内容。
-
向量化(Embed):使用文本嵌入模型(如 text-embedding-v4)将提取的信息转换为高维向量。
-
存储(Store):将向量数据实时写入 Hologres,同时保存原始文本和元数据。
-
检索(Retrieve):当用户发起新请求时,将当前查询向量化,在 Hologres 中通过 HGraph 索引进行相似度搜索,召回相关记忆。
-
融合(Fuse):将检索到的记忆与当前上下文融合,增强 LLM 的响应质量。

方案优势
OpenClaw 用户收益
通过将 Hologres 作为 Mem0 的向量存储后端,OpenClaw 用户可以获得以下收益:
-
跨设备记忆同步:无论是在公司电脑还是家里笔记本,OpenClaw 都能记住您的偏好和历史对话
-
记忆永不丢失:数据存储在云端 Hologres,更换设备或重装系统后记忆依然保留
-
更智能的 AI 助手:基于长期记忆,OpenClaw 能更准确地理解您的习惯和需求
-
企业级数据安全:Hologres 提供高可用、高可靠的数据保护,支持细粒度权限控制
相比 OpenClaw 原生方案
| 维度 | OpenClaw 原生方案 | Hologres + Mem0 方案 |
|---|---|---|
| 存储后端 | 本地 SQLite/LanceDB | Hologres 实时数仓 |
| 数据持久化 | 本地文件,易丢失 | 云端持久化,高可靠 |
| 跨设备同步 | ❌ 不支持 | ✅ 支持 |
| 向量检索 | 一般 | 高性能(HGraph 向量索引) |
| 数据规模 | 受限于本地存储 | 可扩展至 PB 级 |
| 实时性 | 本地写入 | 毫秒级实时写入 |
| SQL 兼容性 | 有限 | 完整 PG 协议支持 |
| 全文检索 | 基础 | Tantivy 高性能全文检索 |
HGraph 向量索引核心优势
-
高性能检索:支持近似检索和精确检索,专为大规模向量数据优化
-
混合索引:支持向量与标量数据的混合索引,满足复杂查询场景
-
量化压缩:支持向量量化压缩,降低存储成本的同时保证检索精度
实践步骤
说明:您可使用 OpenClaw 自行完成如下配置步骤。
步骤一:创建 Hologres 数据库
在 Hologres 实例中创建专用数据库:
plain
CREATE DATABASE openclaw_mem0;
步骤二:安装 mem0_hologres
在 Openclaw 部署环境中执行如下命令,安装Hologres mem0插件
plain
openclaw plugins install @hologres/openclaw-mem0
步骤三:配置 mem0 参数
编辑 Openclaw 配置文件 ~/.openclaw/openclaw.json,配置 Hologres 连接信息
plain
"openclaw-mem0": {
"enabled": true,
"config": {
"mode": "open-source",
"userId": "<YOUR_NAME>",
"oss": {
"llm": {
"provider": "openai",
"config": {
"baseURL": "https://dashscope.aliyuncs.com/compatible-mode/v1",
"apiKey": "<YOUR_DASHSCOPE_API_KEY>",
"model": "qwen-plus"
}
},
"embedder": {
"provider": "openai",
"config": {
"baseURL": "https://dashscope.aliyuncs.com/compatible-mode/v1",
"apiKey": "<YOUR_DASHSCOPE_API_KEY>",
"model": "text-embedding-v4",
"embeddingDims": 1024
}
},
"vectorStore": {
"provider": "hologres",
"config": {
"host": "<hologres-url>",
"port": <hologres-port>,
"dbname": "openclaw_mem0", # 需要提前手动创建database
"user": "<user>",
"password": "<password>",
"embeddingModelDims": 1024
}
}
}
}
}
配置参数说明:
| 参数 | 说明 |
|---|---|
<YOUR_NAME> |
用户标识,用于区分不同用户的记忆 |
<YOUR_DASHSCOPE_API_KEY> |
DashScope API Key,用于 LLM 和文本向量化 |
<YOUR_HOLOGRES_HOST> |
Hologres 实例地址 |
<YOUR_HOLOGRES_USER> |
Hologres 访问用户名 |
<YOUR_HOLOGRES_PASSWORD> |
Hologres 访问密码 |
步骤四:重启 Gateway
plain
openclaw gateway restart
代码示例
验证记忆功能
在 OpenClaw 中测试长记忆功能:
-
发送消息:"我叫 <YOUR_NAME>,帮我记一下,我下周一早上十点有个会"
-
等待回复,确认消息已处理
-
发送新消息:"请介绍一下我"
-
验证 OpenClaw 是否能回忆起您的名字
查询记忆数据
连接 Hologres 查看存储的记忆:
plain
SELECT id, vector, payload
FROM memories
LIMIT 10;
