当 AI 越来越能对话、越来越能生成,一个尴尬的问题也越来越明显:
它什么都记不住。
你上周跟 AI 讨论过的项目决策,这周它已经忘了。你纠正过的事实,下次它还会犯同样的错。你在不同对话中提到的偏好、约束、背景,它无法串联起来形成连贯认知。
对个人用户来说,这只是不方便。但对企业来说,这意味着 AI 永远停留在"单次对话助手"的层面,无法成为真正的"认知副驾"。
这篇文章记录了我设计和实现一套企业级长期记忆系统的完整过程。从核心架构到数据流转,从信任机制到实际验证。
核心问题:认知过载
管理者和技术负责人每天面对大量的信息:
- 信息爆炸——会议、邮件、聊天记录铺天盖地
- 上下文切换成本高——同时跟进多个项目和团队
- 隐性知识流失——关键决策和背景信息散落在各处,难以沉淀
我们的愿景是构建一个"认知副驾(Cognitive Co-pilot)":不是一个工具,而是一个伙伴——能主动感知、深度理解、并个性化辅助每一位用户。
要实现这个愿景,核心基础设施就是一套可信赖的长期记忆系统。
架构设计:分层记忆,像人一样思考
核心理念:L2 日记本 vs L3 教科书
人类的记忆不是一锅粥。我们有短期记忆(刚刚发生的事)、情景记忆(具体经历的细节)和语义记忆(从经历中提炼出的知识)。
AI 的长期记忆也应该分层:
- L2(日记本):记录原始事件——谁在什么时候说了什么、做了什么。忠实保存,不做推理
- L3(教科书):从 L2 中提炼出的结构化事实——"团队决定使用 ClickUp 替代 Jira"、"Q4 版本发布平均延期 3.5 天"
这个分层让系统既能记住过程,又能沉淀事实。
实体中心架构
传统的 AI 记忆往往绑定在"用户个人"维度上。但企业场景中,记忆需要围绕更多维度组织:
- 一个项目有自己的决策历史和约束条件
- 一个团队有自己的工作偏好和能力分布
- 一个会议有自己的讨论主题和结论
我们采用了**实体中心(Entity-Centric)**架构:记忆不再仅绑定"用户个人",可以扩展到"项目"、"团队"、"组织",具备成为企业级智能中枢的潜力。
写入路径:从"证据"到"真理"
当一段新的信息进入系统,它要经过三步才能成为可靠的记忆:
Step 1:提取(Extract)
从原始消息中抽取候选事实陈述。不是把所有内容都记下来,而是识别出有记忆价值的信息。
Step 2:检索(Retrieve)
召回已有的相关记忆,为下一步整合提供对比基准。这一步确保新旧信息能被放在一起对比。
Step 3:整合(Consolidate)
这是最关键的一步。AI 像专家一样对比新旧信息再做决策,生成结构化的 MCR(Memory Change Request)指令集。
MCR 是整个系统的核心创新。它确保了 AI 的每一次"思考"都转化为安全的、标准化的数据库操作:
// MCR 指令类型
type MCROperation =
| 'CREATE_FACT' // 创建新事实
| 'UPDATE_STRENGTH' // 更新事实置信度
| 'ARCHIVE_FACT' // 归档过时事实
| 'INVALIDATE_FACT' // 标记错误事实
| 'LINK_FACTS' // 建立事实间关联
| 'CORRECT_STATEMENT_TYPO' // 修正拼写错误(唯一允许的语义修改)设计哲学是**"积木式"不可变性**:
- 一旦创建,永不修改其语义——一个 fact_id 永远指向同一个语义概念
- 演进通过替换,而非修改——"喜欢咖啡"→"喜欢冰美式"= 归档旧事实 + 创建新事实
- 系统故意没有物理删除指令——所有"删除"通过归档/标记实现,保证历史完整性
读取路径:R.S.R.R. 召回漏斗
在正确的时间,提供正确的信息。这需要一个精心设计的召回漏斗:
| 阶段 | 名称 | 做什么 | 为什么 |
|---|---|---|---|
| R₁ | Recode(查询重构) | 将模糊的自然语言转化为精确的查询条件 | 用户说"上次那个项目",系统要知道是哪个 |
| S | Screen(结构化筛选) | 利用数据库索引快速排除无关数据 | 从百万级记忆中缩小到千级候选 |
| R₂ | Rank(语义排序) | 基于向量相似度的深层语义匹配 | 找到语义最相关的记忆,而非仅关键词匹配 |
| R₃ | Refine(精炼充实) | 为最终生成准备解释性强、证据足的上下文 | 不是扔一堆记忆给 AI,而是给它结构化的决策材料 |
技术上采用了混合搜索(Hybrid Search)——结合传统数据库的精确性和向量搜索的语义理解能力。
为什么这套方案值得信赖
企业级记忆系统最大的挑战不是"记得住",而是"信得过"。
绝对的可审计性
每一条记忆都有"出生证明"和"成长履历":
- **fact_evolution_log(飞行记录仪)**以不可变方式记录每条事实的每一次状态变更
- 任何结论都可以一键追溯到其原始证据和形成过程
- 这解决了 AI "黑盒子"问题,是企业级应用合规与信任的基石
精确的生命周期管理
AI 也能"知错能改":
Active → Archived // 信息过时(但不是错的)
Active → Invalidated // 信息错误(被纠正)
Archived → Reactivated // 重新变得相关
系统能精确区分"信息过时"和"信息错误",并能优雅地处理用户的纠错。
证据链完整性
L3 事实与 L2 证据来源通过 fact_source_links 明确链接。每一个"教科书结论"都能追溯到它的"日记本原文"。
实战验证:从群聊到结构化记忆
理论说得再好,不如看一个实际运行的例子。
输入:一段普通的技术团队群聊
以下是一段典型的开发团队日常对话(已脱敏):
A: 我尝试替换了执行器,你可以部署测一下
A: 这也让我发现 DSPy 的一个局限性——声明的描述会影响结果
B: 好的,我调整了 input 的类型定义
A: JsonSchema 是刚性要求,不能删
A: 内测期间 maxToken 拉到 3 万,不够再加
A: 把模型都切到 Qwen3-Next-80B,DeepSeek 频繁降级问题严重
C: TRAE solo 真是太好用了
C: 我一顿饭能吃 100 个包子(玩笑)
C: 我去过南极,那里的企鹅非常凶(玩笑)
输出:AI 的推理过程
系统对这段对话的处理展示了记忆整合的几个关键能力:
1. 独立可理解性测试
系统会检查每个候选事实:去掉时间标签后,它还能独立被理解吗?
- ✅ "DSPy 框架存在局限性,声明的描述会影响模型输出结果"——通过
- ✅ "JsonSchema 是刚性要求,不能被删除"——通过
- ❌ "调整了输入类型的定义"——太模糊,缺少具体项目上下文,被拒绝
2. 噪音过滤
对于明显的玩笑话("吃 100 个包子"、"去过南极"),系统不会傻傻记下来。它会识别对话语境,判断这些不是应该被持久化的事实。
推理过程的原文:
"候选人所说的'一顿饭能吃 100 个包子'、'一分钟游 800 米'等都是明显的玩笑话,不应该作为实际事实记录。根据'宁可少产出,也不要产出无用的模糊记忆'的核心原则,拒绝所有这些候选事实。"
3. 生成的 MCR 示例
最终,系统从这段对话中提炼出的有效记忆变更包括:
{
"operation": "CREATE_FACT",
"reasoning": "关于技术框架局限性的具体洞察",
"payload": {
"statement": "[2025-12-10] 发现 DSPy 框架存在局限性,声明的描述会影响模型输出结果",
"fact_type": "Insight",
"strength": 0.85
}
}{
"operation": "CREATE_FACT",
"reasoning": "具体的技术配置决策",
"payload": {
"statement": "[2025-12-10] 要求将所有模型切换到 Qwen3-Next-80B,因为 DeepSeek 频繁降级",
"fact_type": "Constraint",
"strength": 0.92
}
}一段 30 多条消息的群聊,最终只产生了不到 10 条有效记忆。这正是系统该有的表现——不是什么都记,而是只记该记的。
五个落地场景
长期记忆系统不是纯技术炫技,它的价值在于支撑具体的业务场景:
1. 项目风控:认知镜像
利用历史决策记录和实际达成情况的偏差数据,为项目提供风控预警。当有人说"下周二准时封板",系统可以基于历史记忆提示:"同类项目历史平均延期 3.5 天,建议预留缓冲。"
2. 异步对齐:隐形参会者
基于用户的关注领域和职责范围做语义过滤,将海量会议内容转化为高信噪比的决策情报。"你缺席的那个评审会上,DBA 提到了分库分表方案可能影响你的服务。"
3. 能力地图:资产复用
沉淀团队的技术资产和服务能力,当有人要"重复造轮子"时主动推荐现成方案。减少人肉问答,实现自助服务。
4. 智能预见:主动提醒
基于历史因果链(做 A 必须做 B)进行推理,识别当前计划中的潜在盲区,在问题发生前主动提醒。
5. 视角仿真:沟通预演
利用对不同角色 KPI 和约束的记忆,模拟"如果把这个方案发给某个角色,他会怎么看",帮助提前优化沟通策略。
关键设计决策回顾
在构建这套系统的过程中,有几个决策对最终效果影响最大:
| 决策 | 选择 | 理由 |
|---|---|---|
| 记忆是否可变 | 不可变(语义不变性) | 保证向量 embedding 稳定,历史可追溯 |
| 删除策略 | 只软删除,不物理删除 | 企业合规需要完整审计链 |
| 记忆粒度 | 原子化事实 | 太粗会丢失精度,太细会增加噪音 |
| 搜索方式 | 混合搜索 | 精确过滤 + 语义匹配,两者缺一不可 |
| 模型选择 | 可切换 | 避免被单一供应商绑定 |
| 提示词优化 | 自动化 APO 体系 | 人工调 Prompt 不可持续 |
从个人助手到企业知识图谱
这套系统的长期路线是:
架构从第一天起就为这个目标做了准备——实体中心设计让记忆可以自然地从个人扩展到团队再到组织。
当前已经完成的:
- ✅ 写入路径(LangGraph 编排)
- ✅ 读取路径核心模块
- ✅ APO 提示词优化体系
- ✅ 生产环境验证
总结
AI 不缺智商,缺的是记忆。
当前大多数 AI 应用还停留在"单次对话"的范式里——每次交互都是一个新的开始。但真正有价值的 AI 助手,应该能够:
- 记住——不只是当次对话,而是跨越时间的完整认知
- 甄别——不是什么都记,而是只记该记的
- 可信——每条记忆都能追溯到证据来源
- 演进——能知错能改,能随时间更新认知
构建这样一套系统并不容易,但它是 AI 从"工具"进化为"伙伴"的关键基础设施。
如果你对主动型 AI 助手的产品设计感兴趣,可以阅读这个系列的姊妹篇《给管理者设计一个主动型 AI 助手》。