OpenClaw 是一款开源的个人 AI 助手平台,支持通过多种消息渠道与 AI 交互。通过将 Hologres 作为 Mem0 的向量存储后端,可以为 OpenClaw 提供跨设备的长记忆支持和企业级可靠性。本文介绍如何基于 Hologres + Mem0 为 OpenClaw 实现长记忆增强。
方案简介
OpenClaw 是一款开源的个人 AI 助手平台,支持通过多种消息渠道与 AI 交互,可接入阿里云百炼的通义千问系列模型。Mem0 是一个开源的个性化 AI 记忆层,通过提取、向量化、存储、检索和融合等步骤,为 LLM 应用提供跨会话的长期记忆能力。
Hologres 是阿里云推出的一站式实时数据仓库,具备高性能向量检索和实时写入能力。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 兼容性 |
有限 |
完整 PostgreSQL 协议支持 |
全文检索 |
基础 |
Tantivy 高性能全文检索 |
HGraph 向量索引核心优势
-
高性能检索:支持近似检索和精确检索,专为大规模向量数据优化。
-
混合索引:支持向量与标量数据的混合索引,满足复杂查询场景。
-
量化压缩:支持向量量化压缩,降低存储成本的同时保证检索精度。
实践步骤
您可使用 OpenClaw 自行完成如下配置步骤。
步骤一:创建 Hologres 数据库
在 Hologres 实例中创建专用数据库。
CREATE DATABASE openclaw_mem0;
步骤二:安装 mem0_hologres 插件
执行以下命令安装插件。
openclaw plugins install @hologres/openclaw-mem0
开启 Mem0 配置。
openclaw config set plugins.slots.memory openclaw-mem0
openclaw config set plugins.entries.openclaw-mem0.enabled true
步骤三:配置 Mem0 参数
编辑 ~/.openclaw/openclaw.json,配置 Hologres 连接信息。
"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": "<YOUR_HOLOGRES_HOST>",
"port": "<YOUR_HOLOGRES_PORT>",
"dbname": "openclaw_mem0",
"user": "<YOUR_HOLOGRES_USER>",
"password": "<YOUR_HOLOGRES_PASSWORD>",
"embeddingModelDims": 1024
}
}
}
}
}
配置参数说明
参数 |
说明 |
|---|---|
|
用户标识,用于区分不同用户的记忆。 |
|
DashScope API Key,用于 LLM 和文本向量化。获取方式请参见获取 API Key。 |
|
Hologres 实例的公网地址。 |
|
Hologres 实例的端口号。 |
|
Hologres 实例的访问用户名。 |
|
Hologres 实例的访问密码。 |
步骤四:重启 Gateway
配置完成后,重启 OpenClaw Gateway 使配置生效。
openclaw gateway restart
验证记忆功能
在 OpenClaw 中测试长记忆功能。
-
发送消息:
我叫小明,帮我记一下,我下周一早上十点有个会。 -
等待回复,确认消息已处理。
-
发送新消息:
请介绍一下我。 -
验证 OpenClaw 是否能回忆起您的名字和会议信息。
连接 Hologres 查看存储的记忆数据。
SELECT id, vector, payload
FROM memories
LIMIT 10;