主流大模型的Cache机制对比

PromptCaching / ContextCache 区别

  • Prompt Caching :站在"计费 + 文本比对"角度------"这段文字我上次已经付费处理过"。
  • Context / KV Cache :站在"底层推理加速"角度------"这段 token 的注意力 Key/Value 已经算好,直接拷贝显存"。

两者经常被打包,但并不完全等同:前者可以单独存在于费用层,后者则是深度优化推理流程。

概念 关注点 工作层级 典型叫法
Prompt Caching "提示词文本" 是否已经付费处理过 计费 / API 层 OpenAI "cached prompt tokens"、DeepSeek "prompt_cache_hit_tokens"
Context (KV) Cache Transformer 已算好的 Key/Value 表 是否能直接复用 推理核心 / GPU 显存层 vLLM "KV‑Cache reuse"、Gemini "context cache"、Anthropic "retrieved cache"

1. Prompt Caching(计费缓存)

  1. 判断粒度: 纯文本(token 序列)是否与历史请求前缀 哈希一致。

  2. 目的:

    • 计费折扣 ------ 同一前缀不重复收钱或少收。
    • 省前序推理时间 ------ 服务端跳过对这段文本的 tokenization 和 embedding。
  3. 和模型本身无关:即使你用的是不支持 KV cache 的旧模型,厂商仍可在 API 网关层做 Prompt 缓存。

  4. 局限: 只能整段命中;你只要改动一个标点就会 MISS。

实际应用:在助手型应用里,一段 "系统指令 + few‑shot 示例" 经常复用,Prompt Caching 能立刻省钱。

2. Context / KV Cache(推理缓存)

  1. 判断粒度: Transformer 层每个 token 生成的 Key/Value 向量。

  2. 目的:

    • 显著降低 GPU 计算量 ------ 后续 token 只需与新输入交互,而不用重复扫老 token。
    • 支持超长上下文 ------ KV 存在外部高速缓存或 CPU 内存,避免显存爆炸。
  3. 与模型 Serve 框架强绑定:需要 vLLM、Triton 等在后端维护 KV‑Cache 映射;不同 batch 共享。

3. 如何利用两种缓存 

目标 做法
省钱(封装 API) 把固定 System/Few‑shot Prompt 提前传,确保格式稳定(别多空格),让 Prompt Cache 命中率 > 90%。
提速(自托管模型) 用 vLLM / TGI 开启 KV Reuse,分批送 token;并在长对话中保留 message‑id,让服务端知道可复用 KV。
可控性 需要明确 TTL 和手动失效,则选支持显式 Context Cache 资源的方案(Gemini、Claude)。OpenAI/Qwen 走隐式策略,无法设 TTL。

主流模型的差异

启用方式、最小缓存阈值、默认 TTL、计费规则、开发者可控性 等方面的差异。

模型 启用方式 最小可缓存 tokens 默认 TTL(Time 2 Live) 计费规则(写入 / 命中) 开发者可控点
GPT‑4o / 4.1 自动,只要前缀 > 1024 tokens 即生效 1 024 官方未公开(内部策略) 写入 = 正常价;命中 = ‑75 %(0.5×) 仅统计字段 cached_tokens;TTL 不可调
Claude 4 (Opus / Sonnet) 显式 cache_control 标记前缀 任意长度 5 min / 1 h 二档 写入 = 1.25× / 2×;命中 = 0.1× TTL 档位、是否缓存由开发者决定
Gemini 2.5 Pro / Flash 两种 : ① 自动(同上阈值) ② 显式创建 cache 资源并引用 Pro = 2 048 Flash = 1 024 60 min,可设更长 写入 = 正常价;命中 = ‑75 % 可创建 / 更新 / 删除 cache;可设 TTL
DeepSeek V3 / R1 自动;64 tokens 为存储块 ≥ 64 几小时‑数天,自动清理 写入 = 1 元 / MTok;命中 = ‑90 %(0.1 元) 无 TTL 控制;prompt_cache_hit_tokens 计数
Qwen 2.5 自动;内容 < 256 tokens 不缓存 ≥ 256 不公开(空闲后自动回收) 命中部分按 0.4× 单价收费 仅展示 cached_tokens;TTL 不可调
Grok 4 自动开启,可在控制台关闭 未公开 未公开 命中部分按「Cached prompt tokens」优惠价 只能查看 usage.cached_prompt_tokens
相关推荐
泯泷13 分钟前
做 AI 产品,路线图该数“实验”,而不是数“功能”
人工智能·llm·产品
火山引擎开发者社区2 小时前
OpenVIking 连接各种数据源,一键编译 LLM Wiki
llm
吴凡wudianmei4 小时前
从0搭AI Agent(六):什么时候该把任务拆给多个 Agent
langchain·llm·ai编程
愤怒的代码7 小时前
上下文窗口:模型的短期记忆
人工智能·llm·agent
lucas_AI7 小时前
450 个不说话的 AI agent:SwarmEvolve 把进化搜索提速 5-13 倍
llm·agent
风雨中的小七7 小时前
解密Prompt系列73. 爆改对话框:揭秘 Intelligent UI 的动态界面魔法
llm·agent·mcp
用户460381291941 天前
ChatMemory 要被弃用了?Spring AI 2.1 用事件溯源重做 Agent 记忆
llm·agent
泯泷1 天前
别再死磕提示词了:Anthropic 说,AI Agent 真正的胜负手是“上下文工程”
llm·aigc·agent
mCell1 天前
AI 时代,我为什么开始追求 100% 的测试覆盖率?
llm·ai编程·测试
lucas_AI1 天前
给 Claude Code 挂上代码地图:token 省了 39%,但先看你的瓶颈在哪
llm·agent