逐浪 · 第十二篇 记忆与长程:数学未解,工程先行
我们不需要让模型记住一切,但需要让系统在需要时重建必要的状态。数学还没给答案,但工程等不了。
一个AI和我们协作三个月后,它的记忆可能膨胀到数万条。哪些该留、哪些该忘、哪些该压缩——这件事至今没有完美的数学解法,只有工程上“相对好”的实践。
这篇不是学术综述,是我作为工程师的一篇思考笔记。从数学困境出发,走到当前工程解法,再回到我们正在做的事。
一、为什么数学上“记不住”是必然?
监督学习的本质是函数逼近。在低维空间里,这事可控。但在高维空间——文本、图像、对话历史——事情完全不同。
传统插值在高维中遭遇“维数灾难”,所需项数指数增长。而神经网络本质上是可变基函数的自适应组合,但它仍然受困于一个根本问题:长程依赖。
在RNN中,信息传递依赖雅可比矩阵的连乘:
当序列很长时,这个矩阵乘积只有两种结局:谱范数小于1,信息消失;大于1,信息爆炸。这就是梯度消失和梯度爆炸的数学本质。
神经网络的“频谱偏置”进一步加剧问题:它倾向于优先学习低频成分,而长距离中的关键记忆点往往是高频扰动,需要极长的训练时间才能收敛。
长程依赖的数学本质是:在高维空间中,用一个光滑系统去逼近一个长期不稳定、短期高振动的混沌映射。 这本身就是一个极难的数学命题——它涉及动力系统、高维PDE、非线性函数空间,不知道目前有没有完美的封闭解(欢迎评论区讨论)。
二、工程上已经做了什么?
数学没给答案,或者没有找到适合解决方案,但工程不能等。三条路径正在并行推进。
路径一:改变传播路径
ResNet用跳跃连接让信息沿“高速公路”直达末端,雅可比矩阵接近单位矩阵。Transformer直接计算任意两点间的相关权值,相当于构建全局核函数,绕开长程输运损失。它们共同思路:不传播,直接跳。
路径二:新架构
状态空间模型(SSM),包括Mamba,通过选择性记忆更新机制,以线性复杂度处理极长上下文。Mamba Neural Operator在PDE建模上比Transformer更能捕捉长程依赖。新架构在尝试从根本上改变信息传递方式。
路径三:显式记忆管理
这是目前工程上走得最远的方向。
- 微软Memora:将记忆内容与检索方式解耦,解决碎片化和检索效率问题。
- 智源SAM:通过强化学习优化记忆模块,使其与轨迹级效用对齐。
- 分层记忆体系:短期(工作区)→ 长期(跨会话持久)→ 摘要(关键信息)→ 画像(顶层抽象),已成为主流设计。
三者共同特征:不依赖模型“记住”,而是通过工程结构让“记忆”可复用、可恢复、可压缩。
三、我们在平台上的尝试:等不及理论,先让系统跑起来
在我们自己的平台上,我们也没有等数学突破,而是用工程手段逼近可用状态。以下几项尝试,都是在真实场景中反复试错后沉淀下来的。
尝试一:持久研究记忆
使用时间衰减权重和向量检索,跨会话重建上下文。标准AI助手在对话结束时忘记一切,而我们用LanceDB持久化存储研究模式,让系统在下次对话开始时能自动加载相关背景。
效果:用户跨会话的上下文连贯性显著提升,不再需要重复解释项目背景。
尝试二:任务持久化协议
长任务可断点续跑,把“记忆”从权重剥离,打包成外部可恢复状态。如果一个计算任务需要长时间运行,它可以在夜间自主处理依赖库版本问题,重新配置环境后继续运行。
效果:长任务失败率降低约40%,用户不再因为一次网络抖动而丢失数小时的工作进展。
尝试三:演化记忆系统
四种记录类型——发现、构思、策略、陷阱——让系统从过去会话中持续学习。每一次完成的分析都会丰富持久记忆,使未来的研究更快、更准、更少出错。
效果:同类问题的处理时间随着会话次数增加而逐步缩短,系统表现出“越用越快”的特性。
尝试四:状态机驱动——从“模型自由发挥”到“平台治理”
这是我们在平台治理系列(实战·第七至九篇)中反复验证的核心思路:长任务不能靠模型自由发挥,必须按显式状态推进。
AUTO_VALIDATING → REPAIR_REQUIRED → WAITING_PLATFORM_RESULT → COMPLETED
每个状态定义清晰的输入、输出和转换条件。模型只在特定状态下做特定决策,而不是在整个任务空间中自由探索。
效果:循环重复问题减少约80%,任务完成率提升至90%以上。
这些尝试的共同逻辑是:重要的不是“记住多久”,而是“需要时能重建必要状态”。 我们不需要模型记住一切,我们只需要让系统在需要时能重建必要的上下文。
四、一个被验证的洞察:循环重复,90%是架构问题
在我们近期的平台改造中,发现了一个值得深思的现象:AI Agent 的循环重复问题,90% 是平台架构问题,仅 10% 是模型能力问题。
这个判断来自真实日志分析。当系统出现“模型反复输出相同内容、反复调用同一工具、长时间无进展”时,我们最初以为是模型能力不足。但深入分析后发现:
| 根因分类 | 占比 | 典型表现 |
|---|---|---|
| 上下文/记忆膨胀与污染 | 30% | 模型反复看到旧失败记录、SKILL全文、长工具结果,被旧路径牵引 |
| 平台状态机缺失 | 25% | 任务成功后模型不知道下一步该做什么,主动“找事做”导致循环 |
| Skill契约不清 | 20% | 正负样例混杂、工具边界模糊,模型混淆指令 |
| 工具反馈不够结构化 | 15% | 校验失败只说“转换失败”,不给具体错误位置和修复路径 |
| 模型参数影响 | 10% | temperature过高、缺少frequency_penalty等放大循环 |
核心结论:真正的问题不是模型记不住,而是系统没有给模型一个清晰的“状态空间”来记住正确的事情。
五、还有哪些没想清楚的事?
当前记忆系统有一个值得警惕的倾向——一篇2026年的论文指出:现有系统将“信念修正、因果耦合和跨领域抽象”全部压缩到“为表面召回而优化的单一检索表面”上,擅长回忆,却不擅长理解。
另一篇论文从率-失真理论角度提醒:记忆正在成为AI最昂贵的资源之一。缓存的注意力键值、长提示、循环状态、历史会话……成本在快速累积,而“什么该留、什么该忘”仍缺乏系统指导。
这是一个“效率-效用”的权衡困境。 存储更多记忆带来更完整的上下文,但检索噪声和计算开销也随之增长。数学上,最优记忆策略可能是率-失真理论中的一个变分问题——给定记忆预算,最大化任务效用。但这个优化问题在高维状态空间中如何求解,目前还没有可工程化的答案。
我们目前的做法是“启发式+经验阈值”,离最优解还很远。
一个未经验证的猜想:长程记忆的最优策略,可能不是“存储+检索”,而是“状态压缩+选择性遗忘”。记忆系统的目标不应该是“记住所有”,而应该是“在给定预算下最大化任务效用”。这本质上是一个强化学习问题——系统需要学习“什么值得记住、什么可以忘记”,而不是靠人类预设规则。
六、我们该用什么样的心态面对这件事?
数学未解,工程先行。
不必等完美的数学定理,但也不能假装问题不存在。我给自己定了几条原则:
- 承认边界:长程记忆没有完美解法。承认这一点,设计时才能预留容错空间,而不是盲目相信某个“银弹”方案。
- 做好工程:用分层、摘要、检查点、可恢复架构逼近可用状态。每一步都是可验证的、可回滚的。
- 保持开放:关注数学进展,但不被它卡住。数学突破发生时可以快速吸收;突破没发生时,系统依然能跑。
- 记录经验:把工程实践中“什么有效、什么失效”记录下来——数学理论成熟时,这些经验就是验证理论的实证素材。
七、回到本质
长程记忆的数学理论还在发展中,但我们不能等。工程上先跑起来,在实践中逼近理论极限——这本身就是AI工程化最扎实的积累方向。
我们不需要让模型记住一切。我们只需要让系统在需要时,能重建必要的状态。
念念不忘,必有回响。
技术标签:#记忆系统 #长程依赖 #AI工程化 #函数逼近 #状态机
专栏:《逐浪》第十七篇
本文基于AI记忆系统研究笔记及平台治理实践,写于2026-07-12。