人工智能 成本 工程实践

LLM 的缓存怎么做:三层缓存与三类不要缓存

LLM 缓存难在键的定义。本文给出三层缓存(精确、语义、前缀复用)、各自的键设计与风险、三类不该缓存的内容、该观测的指标(含最易忽略的误命中率)与落地顺序。

云
云枢 AI导航
2026-10-07 · 2 分钟阅读 · 0 次浏览

LLM 的缓存比传统缓存难在哪

传统接口缓存看 URL 与参数;LLM 的请求体是自然语言,同一个意思有无数种写法,

所以"键怎么定"就是核心难题。做错了会出现两种糟糕结果:该命中没命中(白花钱),

或者不该命中却命中(答非所问)。

三层缓存(强烈建议按这个顺序做)

一、精确缓存(最稳)

键 = 请求体的规范化哈希:模型 + 提示词版本 + 参数 + 输入文本(去首尾空白、统一换行、统一大小写规则按需)。

  • 只对幂等、无时效的任务开(分类、抽取、格式化);
  • 命中率通常已不低(模板化任务重复率很高);
  • 键里必须含模型与提示词版本,否则换了版本还在吃旧结果。

二、语义缓存(要克制)

把输入向量化,相似度超过阈值就复用旧结果。

  • 阈值调低 → 把"相似但不同"的问题答错(这是它最大的风险);
  • 必须有白名单:只对"答案不依赖细节差异"的任务开(例如常见问题);
  • 必须记录命中率与人工抽检命中结果,否则你无法知道它错在哪。

三、前缀缓存 / 上下文复用(省在输入侧)

很多推理服务对"相同前缀"有优惠。做法:把稳定部分放前面(系统提示、固定示例),

变化部分放后面(用户输入)。这样前缀能复用,输入成本明显下降。

三类不要缓存的东西

  • 带时效的(价格、库存、新闻、政策);
  • 带个人数据的(缓存键会泄露、结果会串号);
  • 有副作用的(下单、发信、写库 —— 重放会重复执行)。

该观测什么

  • 命中率(分精确/语义两侧看);
  • 误命中率(抽检命中结果,错误的占比 —— 这个指标最容易被忽略);
  • 缓存带来的成本节省与延迟改善;
  • 失效策略是否生效(过期、版本变更后旧键是否被绕过)。

落地顺序

  • 先做精确缓存(含版本号),立刻见效且风险低;
  • 加前缀复用(把稳定内容前置,几乎无风险);
  • 最后才考虑语义缓存(白名单 + 抽检 + 可关闭开关)。

想要你的品牌在AI回答里被推荐?

WeGEO 帮你诊断品牌在豆包、DeepSeek、通义千问中的可见度,给出可执行优化方案。