什么是表格存储记忆服务?
表格存储记忆服务是基于阿里云表格存储构建的 AI Agent 记忆服务,为 Agent 提供长期记忆与短期记忆的持久化存储、语义检索和管理能力。它可以让 Agent 在多轮对话和跨会话场景中保留和利用关键信息。
记忆服务结合了表格存储的高性能向量检索与全文检索能力,以及大语言模型(LLM)的自动记忆提取和语义理解能力,无需开发者手动处理记忆的抽取和组织。
表格存储记忆服务的演进历程
表格存储(Tablestore)在 AI 领域已服务了大量客户:
- 通义千问、钉钉、夸克等产品基于 Tablestore 构建了对话记录与记忆存储能力
- 1688、ECS AI 助手等产品基于 Tablestore 搭建了大规模知识检索服务
- 智能医疗、AI 游戏、AI 非遗等行业场景的客户将表格存储用于 Agent Memory 的持久化管理
在 AI Agent Memory 领域,表格存储经历了以下演进阶段:
- 初期,一些用户直接将表格存储作为存储和检索服务使用,在应用层自行管理记忆的抽取、加工和检索逻辑,开发成本较高。
- 随后,表格存储接入了 mem0 开源生态,降低了集成门槛,但在实际使用中记忆检索的效果有待优化,难以满足生产级需求。
- 现在,我们推出了表格存储记忆服务——由表格存储原生提供的一站式 AI Agent 记忆解决方案。开发者无需自行处理记忆抽取逻辑,有海量规模、低成本、高准确率、Serverless 的优点,可让 Agent 获得稳定可靠的记忆能力。
核心能力
- 记忆自动提取 — 将对话消息或文本传入后,系统自动从中提取关键事实和偏好,生成结构化的记忆单元。开发者无需编写额外的提取逻辑。
- 语义检索 — 支持向量检索 + 全文检索的混合检索模式,以自然语言作为查询输入即可精准召回相关记忆,同时可选启用 Rerank 二次排序进一步提升结果相关性。
- 海量租户隔离 — 基于表格存储实现海量记忆存储,支持水平拓展。并通过多层次的作用域实现灵活的数据隔离,满足百万租户、百亿记忆存储的场景需求。
- 长期、短期记忆 — 支持查询完整历史会话内容(短期记忆),同时支持会话记忆检索(长期记忆)。
了解概念
记忆库(MemoryStore)
记忆库是管理记忆的顶层容器。每个记忆库拥有独立的数据存储空间。
记忆(Memory)
记忆是系统从对话消息中自动提取和推导出的结构化信息单元。每条记忆包含文本内容、元数据、作用域(Scope)和向量 Embedding 等信息,支持增删改查和语义检索操作。
作用域(Scope)
Scope 是记忆库实现多租户和数据隔离的核心机制,由四个层级字段组成:
| 字段 | 说明 |
|---|---|
appId | 应用标识,最顶层的隔离维度 |
tenantId | 租户标识 |
agentId | Agent 标识 |
runId | 会话/运行标识 |
邀测接入方案
当前支持的 Region
- 北京地域
接入步骤
- 创建实例:在北京地域创建表格存储实例。
- 获取实例信息:获得表格存储实例的 Endpoint、实例名称,以及对应的 AccessKey ID / AccessKey Secret。
- 安装 SDK:根据您的开发语言,安装表格存储 SDK(Python 或 Node.js)。
- 初始化客户端:使用获取到的凭证初始化 SDK 客户端。
- 创建记忆库:调用
CreateMemoryStore接口创建您的第一个记忆库。 - 开始使用:通过
AddMemories写入记忆、通过SearchMemories检索记忆。
样例代码
基于tablestore python sdk 6.4.5版本:
# 1. 创建记忆库
client.create_memory_store({
"memoryStoreName": "my_store",
"description": "我的 Agent 记忆库"
})
# 2. 添加记忆(通过对话消息)
client.add_memories({
"memoryStoreName": "my_store",
"scope": {"appId": "my_app", "tenantId": "user_001", "agentId": "agent1", "runId": "run01"},
"messages": [
{"role": "user", "content": "我喜欢喝咖啡"},
{"role": "assistant", "content": "好的,我记住了"}
]
})
# 3. 搜索记忆
result = client.search_memories({
"memoryStoreName": "my_store",
"scope": {"appId": "my_app", "tenantId": "user_001", "agentId": "*", "runId": "*"},
"query": "用户喜欢什么饮品",
"topK": 5
})
for hit in result.get("results", []):
print(hit["unit"]["text"], hit["score"])
# 4. 列出记忆
result = client.list_memories({
"memoryStoreName": "my_store",
"scope": {"appId": "my_app", "tenantId": "*", "agentId": "*", "runId": "*"},
"limit": 20
})
Agent 框架集成
除了直接调用 SDK 外,记忆库还提供了主流 Agent 框架的插件集成方案,可以更便捷地将记忆能力嵌入现有 Agent 应用。
OpenClaw 插件
通过 openclaw-tablestore-memory 插件,OpenClaw Agent 可以在每轮对话中自动检索相关记忆并注入到 prompt 上下文,对话结束后自动将本轮内容回写到记忆库。
安装方法
openclaw plugins install @tablestore/openclaw-tablestore-memory
配置样例
{
"plugins": {
"slots": {
"memory": "tablestore-mem"
},
"entries": {
"tablestore-mem": {
"enabled": true,
"config": {
"endpoint": "https://mem-test.cn-shanghai-cloudspe.ots.aliyuncs.com",
"otsInstanceName": "mem-test",
"accessKeyId": "<your-ak>",
"accessKeySecret": "<your-sk>"
}
}
}
}
}
Hermes 插件
hermes-tablestore-memory 插件为 Hermes Agent 提供语义长期记忆能力,支持自动对话同步、记忆预取,并提供 tablestore_profile、tablestore_search、tablestore_remember、tablestore_forget 四个工具供 Agent 显式调用。
hermes plugins install https://github.com/aliyun/hermes-tablestore-memory
hermes memory setup # 选择 tablestore-mem,并配置访问凭证
性能评测
我们从检索准确率、检索延时和存储规模三个维度对表格存储记忆服务进行了评测,并与业界主流记忆方案 Mem0 做了对比:
| 维度 | 表格存储记忆服务 | 行业对比 |
|---|---|---|
| 综合检索准确率 | 76.34% | 较 Mem0(64.20%)提升约 18.9%(12.14 百分点),处于行业第一梯队 |
| P50 检索延时 | ~155 ms | 同类方案通常 200-500 ms,降低约 75% |
| 已验证存储规模 | 1 亿+ 条记忆 | 同类方案多为百万至千万级,可水平扩展无上限 |
检索准确率
评测基准:LoCoMo 数据集
LoCoMo 是当前记忆系统评测领域最具代表性的基准之一。与早期评测集只覆盖 3-5 轮短对话不同,LoCoMo 平均每条测试数据包含 300 轮对话、跨 35 个会话,贴近真实用户与 AI 助手长期交互的场景。
LoCoMo 原始定义了五类推理问答(单跳、多跳、时间推理、开放领域、对抗性问题),我们基于其中四类进行了评测:
| 评测维度 | 含义 | 日常对话中的典型场景 |
|---|---|---|
| 单跳推理 | 从单次会话中直接定位事实 | "我上次说我喜欢喝什么来着?" |
| 多跳推理 | 综合多个会话中的信息得出答案 | "根据我的饮食偏好和体检报告,推荐一份午餐" |
| 时间推理 | 理解时间线索和先后顺序 | "我先说想换工作,后来又说留下了,现在的想法是?" |
| 开放领域 | 结合用户历史信息与外部常识推理 | "我说过我对花生过敏,沙爹酱能吃吗?" |
评测结果:
| 记忆库方案 | 单跳推理 | 多跳推理 | 时间推理 | 开放领域 | 综合准确率 |
|---|---|---|---|---|---|
| 表格存储记忆服务 | 64.42% | 81.93% | 77.67% | 57.99% | 76.34% |
| Mem0 | 68.97% | 61.70% | 58.26% | 50.00% | 64.20% |
在单跳推理(直接检索单条事实)上 Mem0 略优 6.6%,但在更贴近真实复杂度的多跳推理和时间推理场景中,表格存储分别领先超过 30%——当用户的问题需要 AI 把多次对话串联起来、理解时间先后做出判断时,表格存储记忆服务的检索质量明显更高。
检索延时
测试条件为单记忆库 120 万租户、1 亿+ 条记忆数据的超大规模场景:
| TopK | 平均延时 | P50 延时 | P95 延时 |
|---|---|---|---|
| 5 | 164 ms | 155 ms | 269 ms |
| 10 | 198 ms | 174 ms | 288 ms |
| 50 | 234 ms | 222 ms | 384 ms |
亿级数据量下 P50 延时稳定在 200 ms 左右,即使返回 Top50 结果,P95 也在 384 ms 以内。换个直观说法:即使一个百万日活 App 的所有用户记忆汇总到一个库里,每次对话中的记忆检索依然能在 200 毫秒内完成,用户几乎感知不到等待。
存储规模
单记忆库已验证支持 120 万租户、1 亿+ 条记忆的存储与检索。基于表格存储的分布式架构,系统支持水平扩展,无理论上限——不需要按租户数量做分库分表的容量规划,业务增长时存储层自动跟上。
联系我们
如果您想进一步了解表格存储记忆服务,可以加入表格存储技术交流钉钉群:36165029092。