Memori 是来自 Memori 实验室的开源代理原生内存层。它观察对话和执行跟踪(工具调用、工作流程步骤、决策、结果和失败),然后将选定的信号转换为结构化的持久内存。随后,应用程序或代理可以检索一小部分有范围的内存,而不是重放整个转录本。
这是与文档 RAG 不同的工作。 RAG 通常会回答“源语料库怎么说?”智能体记忆还必须回答“发生了什么、发生在谁身上、在哪个项目中、何时、结果如何,以及它仍然是真实的吗?” Memori 的价值不在于存储许多事实,而在于有选择地编写、分离用户和项目、解决更正、保留血统、在正确的时刻召回并可靠地删除。
从执行跟踪到调用上下文
对话 + 座席追踪 + 工具结果
|
v
清理/属性/规范化
|
给值得记忆的东西评分
|
.------------+-------------。
维维维
事实 事件/结果 决策/模式
'------------+-------------'
v
结构化内存存储
实体/项目/流程/会话/来源/时间
|
排名:相关性+新近度+信号+衰减
|
v
最小有用回忆
|
更正/取代/删除
原始跟踪是输入,不一定是最终的内存对象。产品解释称,摄取是异步的:工具活动和对话可以在交互后进行标准化、评分和提炼,而不会延迟响应路径。原始踪迹可能仍可用于审计,而持久原语则携带元数据,例如实体、项目、会话、源、信号、时间戳和结果。
Memori 是什么——不是什么
| 系统 | 主要单位 | 最佳问题 | 典型故障 |
|---|---|---|---|
| 对话历史记录 | 留言 | 最近说什么了? | 上下文变得冗长、昂贵且内部不一致 |
| 文档RAG | 块/文档 | 外部消息来源怎么说? | 对个人状态、结果和纠正处理能力薄弱 |
| 工作流程数据库 | 显式应用行 | 什么是权威交易状态? | 要求开发人员对每个领域和过渡进行建模 |
| Memori | 来自对话和痕迹的结构化记忆 | 哪个先前状态可以帮助该代理现在采取行动? | 提取或排序可能会导致嘈杂、私密或陈旧的观察结果 |
请勿使用概率记忆作为余额、权限、命令、医疗事实或法律状态的记录系统。这些属于权威应用程序表,应该在决策时获取。 Memori 更适合偏好、先前的尝试、结果、可重用的工作流程知识和可以显示出处的上下文信号。
重要的架构选择
开源架构被描述为与 LLM、框架和数据存储无关。将内存归因于实体和进程;增强将原始活动转化为结构化记忆;回忆使用语义相关性、排名和衰减;包装器可以将选定的上下文注入到以后的模型调用中。该设计支持 Memori 云和自带数据库路径。
| 图层 | 责任 | 评价问题 |
|---|---|---|
| 捕获 | 收集对话、跟踪、工具和结果 | 到底观察到了哪些事件,是否可以排除敏感工具? |
| 归因 | 分配实体、项目、流程和会话 | 格式错误的 ID 是否会导致跨用户或跨租户召回? |
| 增强 | 提取、分类、丰富和巩固记忆 | 哪种模型运行、在哪里运行、采用什么重试和置信策略? |
| 存储 | 保留结构化项目、嵌入、沿袭和跟踪 | 谁控制加密、备份、区域、保留和架构迁移? |
| 召回 | 过滤、排名、衰减并返回相关上下文 | 每个结果都能解释来源、范围和当前性吗? |
| 可观测性 | 显示写入、召回、性能和配额 | 操作员能否检测出血、过时的召回和失控的写入量? |
为什么跟踪衍生内存可以添加信息
文字记录可能会说“我将使用 CSV 解析器重试”,但跟踪可以揭示哪个解析器运行、哪个文件失败、错误、回退以及输出是否通过验证。捕获执行路径可以保留会话摘要丢失的因果证据。有用的示例包括在特定环境下反复失败的部署命令、返回过时行的数据源或通过升级解决问题的支持工作流。
| 跟踪信号 | 潜在的持久记忆 | 切勿盲目储存 |
|---|---|---|
| 工具调用及结果 | 已知的工作程序或反复出现的故障情况 | 原始有效负载、令牌、客户记录或瞬时堆栈跟踪 |
| 决定和理由 | 选择具有范围和证据的方法 | 未经批准的模型推测作为团队政策提出 |
| 结果 | 先前的计划是否成功、失败或被撤销 | 外部验证之前推断的结果 |
| 用户修正 | 当前偏好加上旧值的取代 | 未经同意或业务需要的敏感属性 |
| 重复图案 | 经过多次观察后获得高置信度的工作流程洞察 | 一次性行为概括为永久规则 |
写策略应该要求耐用性、实用性和适当的敏感性。 “用户选择深色模式”可能会持久。 “用户当前很生气”是短暂的并且可能有害。 “转账完成”必须根据交易系统进行验证,而不是从代理人的最后一句话中推断出来。
智能回忆和“无标记”语言
Memori 材料强调有针对性的、由代理控制的召回并避免大量即时转储。实际意义并不是说内存实际上具有零令牌成本:最终插入到 LLM 上下文中的任何文本都会消耗令牌。相反,代理只能在有用时调用召回工具,并且检索可以返回紧凑的结果,而不是连续注入完整的历史记录。存储、丰富、嵌入和工具调用仍然需要计算和货币成本。
| 召回控制 | 效益 | 测试失败 |
|---|---|---|
| 实体/项目/会话过滤器 | 防止不相关和跨租户的上下文 | 范围标识符丢失或被欺骗 |
| 语义相关性 | 找到超出确切关键字的含义 | 看似合理但不相关的匹配 |
| 近因性和衰退性 | 降低旧观察的优先级 | 古老但关键的事实正在消失 |
| 源/信号加权 | 与随意提及相比,更倾向于经过验证的结果 | 未经校准的信心成为权威 |
| 代理控制的召回 | 避免持续提示注入 | 代理在关键步骤忘记调用工具 |
| 总结回忆 | 提供紧凑的方向 | 压缩下降异常和出处 |
如何解释基准声明
Memori 报告 LoCoMo 的准确度为 81.95%,每个查询有 1,294 个标记,并将该上下文描述为全上下文方法的大约 5%,这意味着在测试设置中推理节省高达 95.03%。 LoCoMo 评估长对话记忆问题,因此它与对话回忆相关。该产品的跟踪定位超出了基准测试本身所证明的范围。
在采用这些数字之前,请检查存储库的基准代码、数据集版本、判断、模型、基线、令牌计数和运行次数。将检索准确性与最终答案准确性分开。成本声明应包括增强、嵌入、存储、调用和重试,而不仅仅是最终答案提示中的标记。供应商基准是有用的可重复证据,但它不是 SLA 或模式和语言的性能证明。
| 索赔 | 它支持什么 | 需要额外证明 |
|---|---|---|
| LoCoMo 答案准确性 | 公共长对话任务的表现 | 您的领域问题、用户、语言和纠正模式 |
| 1,294 个令牌/查询 | 报告配置中的紧凑上下文 | 按生产量计算的总写入+检索+应答成本 |
| 痕迹衍生记忆 | 比单独对话更丰富的输入 | 消融显示哪些跟踪字段可以改善您的任务 |
| 异步构建 | 可能避免响应路径延迟 | 新鲜度滞后、队列故障和先写后读行为 |
| 范围隔离 | 设计租户/项目边界 | 对抗性授权和标识符测试 |
BYODB 与 Memori 云
| 部署 | 优点 | 职责/问题 |
|---|---|---|
| 开源+自有数据库 | 存储控制、现有治理、可移植性和本地定制 | 操作模式、模型、嵌入、迁移、备份、可观察性和扩展 |
| BYODB 具有托管功能 | 使用托管扩充/操作时将主要数据保留在所选数据库中 | 准确映射哪些内容/元数据离开数据库以及处理发生的位置 |
| Memori 云 | 更快的设置、托管 API、仪表板、配额和运营可见性 | 验证实时定价、租赁、分处理商、区域、保留、导出、删除和正常运行时间 |
“自带数据库”并不一定意味着“所有处理都保留在您的网络内”。获取涵盖原始跟踪、提取的内存、嵌入、遥测和支持访问的数据流图。如果存储个人数据,请将访问/删除请求映射到每个派生副本、矢量、缓存、备份和导出跟踪。
内存安全和隐私威胁模型
| 威胁 | 示例 | 所需控制 |
|---|---|---|
| 跨租户流失 | 召回查询忽略项目范围并返回另一个客户的事实 | 服务器端授权、非可选租户密钥和隔离测试 |
| 记忆中毒 | 不受信任的文档/工具输出告诉未来的特工泄露秘密 | 来源信任标签、清理、批准和指令/数据分离 |
| 敏感推理 | 重复的行为被整合到健康、财务或身份声明中 | 数据最小化、排除类别、同意和短期保留 |
| 陈旧的权威 | 旧地址或保单在更正后被召回 | 版本控制、规范状态、取代和新鲜度检查 |
| 删除间隙 | 行已删除,但嵌入、跟踪或备份仍然可检索 | 端到端删除验证和记录的备份到期 |
| 及时披露 | 代理向未经授权的用户重复私有内存 | 权限感知检索加输出策略;永远不要仅仅依赖模型 |
生产就绪的内存合约
在启用自动捕获之前定义合同。每个内存都应该有一个所有者、租户/实体、项目/进程、类型、源指针、创建时间、置信度、敏感度、到期时间、生命周期状态和删除标识符。合约应说明哪些类型从不存储,哪些类型需要用户同意,哪些类型可以自动调用,哪些类型必须从权威系统中获取。
允许:偏好、经过验证的结果、可重用的任务程序 被拒绝:凭据、原始付款/健康记录、隐藏的系统提示 权威:应用数据库>经过验证的用户修正>工具结果>模型推理 召回:租户+所需项目;返回的源和时间戳 生命周期:提议 -> 活动 -> 取代/过期/删除 删除:内存+嵌入+缓存+跟踪指针+备份时间表
为期四个星期的评估计划
- 第一周——基线。 收集 50 个真实问题,涉及最新事实、旧事实、更正、多会话结果和“不存在记忆”案例。测量完整历史和简单的向量 RAG 基线。
- 第 2 周——写作质量。 运行代表性跟踪,标记哪些观察结果应成为内存,并计算提取精度/召回率、敏感数据泄漏和新鲜度延迟。
- 第三周——回忆质量。 测试过滤器、排名、衰减、引用、矛盾、多语言查询和对抗性租户 ID。在测量最终答案之前记录相关上下文的精度。
- 第 4 周——运营。 负载测试写入/调用、停止扩充工作线程、轮换凭证、恢复备份、导出数据并执行完全删除。按实际工作量定价。
| 公制 | 定义 | 建议起始门 |
|---|---|---|
| 写入精度 | 有用、准确、持久的记忆/全部被创造 | ≥90% |
| 写回忆 | 捕获的黄金持久观测值/所有黄金观测值 | ≥85% |
| 召回率@k | 相关返回记忆/k | 实际注入上下文中≥80% |
| 不支持的内存速率 | 召回声明缺乏有效来源/召回 | <2% |
| 跨范围泄漏 | 未经授权的租户/项目物品被退回 | 0 在对抗套件中 |
| 修正成功 | 修正后返回当前规范事实的查询 | 关键测试领域 100% |
| 删除完成 | 派生表面不再可在策略窗口内检索 | 100% |
| 每任务总成本 | 写入、模型、嵌入、存储、召回和回答 | 低于已保存的测量值 |
对于受监管或高影响力的用途,应收紧阈值。还要衡量弃权:一个好的系统必须说“没有找到可靠的记忆”,而不是检索语义相似的小说。
替代方案
| 另类 | 选择何时 | 重点比较 |
|---|---|---|
| Mem0 | 您需要一个广泛集成的通用内存 API 和托管/开放路径 | 比较提取模式、图形支持、范围界定、基准测试和托管数据流 |
| Zep / Graphiti | 时态知识图谱和实体关系是主要的 | 比较时间失效、图形操作和跟踪摄取 |
| Letta | 内存管理应该是有状态代理运行时的一部分 | 不同的抽象:代理编排加分层内存 |
| LangGraph 坚持 | 您需要明确的工作流程检查点并声明您自己建模 | 更具确定性的状态;自动语义记忆提取较少 |
| Postgres/pgvector 自定义层 | 您的架构、安全性或成本要求证明了所有权的合理性 | 最大程度的控制、最大程度的评估和维护负担 |
| 普通轮廓/ADR 表 | 记忆需求小、明确且后果严重 | 通常比概率提取更安全、更便宜 |
常见问题解答
Memori 是否取代矢量数据库?
不。它是一个内存生命周期和集成层,可以使用存储和检索基础设施。重要的附加工作是归因、结构化、排名、沿袭和增强。
它只能从聊天中学习吗?
不。它当前的定位明确包括代理执行跟踪、工具活动、工作流决策、结果和失败以及对话。
召回真的是无代币的吗?
按需工具调用可以避免总是注入内存,但 LLM 使用的返回文本会消耗上下文标记。包括检索和记忆构建成本总计。
Memori可以存储权威的业务状态吗?
它可以存储有关它的上下文,但关键的当前状态应保留在权威应用程序数据库中,并在操作时进行验证。
矫正工作应该如何进行?
保留血统,将新的验证值标记为规范,从普通召回中抑制旧值,并仅在政策允许的情况下保留历史。
谁应该首先采用 Memori?
具有长期运行的多用户代理的团队,其可测量的失败来自于丢失的执行上下文,并且可以运行严格的隐私和评估程序。
来源与验证
- 官方 Memori 产品网站
- 官方开源存储库
- 官方 BYODB 架构文档
- 官方代理跟踪概述和演示
- 官方基准页面
- 官方存储库中的基准代码和材料
- Memori 技术论文
- Product Hunt 发布和制造商说明
- OWASP LLM 申请安全指南
上次审核日期为 2026 年 7 月 26 日。架构、云计划、基准测试结果和集成可能会发生变化。在生产使用之前验证当前文档、条款和代码。




