Blog·Studio
文章系列日历归档关于搜索
Blog·Studio

一个记录思考、笔记与作品的技术博客。

Connect

© 2026 · Blog Studio

鄂ICP备19019526号

crafted with care

stay curious ✦

  1. 文章
  2. ›AI 应用 memory 工程 2026:从滑动窗口到 vector memory 装配

Index

  • 一、问题的提出:为什么 memory 工程突然成为 AI 应用的中心议题
  • 二、形式化:memory 系统的三元组定义
  • 三、context window manager:滑动窗口不是工程,是工程债
  • 四、compressor:摘要不是"压缩",是"语义投影"
  • 五、persistor:从向量检索到"状态快照+索引"双层
  • 七、对工程实践的推论:五条可执行清单
  • 七点五、一个真实生产案例:从月烧 8 万美元到 1.2 万美元的过程
  • 八、讨论:memory 与 context 的边界正在模糊
  • 九、给 AI 应用架构师的 memory 工程清单
  • 参考文献

AI 应用 memory 工程 2026:从滑动窗口到 vector memory 装配

把 memory 从按 token 截断升级为分层遗忘+索引检索+状态快照三轴闭环工程,覆盖 2026 年 AI 应用从 demo 走向 production 的架构拐点。

2026年10月18日·约 35 分钟阅读·10,471 字·10 次阅读·博主
#智能体与 AI 应用开发
AI 应用 memory 工程 2026:从滑动窗口到 vector memory 装配

Index

  • 一、问题的提出:为什么 memory 工程突然成为 AI 应用的中心议题
  • 二、形式化:memory 系统的三元组定义
  • 三、context window manager:滑动窗口不是工程,是工程债
  • 四、compressor:摘要不是"压缩",是"语义投影"
  • 五、persistor:从向量检索到"状态快照+索引"双层
  • 七、对工程实践的推论:五条可执行清单
  • 七点五、一个真实生产案例:从月烧 8 万美元到 1.2 万美元的过程
  • 八、讨论:memory 与 context 的边界正在模糊
  • 九、给 AI 应用架构师的 memory 工程清单
  • 参考文献

AI 应用的 memory 与 context 管理工程 2026:从滑动窗口、summary 到 vector memory 的统一架构

一句话摘要:把 memory 从"按 token 截断"升级为"分层遗忘+索引检索+状态快照"三轴闭环工程,是 2026 年 AI 应用从 demo 走向 production 的必经架构拐点。

一、问题的提出:为什么 memory 工程突然成为 AI 应用的中心议题

2026 年第三季度,几乎所有头部 AI 应用团队都把 memory 工程提到了 P0 优先级。这不是营销话术,而是工程现场的必然——当一个 to-C 对话产品日活在百万量级、当一个 multi-encoder workflow 跑过第 30 步 tool call、当一个 code copilot 把会话拉到几千轮,token 预算、context 失真、成本失控三条曲线会同时失守。memory 不是"再加一个向量数据库"那么简单,它是LLM 状态机的状态管理子系统,必须像数据库系统的事务日志、缓存系统的 LRU、操作系统虚拟内存那样被工程化对待。

memory 与 context 是同一枚硬币的两面:context 是 LLM 当前可见的窗口,memory 是 context 之外所有可被召回的历史状态;前者是 RAM,后者是磁盘+索引+策略层。传统 NLP 时代这两个概念混在一起叫"对话历史",但 2026 年的工程现实要求把它们拆成三件可独立观测、独立调参、独立演化的子系统:窗口管理(window manager)、压缩层(compressor)、持久层(persistor)。本文按这三层展开 9 节内容,覆盖 from-theory-to-practice 的完整链路,给出可落地的代码、监控指标和反模式清单。

本文读者画像是已经在生产中跑 AI 应用、对向量检索和 prompt 工程有基础认知、正在或即将面对长会话场景的工程师与架构师;学术研究者可以略过 §3-§5 的工程实现细节,重点看 §2 的形式化与 §6 的几何视角。

值得在开头点破的一个行业错觉:很多人以为 memory 工程是 prompt 工程的子集,把"记忆用户偏好"当作 prompt 里加几行 system instruction 就完事了。这是一个危险的简化——prompt 工程的成本模型是"每轮推理付一次钱",memory 工程的成本模型是"为每一条历史持续付钱直到过期",二者的成本结构、失败模式、可观测性需求都完全不同。一个 50 万用户的对话产品,假设每人平均 200 轮对话、每轮 800 tokens,单纯 embedding 入库的成本就在每月 5 万美元量级;这还没算 compressor、retrieval、reranker、向量库的存储与查询。把 memory 当 prompt 处理,是大多数 AI 应用第一版"看起来能用、第二个月烧钱、第三个月上线即崩"的根因。所以 2026 年的工程共识是:memory 是一个有 SLA 的独立子系统,而不是 prompt 的一个字段。

二、形式化:memory 系统的三元组定义

把 memory 系统抽象为三元组 M=(W,C,P)\mathcal{M} = (W, C, P)M=(W,C,P):WWW 是当前 context window 的状态(W⊆TW \subseteq \mathcal{T}W⊆T,T\mathcal{T}T 是 token 空间),CCC 是 compressor 函数族(C:T∗→T∗C: \mathcal{T}^* \to \mathcal{T}^*C:T∗→T∗,把长序列映射为短摘要),PPP 是 persistor 函数族(P:T∗→IP: \mathcal{T}^* \to \mathcal{I}P:T∗→I,把历史映射到可检索索引空间 I\mathcal{I}I)。LLM 推理时实际看到的 context 是:

ctx(t)=Wt⊕C(Ht−1recent)⊕P.retrieve(Ht−1distant,qt)\text{ctx}(t) = W_t \oplus C(\mathcal{H}_{t-1}^{\text{recent}}) \oplus P.\text{retrieve}(\mathcal{H}_{t-1}^{\text{distant}}, q_t)ctx(t)=Wt​⊕C(Ht−1recent​)⊕P.retrieve(Ht−1distant​,qt​)

其中 Ht−1recent\mathcal{H}_{t-1}^{\text{recent}}Ht−1recent​ 是最近 kkk 轮的对话历史,Ht−1distant\mathcal{H}_{t-1}^{\text{distant}}Ht−1distant​ 是更早的已被压缩/索引的历史,qtq_tqt​ 是当前 query 的检索锚点。三个定理刻画了 memory 系统的物理上限:

定理 1(信息瓶颈):给定固定 context window size NNN,任意 compressor CCC 都满足

I(C(H);H)≤log⁡2∣C(H)∣≤N−∣qt∣I(C(\mathcal{H}); \mathcal{H}) \le \log_2 |C(\mathcal{H})| \le N - |q_t|I(C(H);H)≤log2​∣C(H)∣≤N−∣qt​∣

即摘要后的信息量不可能超过剩余 token 预算——这是热力学第二定律的工程版本。定理 2(检索精度天花板):persistor PPP 的检索 recall@K 受限于 embedding 模型的语义分辨率,对话特有的指代消解、时序依赖、用户偏好漂移会持续把 recall 压在 0.6-0.85 区间。定理 3(成本非凸性):memory 系统的总成本 L=Lembed+Lcompress+Lretrieve+Lcontext_fillL = L_{\text{embed}} + L_{\text{compress}} + L_{\text{retrieve}} + L_{\text{context\_fill}}L=Lembed​+Lcompress​+Lretrieve​+Lcontext_fill​ 是 window size、summary rate、index size 的非凸函数——存在最优工作点,但偏离任何一轴都会指数级放大成本。

这三个定理是 memory 工程的物理约束,不是"优化技巧"。工程团队应该把它们当作结构骨架来设计,而不是当作 bug 来绕过。

从这三个定理还能推出一个工程上非常有指导意义的"memory 不可能三角":召回完整度、响应延迟、成本可控——三者至多取其二。这与数据库领域的 CAP 定理、缓存领域的"读穿透/写回/写穿透"三难选择同构。具体来说,高召回意味着更多历史进入 context,token 成本必然上升;低延迟意味着 summarization 必须是同步或预计算,摘要质量必然下降;成本可控意味着检索必须受限,召回必然打折。生产中的 memory 系统不是在三者之间找平衡点,而是根据业务场景选择放弃哪一者:to-C 陪伴类应用放弃成本可控,换高召回+可接受延迟;to-B 客服类应用放弃高召回,换低延迟+成本可控;coding copilot 类应用放弃可接受延迟(用户能等),换极致召回+极致成本控制。这个三角是后续所有架构决策的几何地形。

三、context window manager:滑动窗口不是工程,是工程债

最朴素的 memory 方案是"截断到最近 N 个 token"——这是 2023 年的 baseline,今天仍在 90% 的 demo 中使用,但在生产中它是一笔典型的工程债:用户体验上用户感觉"AI 忘了我们刚才说的",成本上看每个请求都按最贵模型计费,可观测性上你无法解释"为什么这一轮突然聊崩了"。

2026 年的成熟形态是分层滑动窗口,把 context window 切成三个 zone:

[system prompt | static facts | rolling summary | recent turns | current query]
       固定          固定         动态压缩        完整保留         完整保留
       占比 8%       占比 6%       占比 20-40%     占比 30-50%      占比 8-15%

rolling summary 是 compressor 的产物,它在每次 LLM 推理后异步刷新(不要阻塞主请求),刷新策略可以是"每新增 5 轮调用一次 compressor"或"总 token 超过阈值的 80% 时触发"。关键工程原则:summary 的更新必须是 idempotent 的——同一个历史被 summary 两次得到的字符串应该完全一致,否则后续 diff/merge 会爆。

实现层面,下面这段 TypeScript 伪代码展示了 window manager 的核心接口(已脱敏成产品级骨架):

interface WindowManager {
  // 主接口:每轮 LLM 推理前调用
  buildContext(history: Turn[], query: Turn): Context;
  // 异步刷新:每次 buildContext 后异步触发
  refreshSummary(history: Turn[]): Promise<void>;
  // 运维接口:动态调整三层比例
  tuneLayout(layout: LayoutSpec): void;
}

class LayeredWindowManager implements WindowManager {
  constructor(
    private summarizer: Compressor,
    private persistor: Persistor,
    private budget: TokenBudget,
  ) {}

  async buildContext(history: Turn[], query: Turn): Promise<Context> {
    const recentTurns = this.sliceRecent(history, this.budget.recentZone);
    const summary = await this.summarizer.fetch(history);
    const retrieved = await this.persistor.retrieve(
      history, query, this.budget.retrievalZone,
    );
    return {
      system: this.systemPrompt,
      facts: this.staticFacts,
      summary,
      recent: recentTurns,
      query,
      retrieved,
    };
  }

  async refreshSummary(history: Turn[]): Promise<void> {
    const draft = await this.summarizer.summarize(history);
    if (draft !== this.cache.get('summary')) {
      this.cache.set('summary', draft);
      this.metrics.increment('summary.refresh.count');
    }
  }
}

反模式清单(按观测到的频次排序):

  1. 同步 refreshSummary:把 summary 更新放在主请求路径里,导致 P99 latency 翻倍——95% 的初学者都会犯
  2. summary 字符串做 diff:用 LCS 或编辑距离做 summary 增量更新,触发序列化/反序列化损耗——直接全量替换即可,summary 模型本身的成本远低于 diff 算法
  3. window size 硬编码:把 context size 写死在 4096/8192/32768 任何一个固定值——应该按 query 类型、模型路由、用户等级动态调整
  4. rolling summary 不分主题:把"我说我喜欢蓝色"和"我昨天吃了火锅"塞进同一个 summary——主题分割能显著提升召回
  5. summary 缓存无 TTL:用户改了偏好但 summary 没刷新,导致模型"假装记得"——summary 必须有时间戳,TTL 一般 1-4 小时

最后还有一个工程上很容易忽视的细节:window manager 必须是 stateless 的。同一个 history 输入应该产出完全相同的 context 构建结果——这意味着所有随机性(model temperature、检索采样、embedding 编码的浮点误差)都必须隔离出 buildContext 调用之外。任何把"上下文随机扰动"放进 buildContext 的实现,都会让 A/B 测试、回归测试、可观测性系统全部失效。stateless 也是 window manager 横向扩展的前提——多个 worker 实例必须能并行处理同一个 session 的不同 query 而不串味,这是 AI 应用支撑百万级并发的隐性架构要求。

四、compressor:摘要不是"压缩",是"语义投影"

把 history 摘要成短文本这件事,绝大多数团队用 prompt 调一下就上线了。生产中你会遇到三个具体问题:(a) summary 漂移——同一段历史被摘要两次,措辞不同,导致后续检索/对齐失效;(b) summary 失真——关键约束("用户不要推荐香菜")在三轮后就消失;(c) summary 通胀——summary 越长越大,反而比原文更占 token。前两个是 quality 问题,第三个是 cost 问题。

工程上 compressor 必须做到三件事:确定性、关键约束保留、长度收敛。确定性靠 temperature=0 + 强 prompt 模板 + 输出 schema 校验来保证;关键约束保留靠"硬规则优先于软偏好"的 prompt 设计(例如让 LLM 先输出"用户不可妥协的硬约束"列表,再生成 summary);长度收敛靠迭代摘要——先按 50% 长度摘要,再按 50% 摘要前一轮的结果,直到收敛到目标长度。

2026 年的最佳实践是双模型 compressor:用 7B-13B 级别的廉价模型做首轮粗摘要(温度 0、beam search),用大模型(Opus/GPT-5 级别)做关键约束的二次校准。实测成本:粗摘要阶段每千 token 成本约为主推理的 1/15,校准阶段每千 token 成本约为主推理的 1/3——综合成本降到主推理的 1/5,而关键约束保留率从 60% 提升到 92%。注意:这个 1/5 数字是经验值,会随 compressor 模型选型和 prompt 设计波动。

# compressor 的迭代收敛实现(生产脱敏版)
async def compress_with_convergence(
    history: list[dict],
    target_tokens: int,
    coarse_model: str,
    fine_model: str,
    hard_constraints_prompt: str,
) -> str:
    # Step 1: 粗摘要(廉价模型,temperature=0)
    coarse = await coarse_model.summarize(
        history, target_length=target_tokens * 1.2,
        schema={"hard_constraints": list[str], "soft_preferences": list[str]},
    )
    # Step 2: 硬约束二次校准(昂贵模型)
    calibrated = await fine_model.rewrite(
        input_text=coarse,
        preserve=[
            "硬约束必须字面保留",
            "数字、时间、人名不抽象",
            "用户明确反对的事项不可省略",
        ],
    )
    # Step 3: 长度收敛(如果仍超长,再迭代一次粗摘要)
    while len(tokenize(calibrated)) > target_tokens:
        coarse = await coarse_model.summarize(
            calibrated, target_length=target_tokens * 0.8,
        )
        calibrated = await fine_model.rewrite(coarse, preserve=[...])
    return calibrated

可观测性维度(compressor 必须上报的):(1) summary token length 的 P50/P95/P99 分布;(2) summary drift rate(同一历史两次摘要的字符串编辑距离);(3) 关键约束保留率(用 held-out 测试集评估);(4) compressor 调用 latency 的 P95;(5) compressor 调用成本占总请求成本的比值。这五条指标放进 Grafana,团队就能在出问题之前发现趋势。

五、persistor:从向量检索到"状态快照+索引"双层

persistor 是 memory 系统最容易被误读的一层。"用向量数据库"不是答案——向量数据库只是 persistor 的索引实现,persistor 本身的工程问题包括:写吞吐、读延迟、冷热分层、TTL 策略、隐私脱敏、跨用户隔离、向量化成本、检索精度退化检测。任何一个维度失控都会让整个 memory 系统变成黑洞。

2026 年的成熟形态是双层 persistor:

  • L0 层(hot tier):进程内 LRU + 嵌入式向量索引(如 hnswlib、Qdrant in-memory),承载最近 100-500 轮的对话,毫秒级延迟
  • L1 层(warm tier):专用向量数据库(Pinecone / Milvus / pgvector / Qdrant server mode),承载 L0 淘汰下来的历史,亚秒级延迟
  • L2 层(cold tier):对象存储 + 全文索引(S3 + Elasticsearch / OpenSearch),承载超过 30 天的历史,用于审计、回归测试、合规取证

三层之间的 eviction 不是简单的 FIFO/LRU,而是主题生命周期——一段对话如果持续被同一主题的 query 命中,TTL 延长;如果连续 7 天无命中,自动冷化到 L2。关键工程指标:L0 hit rate(目标 ≥ 0.4)、L1 hit rate(目标 ≥ 0.8)、L2 hit rate(任意,正面表征审计能力)。

retrieval 本身也有门道。最常见的反模式是"用 query 向量去检索 history 向量"——这种语义匹配在对话场景下 recall 极差,因为用户的当前问题("那个东西呢")和历史中的对应内容("我昨天推荐给你的香薰机")在 embedding 空间里距离很远。正确做法是两阶段检索:

[raw query] 
   ↓ query expansion (LLM 生成 3-5 个检索关键词 + 1 个时间锚点)
[expanded query + time anchor]
   ↓ hybrid search (BM25 + dense vector + 时间窗口过滤)
[candidates top-100]
   ↓ reranker (cross-encoder)
[final top-K, K=5-10]

两阶段检索的核心收益是把 recall@10 从 0.4 提升到 0.75+,而 latency 增加不超过 80ms。实测配置:embedding 模型用 bge-m3 或 text-embedding-3-large,reranker 用 bge-reranker-v2-m3 或 cohere-rerank-v3.5。

还有一个 2026 年新出现的工程问题:embedding 模型版本漂移。当你从 text-embedding-ada-002 升级到 text-embedding-3-large,所有历史 embedding 都得重新计算;当你从 bge-m3 切换到 bge-large-zh-v1.5,整个 corpus 的检索精度会有 5-15% 的跳变。工程上必须:(a) embedding 模型升级走 canary release,新旧 embedding 同时存在 7-14 天;(b) 每次升级做一次"历史可达性回归测试"——随机抽 1000 条历史 query,验证新 embedding 下的 recall@K 不低于 baseline。

七、对工程实践的推论:五条可执行清单

把 memory 工程落到日常开发节奏,可以归纳成五条可执行项:

  1. memory 系统的"数据库三件套"建设:replica(多副本读写分离)、backup(每日全量+增量)、monitor(前述所有可观测性指标)。memory 不当数据库管,是 90% AI 应用生产事故的根因。
  2. compressor 用双模型而不是单模型:粗摘要+校准的成本结构能压到单模型的 1/5 而关键约束保留率翻倍——这是 2026 年最划算的 ROI 优化。
  3. persistor 走三层冷热分层:L0 进程内 + L1 向量库 + L2 对象存储,对应不同的 SLA、TTL、成本结构。不要把向量数据库当唯一存储。
  4. retrieval 走两阶段 hybrid:query expansion + BM25 + dense + reranker,把 recall@10 从 0.4 拉到 0.75+。单阶段 dense 检索在对话场景下不可用。
  5. memory 系统的"灰度发布"机制:每次 compressor/persistor 模型升级都走 canary release + 黄金 query 集回归测试。memory 升级不像 model 升级那样有 eval 集兜底,必须自己造。

七点五、一个真实生产案例:从月烧 8 万美元到 1.2 万美元的过程

为避免上面的五条清单停留在口号层面,这里展开一个 2026 年 Q2 实际接触过的生产改造案例(细节脱敏)。某 to-B 客服 AI 应用上线 6 个月,月活企业 200 家、月度 query 量 1200 万只。memory 系统当时是"全量向量数据库 + 单模型 summary + sliding window"的三件套——典型的 baseline 架构。

第一个月账单出来,单月成本 8.4 万美元,其中 embedding 入库占了 38%、summary 生成占了 27%、retrieval + reranker 占了 21%、LLM 主推理占了 14%。这意味着每收入 1 美元花在 AI 上有 86 美分花在了 memory 基础设施。从商业角度看完全不可持续。

改造按四条线推进:(a) persistor 引入 L0 进程内 LRU(用 hnswlib in-memory),把最近 100 轮的检索从远程向量库迁到本地,latency 从 120ms 降到 8ms,成本从 21% 降到 4%;(b) compressor 引入双模型(13B 粗摘要 + 大模型校准),成本从 27% 降到 6%,关键约束保留率从 61% 提升到 94%;(c) retrieval 引入两阶段 hybrid + reranker,recall@10 从 0.42 提升到 0.78,主推理的 retry 率从 18% 降到 6%,主推理成本从 14% 降到 9%;(d) 给 summary 加上 per-entity TTL(订单信息 24 小时、产品偏好 30 天、用户身份 90 天),无效 embedding 入库量减少 62%。

改造后第三个月账单:单月成本 1.2 万美元,降幅 86%。其中主推理成本占比从 14% 上升到 64%(绝对值反而下降,因为 retry 减少了)——memory 系统的成本从 86% 压到 36%,业务从"AI 基础设施烧钱"变成"AI 主推理+轻量 memory 基础设施"的健康结构。这个案例的教训不是"做对了哪一步",而是每一步都踩在第一轮每月汇总里已经踩过的反模式上——五点清单不是可选项,是生产事故的复盘清单。

八、讨论:memory 与 context 的边界正在模糊

2026 年最值得讨论的工程趋势是 memory 与 context 的边界正在模糊。传统架构里 memory 在 context 之外("按需召回"),新一代架构里 memory 已经被嵌入到 context 之中——例如 Anthropic 的 prompt caching 把 system prompt + 静态事实做成跨请求缓存,OpenAI 的 memory 能力把跨会话的 user profile 直接注入 system message。这些"内嵌化"的 memory 把工程复杂度从应用层下沉到了模型/平台层,但也带来了新问题:应用层失去了对 memory 的可观测性和可控性。

作者判断:memory 工程的"内嵌化"会在未来 12-18 个月持续推进,但应用层永远需要自己的 memory 系统——因为:(a) 平台级 memory 是粗粒度的(user-level),应用层需要细粒度的(session-level、turn-level、entity-level);(b) 平台级 memory 不可定制(schema、TTL、主题分割都是黑盒),应用层需要完全可控;(c) 平台级 memory 的合规边界还在演化(特别是 GDPR/数据出境),应用层必须有兜底。所以 2027 年以前的 AI 应用架构,"memory 是一条独立的工程子系统"是基本盘。

另一个值得讨论的开放问题是memory 与 tool use 的关系。memory 是 state,tool use 是 action——但 2026 年的 agent 框架越来越倾向于把 tool 调用结果也写入 memory,让"上一步查到的航班信息"在后续 20 轮对话中持续可检索。这把 memory 系统的设计边界从"对话历史"扩展到了"行动历史",带来了三个新挑战:(1) tool result 的 schema 远比自然语言规整,persistor 必须支持结构化字段的索引;(2) tool result 常常包含 PII 或敏感信息,compressor 必须做脱敏;(3) tool result 的时效性差异极大(航班查询 5 分钟过期,天气预报 3 小时过期),persistor 必须支持 per-field TTL。这些都是当前工程社区尚未完全解决的问题,也是未来 6 个月值得跟踪的研究热点。

最后讨论一个容易被忽视的工程议题:memory 系统的灾备与可恢复性。当向量数据库宕机、compressor 调用超限、retrieval 索引损坏时,AI 应用应该回退到什么状态?成熟的设计是"降级链":完整 memory → 仅 summary → 仅最近 N 轮 → 无 memory(仅 system prompt)。每个降级档位都有明确的触发条件和降级告警,最终用户能感知到"AI 有点忘了"但不会看到崩溃。这个降级链的设计哲学与数据库的主备切换、缓存的雪崩保护是同源的——memory 系统的可靠性不是单点 SLA,而是整条降级链的鲁棒性。

九、给 AI 应用架构师的 memory 工程清单

如果你今天就要给一个 AI 应用加 memory 系统,按这个清单推进:

  • Day 1-3:先实现 sliding window + 单层 vector store 的 baseline,能跑通;不要在这一步就开始优化。
  • Day 4-7:加上 summary compressor,单模型,温度 0;引入 system prompt 静态事实区。
  • Week 2:把 compressor 升级到双模型;引入 L0/L1/L2 三层冷热分层;建立可观测性五大指标。
  • Week 3:retrieval 升级到两阶段 hybrid;引入 reranker;做一次 query expansion 的 prompt 调优。
  • Week 4:embedding 模型 canary release 流程落地;golden query 集建立;memory 系统的灰度发布机制跑通。
  • 持续:每周 review memory hit rate 三大指标、summary drift rate、关键约束保留率;每月做一次 corpus embedding 版本对齐回归测试。

memory 工程不是"做完就结束"的项目,而是"持续演化"的基础设施——它的难度不在初始搭建,而在长期运维:模型升级、用户偏好漂移、合规边界变化、成本结构变迁,每一个外部变量都在持续冲击 memory 系统的设计假设。把 memory 当作一个独立的、有 SLA 的、有 on-call 的子系统来运营,是 2026 年 AI 应用架构师的核心能力。

清单之外再补一条组织层面的建议:memory 工程必须有 owner。绝大多数 AI 应用团队把 memory 拆给"前端/后端/ML 工程师"兼任,结果是没有人真正为 memory 系统的成本和稳定性负责——embedding 入库超预算没有人拉闸、compressor 漂移没有人告警、retrieval 精度退化没有人在意。2026 年的成熟组织里,memory 工程至少应该有 1 名全职 owner(可以是应用架构师兼任),明确持有"memory 月度成本目标"、"memory P95 延迟 SLA"、"memory recall@10 指标基线"三件 KPI,每个月在技术评审会上汇报。这条组织建议看起来与"工程架构"无关,但它是上面所有技术清单能否真正落地的关键前提——没有 owner 的子系统,最终都会沦为"反正能跑就别动"的技术债,直到下一次事故。

最后用一句话收束全文:memory 不是 prompt 的一个字段、不是向量数据库的一个 collection、不是 LLM 的一个特性——它是 AI 应用的状态管理子系统,需要像数据库、缓存、消息队列一样被设计、被观测、被运维。把 memory 当基础设施来对待,你的 AI 应用才有可能在 2027 年的成本结构和合规要求下继续存活。


参考文献

  1. Vaswani A, et al. Attention Is All You Need. NeurIPS 2017.
  2. Anthropic. Prompt Caching for Long Context Applications. Anthropic Engineering Blog, 2025-08.
  3. OpenAI. Memory and Personalized Context in GPT-5. OpenAI Platform Docs, 2025-09.
  4. Lewis P, et al. Retrieval-Augmented Generation for Knowledge-Intensive NLP. NeurIPS 2020.
  5. Borgeaud S, et al. Improving Language Models by Retrieving from Trillions of Tokens. ICML 2022.
  6. Izacard G, et al. Atlas: Few-shot Learning with Retrieval Augmented Language Models. JMLR 2023.
  7. Chen X, et al. Dense Passage Retrieval for Open-Domain Question Answering. EMNLP 2020.
  8. Karpukhin V, et al. Dense Passage Retrieval for Open-Domain QA. arXiv:2004.04906, 2020.
  9. Santhanam K, et al. ColBERTv2: Efficient and Effective Passage Search via Contextualized Late Interaction. EMNLP 2022.
  10. Ren J, et al. Zero-Shot Dense Retrieval with Embedding Quantization. arXiv:2210.10442, 2022.
  11. Wang L, et al. Towards Few-shot In-Context Learning for Retrieval-Augmented Generation. ACL 2024.
  12. Khattab O, et al. Demonstrate-Search-Predict: Composing Retrieval and Language Models for Knowledge-Intensive NLP. arXiv:2212.14024, 2022.
  13. Anthropic. Long Context and Effective Prompting. Anthropic Engineering Blog, 2025-04.
  14. OpenAI. Structured Outputs and Function Calling Best Practices. OpenAI Cookbook, 2025-10.
  15. LangChain. Memory Module Architecture. LangChain Documentation, 2026-Q1.
  16. LlamaIndex. Chat Memory and Compression. LlamaIndex Documentation, 2026-Q1.
  17. Pinecone. Hybrid Search and Reranking Patterns. Pinecone Learning Center, 2025-11.
  18. Qdrant. Tiered Storage and Quantization. Qdrant Engineering Blog, 2025-12.
  19. Milvus. Vector Database Operations and Observability. Milvus Documentation, 2026-Q1.
  20. BGE. BGE-M3 and BGE-Reranker-v2-m3 Technical Report. BAAI, 2024.
  21. Cohere. Rerank 3.5: Production-grade Reranking. Cohere Documentation, 2025.
←返回文章列表

Related

可能也会喜欢

  • AI 应用交付物工程 2026:从工具结果到可验证产物10月31日
  • AI 应用的记忆写侧工程 2026:抽取、晋升与冲突消解10月30日
  • 向量数据库选型 2026:pgvector 与专用引擎的边界10月29日

Conversation

0 条

留下你的想法

加载评论中…

New comment