L

[LLM] 粗浅理解大模型 Promot Cache

RoLingG 其他 2026-06-30

粗浅理解大模型 Promot Cache

读完之前的 粗浅理解大模型 KV Cache,可能会有个误解,以为大模型定价的 输入(命中缓存)Token输入(未命中缓存)Token输出 Token 这三个价位中的两个缓存指的是 KV Cahce,但实际上这里的缓存指的是 Promot Cache (前缀缓存)

先区分两种缓存

很多文章会直接把 Prompt Cache 和 KV Cache 混在一起,其实它们完全不是一个层面的东西。

KV Cache

KV Cache 是 Transformer 推理过程中使用的缓存。例如:

用户:介绍一下 Go 协程

模型经过 Prefill 后,会得到这一段 Prompt 对应的所有 Key 和 Value,并保存在 GPU 显存中。

随后模型开始逐 Token 生成内容:

Go
↓
语言
↓
中
↓
...

每生成一个 Token,就会把这个 Token 对应的 Key 和 Value 追加到缓存中。

因此,KV Cache 的生命周期通常只有一次会话(Session)。

聊天结束以后,这份 KV Cache 就会被释放。


Prompt Cache

Prompt Cache 则完全不同。它属于 API 服务层

它缓存的不是某次聊天,而是 多个 API 请求中重复出现的 Prompt 前缀。

例如:

System Prompt:

你是一位 Go 专家。
回答必须使用中文。
所有代码必须符合 Go 官方规范。

(共10000 Token)

如果你的 AI 应用每天都会使用这段 System Prompt,那么每一次请求都需要重新 Prefill 这 10000 个 Token。

这是非常浪费 GPU 算力的。

于是服务器会把这一整段 Prompt 对应的 KV 保存下来。

以后再次遇到完全相同的前缀,就可以直接恢复,而不需要重新计算。


Prompt Cache 的命中条件是什么?

Prompt Cache 并不是 "只要内容差不多就行。"

达到命中缓存的条件必须是:前缀必须一致(Prefix Match)。

例如:

第一次:

System Prompt
 ↓
你好
 ↓
介绍 Go

第二次:

System Prompt
 ↓
你好
 ↓
介绍 Rust

那么:

System Prompt
 ↓
你好

这一整段仍然可以命中缓存。

只有:

介绍 Rust

属于新增输入。

因此,Prompt Cache 更准确的名字其实就是:Prefix Cache(前缀缓存)


为什么这种设计对开发者很友好?

假设你开发一个 AI 客服,每天都会发送:

System Prompt

10000 Token

一天 1000 次请求。

如果没有 Prompt Cache。那么,服务器需要处理 10000 × 1000 重复 Prefill。这是极大的资源浪费。

而有了 Prompt Cache,第一次:

10000 Token
    ↓
Cache Write

之后 999 次:

10000 Token
    ↓
Cache Read

你不仅 API 成本下降,模型响应速度(尤其是首 Token 时间,TTFT)也会明显缩短。

因此,对于:

  • AI Agent
  • 企业客服
  • RAG
  • Coding Assistant
  • 长 Prompt 应用

Prompt Cache 几乎都是一项"一次投入,多次收益"的优化。


Prompt Cache 和 KV Cache 的关系

如果把两者放到一起理解,其实会非常清晰。

KV CachePrompt Cache
Transformer 内部机制API 服务层机制
生命周期通常是一次会话生命周期通常跨多个请求
每个 Session 独立维护多个请求可以共享
聊天结束释放缓存命中期间持续存在
为了解决 Decode 重复计算为了解决 Prefill 重复计算

可以把 Prompt Cache 看成:把一次会话中的 KV Cache,提升到了整个 API 服务层,实现跨请求复用。

也正因为如此,现代 AI 应用都会尽量保持 System Prompt 稳定

因为 Prompt 越稳定:

  • Cache 命中率越高
  • API 成本越低
  • 首 Token 延迟(TTFT)越短
  • GPU 算力利用率越高

总结

Prompt Cache 并不是替代 KV Cache,而是建立在 KV Cache 思想之上的服务层优化。

KV Cache 解决的是一次会话内的重复计算,而 Prompt Cache 则进一步把这些已经计算好的前缀扩展为跨请求可复用的共享缓存

对于需要频繁发送长 System Prompt 的 AI 应用来说,Prompt Cache 不仅能降低 API 成本,还能显著减少模型的首 Token 延迟,因此已经成为现代 LLM 服务中非常重要的一项工程优化。

PREV
[LLM] 大模型处理Token流程
NEXT
[LLM] Paged Cache策略

评论(0)

发布评论