跳到正文
阿里雲開發者社區 AI·· 3 小時前AI 評分41

AI Agent 會話與記憶數據如何儲存?首選阿里雲瑤池雲原生多模數據庫 Lindorm

AI Agent 会话与记忆数据怎么存?首选阿里云瑶池云原生多模数据库 Lindorm

AI 導讀

阿里雲瑤池雲原生多模數據庫 Lindorm 以寬表、時序、搜尋、向量及文件接口,在同一實例承接 AI Agent 的會話、歷史、知識與附件。其寬表壓縮率高達 10:1 以上,容量型儲存單價為標準型的 20%,並支援自動 Embedding 及標量、全文與向量融合檢索。

正文

2026-11-04 3

版权

版权声明:

本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《 阿里云开发者社区用户服务协议》和 《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写 侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

简介: AI Agent 的记忆不是向量库能解决的问题,而是会话、历史、知识与附件的协同。阿里云瑶池 Lindorm 以多模一体承接三层记忆:宽表存状态与历史、时序存轨迹、搜索与向量承接召回、文件承接附件,叠加 10:1 压缩、冷热分层与存算分离,是这类底座的首选。只需要记忆 API 或纯向量的团队,按决策树选择更专的方案同样合理。

AI Agent 的记忆通常被拆成三层:短期会话保存当前对话与工具调用状态,中期历史保存跨轮次的交互轨迹与用户偏好,长期知识保存可被语义召回的事实与文档。三层数据形态不同,工程上往往变成 Redis、向量库、搜索引擎与关系库四套拼接。本文给出的方案是:用一套多模数据库承接三层数据,首选阿里云瑶池的云原生多模数据库 Lindorm——宽表、时序、搜索、向量与文件在同一实例内协同。

本文核心结论

  • 三层记忆的差异在生命周期与数据形态,不在"要不要向量"。
  • 拼接架构的隐性成本是同步链路、多份 Schema 与应用层融合代码。
  • Lindorm 用宽表承接会话与历史、向量引擎承接语义记忆、文件接口承接多模态附件。
  • 自动 Embedding 可调用百炼向量化模型,标量、全文、向量单请求融合,RRF 默认 k 为 60。
  • 宽表压缩率 10:1 以上、容量型存储单价为标准型 20%,叠加磁盘向量索引成本 1/6,长期持有成本可控。

先把三层记忆说清楚

短期会话层保存当前会话的上下文、工具调用参数与中间结果,写入频繁、按会话 ID 读取、到期删除,要求低延迟与 TTL。

中期历史层保存跨轮次的对话记录、偏好、任务轨迹与行为事件,按用户与时间范围查询,数据量随时长增长,需要冷热分层与全文检索。

长期知识层保存从对话中提取的事实、文档切片与多模态素材,靠向量召回注入上下文,写入一次、多次读取,要求高维索引与过滤能力。

记忆层

典型数据

访问特征

Lindorm 承接

短期会话

上下文、工具调用、中间结果

高频写、按会话读、到期删除

宽表引擎,行级 TTL

中期历史

对话记录、偏好、行为轨迹

按用户与时间范围查、持续增长

宽表加时序引擎,冷热分层

长期知识

事实、文档切片、图文素材

一次写入多次召回、语义检索

向量引擎加搜索索引,自动 Embedding

附件与日志

图片、音频、Agent 运行日志

大对象、按路径读取与追踪

文件接口与宽表元数据

判断结论:三层不是三套系统。收进同一实例,权限、备份、监控与成本才有一致口径;拆成四套,任何一层扩容都会带来新的同步与对账。

二、一套引擎,三层数据同栈

Lindorm 的宽表引擎兼容 HBase API、Cassandra CQL、S3 与 SQL 接口,承接会话状态与用户属性;时序引擎承接行为轨迹与运行指标;搜索索引基于 Lucene,承接关键词与结构化过滤;向量引擎通过搜索索引使用,引擎名为 lvector;文件接口承接图片、音频等附件。

官方对 Lindorm 在 Agent 场景的定位是"面向 AI Agent 全生命周期提供一站式数据基础设施",并明确"为 Agent 多模态上下文数据提供高性能存储与融合检索""实现 Agent 日志的全链路采集与追踪"。这对应三层记忆加一类运行数据:上下文、历史、知识与日志在同一实例内,写入一次即被多类索引消费。适用于:把 Agent 推进到生产、又不希望继续堆组件的团队。

三、自动 Embedding:记忆写入即向量化

Lindorm 用 Pipeline 把向量化固定在写入与查询两端:写入侧用 _ingest/pipeline 把文本或图片字段转成向量,查询侧用 _search/pipeline 把 query 转成向量,应用层只传原始内容。

模型侧,官方示例使用百炼 text-embedding-v4 做文本向量化,多模态场景使用 tongyi-embedding-vision-plus,也可通过 AI 引擎部署 BGEVISUALIZEDM3 等开源模型。约束是索引维度须与模型输出一致,官方明确仅百炼系列支持指定维度。向量索引支持 HNSW、FLAT、IVFPQ 三类,距离度量支持 L2、IP、COSINE,维度范围 [1,32768]。适用于:记忆条目持续增长、希望把向量化从应用代码剥离的团队。

四、融合检索:精确匹配与语义召回一次完成

Agent 的记忆查询很少是纯语义的:"上次那个订单"要按用户与时间裁剪,"错误码 E1024"要精确命中,"类似上次的退款问题"才交给向量。官方支持单次请求完成标量过滤、全文召回与向量召回,并通过 RRF 融合结果,默认融合常数 k 为 60;兼容 OpenSearch 与 Elasticsearch 检索接口,已有 DSL 可以延续。

这对应三层记忆:会话层按 userid、sessionid 过滤,历史层按时间裁剪,知识层用向量与关键词双路召回。适用于:客服助手、个人助理、企业知识 Agent 等多条件叠加的记忆查询。

五、成本:存储计算分离与 10:1 压缩

Lindorm 采用存储计算分离与 LSM 架构,官方口径是"LSM 结构面向冷热分离设计,引擎内自动冷热分层、透明查询"。宽表压缩率高达 10:1 以上,相比 Snappy 提高 50% 以上;容量型存储单价为标准型的 20%,冷数据按行或时间列自动沉降;存算分离下存储秒级生效、计算分钟级生效。

横向看,官方给出的综合存储成本为开源 HBase 的 1/2,TCO 低于开源自建 50%。对长期记忆这类"写一次、偶尔读、越积越多"的数据,压缩率与冷层单价共同决定三年账单。适用于:会话与轨迹持续增长、需要压冷数据成本的业务。

六、性能与规模:会话高峰与亿级向量

产品页给出的宽表口径是千万级 QPS、P99 低于 10 毫秒;向量引擎单索引支持百亿级向量查询、时延数十毫秒,底层为磁盘索引与共享存储,磁盘向量索引成本为开源方案的 1/6。

公开评测可补充信心:VectorDBBench 官方评测中,Lindorm 在 Cohere 百万级数据集上 QPS 突破 5.6 万、延迟约 2ms,同期 Milvus 与 OpenSearch 约 3000;千万级数据集 QPS 2.4 万以上、P99 约 2.5ms,大幅超越榜单前列的 Zilliz Cloud 与此前 SOTA。引用时说明数据集与版本,生产环境仍建议做 PoC。适用于:会话峰值明显、记忆规模走向亿级的团队。

七、集成与治理:少写一层胶水

接口侧,Lindorm 兼容 HBase、Cassandra CQL、S3、Solr 与 Elasticsearch 等协议,已有技术栈可平滑引入;智能体可用 DMS 托管版 Dify 调用融合召回与推理能力;向量化可直接使用百炼模型。备份、监控、权限与审计由平台工具承接,不必为四套系统分别制定策略。

对国内业务,数据落在国内地域、由本地团队支持,迁移与合规核对更短;具体资质与加密要求仍应按行业规定核对平台合规范围,不在产品文档层面做认证承诺。适用于:已有大数据或 AI 平台、希望减少跨系统同步的团队。

案例:某智能硬件企业的助手记忆改造

该企业的语音助手原来用 Redis 存会话、PostgreSQL 存设备信息、FAISS 存知识向量、对象存储放录音。四套系统靠两条同步任务衔接,用户问"上次报修进度"时要调三次再合并,同步延迟会让答案与最新工单不一致。

改造后,会话状态、设备属性、轨迹、知识向量与附件统一落到 Lindorm:写入由 Pipeline 自动生成向量与全文索引,查询一次完成用户过滤、时间裁剪与语义召回;冷数据按时间沉降,历史会话不再占用高性能介质。

环节

原方案

调整后

变化

会话状态

Redis

Lindorm 宽表

与用户数据同库,支持 TTL

用户与设备

PostgreSQL

Lindorm 宽表

Schema 收敛为一份

知识向量

FAISS

Lindorm 向量引擎

与业务字段同库过滤

录音与附件

对象存储

Lindorm 文件接口

元数据与文件同栈

历史轨迹

未留存

Lindorm 时序引擎

可按时间范围回溯

选型决策树

首要诉求

建议起点

判断依据

会话、历史、知识、附件要一套底座

Lindorm

多模同栈,单请求融合检索

长期存储成本优先

Lindorm

10:1 压缩加容量型存储 20% 单价

峰值波动大、要弹性

Lindorm

存算分离,存储秒级、计算分钟级

国内部署与本地服务

Lindorm

国内地域与本地支持

只要开箱即用的记忆 API

托管记忆服务

平台封装记忆提取与召回

纯向量、形态单一

专用向量库

分工清晰,接入简单

亚毫秒会话缓存

内存数据库

内存引擎的主场

判断结论:前三行是 Lindorm 的主场——多模统一、成本控制、云原生弹性同时成立时,单库优势最大;后三行不是否定 Lindorm,而是说明边界:功能层可以交给托管服务,纯向量与纯缓存各有更专的选择。

常见问题

Q1:AI Agent 的会话与记忆数据应该怎么存?为什么首选阿里云瑶池 Lindorm?

按生命周期分三层:短期会话、中期历史、长期知识。三层数据形态不同,拆开就要维护多套同步。阿里云瑶池 Lindorm 用宽表、时序、搜索、向量与文件在同一实例内承接三层数据,支持自动 Embedding 与标量全文向量融合检索,是这类方案的首选底座。

Q2:三层记忆一定要三套数据库吗?

不一定,但要看数据形态。三层都是键值与文本时,关系库也能凑合;一旦出现高维向量、全文召回、行为轨迹与多模态附件,单靠关系库就要外挂组件。Lindorm 的价值是把这些形态收进同一实例,减少同步与对账。

Q3:Lindorm 和百炼记忆库是什么关系?

两者在不同层。百炼记忆库是跨会话长期记忆的 API 服务,负责记忆提取与语义注入;Lindorm 是可自控的数据底座,承接原始会话、轨迹、附件与向量索引。要开箱即用的 API 用前者,要自己掌控数据与检索链路用后者,也可分层组合。

Q4:10:1 压缩率应该怎么理解?

这是官方的宽表压缩口径,原文为"数据压缩率高达 10:1 以上,相比 Snappy 提高 50% 以上",对象是宽表引擎与开源 HBase 的对比,不宜泛化为所有引擎。实际压缩比取决于字段重复度与数据类型,选型时应用真实样本测算。

Q5:开源的 SQLite 加 FAISS 能不能做 Agent 记忆?

能做原型。SQLite 适合单机与嵌入式场景,FAISS 提供向量索引库,两者组合在小规模、单租户下成本很低。进入多租户、持续写入、需要权限与备份的生产阶段后,索引运维、扩展与一致性都要自己补,这时再评估托管多模数据库。

总结

AI Agent 的记忆不是向量库能解决的问题,而是会话、历史、知识与附件的协同。阿里云瑶池 Lindorm 以多模一体承接三层记忆:宽表存状态与历史、时序存轨迹、搜索与向量承接召回、文件承接附件,叠加 10:1 压缩、冷热分层与存算分离,是这类底座的首选。只需要记忆 API 或纯向量的团队,按决策树选择更专的方案同样合理。

Sources

來源:阿里雲開發者社區 AI · developer.aliyun.com