缓存未命中

Cache Miss

缓存未命中指 Prompt 前缀与服务端缓存记录匹配失败,模型需要从头重新计算所有输入 Token 的 KV 张量,无法享受折扣价格和加速。

详细解释

缓存未命中(Cache Miss)缓存命中 的反面:当你的请求前缀在服务端的缓存服务器上找不到完全匹配的记录时,就会触发未命中。此时模型必须执行完整的 Prefill 阶段,按全价计费、按完整长度计算 ITPM 配额。

造成未命中的常见原因

原因说明
前缀不完全一致System Prompt 多了一个换行、一个空格、或者变量顺序不同,都会 100% 未命中
缓存过期内存缓存通常 5–10 分钟无流量就会被淘汰(详见 缓存命中
请求被路由到不同机器服务端按前缀 hash 做路由,但高并发下会出现”溢出路由”到无缓存的机器
模型不支持缓存部分旧模型、轻量模型根本没开缓存功能

如何判断一次请求是否命中

所有主流厂商都会在 usage 对象里返回缓存字段,例如:

{
  "usage": {
    "prompt_tokens": 12000,
    "prompt_tokens_details": {
      "cached_tokens": 9600
    }
  }
}

缓存命中率 = cached_tokens ÷ prompt_tokens × 100%

唯元智创(Weimeta)在调用日志面板上给每条请求打了”命中/未命中”标签,并按天统计命中率趋势,低于 60% 时会有提示帮你排查前缀不稳定的根因。

常见问题

第一次请求肯定是未命中吗?
是的。同一前缀必须先有一次”写入缓存”的请求,后续请求才能命中。建议在系统启动时或用户高峰前做一次预热请求。