
AI API Prompt Caching 完整指南:Claude、GPT、Gemini 缓存省钱教程 2026
AI API Prompt Caching 完整指南:Claude、GPT、Gemini 缓存省钱教程 2026#
当你的 AI 应用每天处理大量相似请求时,Prompt Caching(提示缓存)可以帮你节省 50-90% 的 API 费用。本指南详细介绍各大平台的缓存机制和最佳实践。
什么是 Prompt Caching?#
Prompt Caching 是 AI API 提供商推出的优化功能:当你多次发送包含相同前缀内容的请求时,系统会缓存已处理过的 token,后续请求只需支付极低的缓存读取费用。
核心原理#
普通请求:
[系统提示 (2000 tokens)] + [用户消息] → 全部计费
缓存请求:
[系统提示 (2000 tokens) ← 已缓存] + [用户消息] → 只有用户消息计费
各平台缓存支持#
| 平台 | 缓存类型 | 缓存折扣 | 最小缓存量 | 缓存时效 |
|---|---|---|---|---|
| Anthropic (Claude) | 显式缓存 | 90% 折扣 | 1,024 tokens | 5 分钟 |
| OpenAI (GPT) | 自动缓存 | 50% 折扣 | 1,024 tokens | 5-60 分钟 |
| Google (Gemini) | Context Caching | 75% 折扣 | 32,768 tokens | 自定义 |
各平台缓存实战#
Claude Prompt Caching(Anthropic)#
Claude 的缓存需要显式标记:
import anthropic
client = anthropic.Anthropic(api_key="你的密钥")
# 使用 Crazyrouter 转发也支持缓存
import openai
client = openai.OpenAI(
api_key="你的-crazyrouter-key",
base_url="https://crazyrouter.com/v1"
)
# 方法:将大量系统提示放在前面,利用前缀缓存
SYSTEM_PROMPT = """你是一个专业的法律文档分析师。
以下是本公司的合同模板和法律条款参考(约 5000 字)...
[大量参考资料文本]
"""
# 第一次请求(写入缓存)
response = client.chat.completions.create(
model="claude-sonnet-4-5-20250929",
messages=[
{"role": "system", "content": SYSTEM_PROMPT},
{"role": "user", "content": "审核这份合同第三条是否合规。"}
],
max_tokens=2000
)
# 后续请求(命中缓存,系统提示部分享受 90% 折扣)
response2 = client.chat.completions.create(
model="claude-sonnet-4-5-20250929",
messages=[
{"role": "system", "content": SYSTEM_PROMPT}, # 相同前缀 → 命中缓存
{"role": "user", "content": "检查第五条的违约责任条款。"}
],
max_tokens=2000
)
GPT-5 自动缓存(OpenAI)#
OpenAI 的缓存是自动的,无需特殊设置:
import openai
client = openai.OpenAI(
api_key="你的-crazyrouter-key",
base_url="https://crazyrouter.com/v1"
)
# GPT 会自动缓存相同的消息前缀
SHARED_CONTEXT = """你是一个代码审查专家。
以下是我们的编码规范(约 3000 字)...
[编码规范内容]
"""
# 批量审查多个文件(自动缓存共享上下文)
files_to_review = ["file1.py", "file2.py", "file3.py"]
for file_name in files_to_review:
response = client.chat.completions.create(
model="gpt-5.2",
messages=[
{"role": "system", "content": SHARED_CONTEXT},
{"role": "user", "content": f"审查 {file_name} 的代码..."}
],
max_tokens=2000
)
# 从第二次请求开始,SHARED_CONTEXT 部分自动享受 50% 折扣
print(f"审查 {file_name}: {response.choices[0].message.content[:100]}...")
Gemini Context Caching(Google)#
import openai
client = openai.OpenAI(
api_key="你的-crazyrouter-key",
base_url="https://crazyrouter.com/v1"
)
# Gemini 的上下文缓存适合处理超长文档
LONG_DOCUMENT = """[一份 100 页的技术文档,约 50,000 tokens]"""
# 多次提问同一文档的不同方面
questions = [
"总结文档的核心架构",
"列出所有性能指标",
"找出潜在的安全风险"
]
for q in questions:
response = client.chat.completions.create(
model="gemini-2.5-flash",
messages=[
{"role": "system", "content": f"基于以下文档回答问题:\n{LONG_DOCUMENT}"},
{"role": "user", "content": q}
]
)
print(f"Q: {q}\nA: {response.choices[0].message.content[:200]}\n")
缓存省钱计算#
场景:客服机器人(每天 10,000 次调用)#
| 项目 | 无缓存 | 有缓存 | 节省 |
|---|---|---|---|
| 系统提示 (3K tokens × 10K 次) | $90.00 | $9.00 | $81.00 |
| 用户消息 (500 tokens × 10K 次) | $15.00 | $15.00 | $0.00 |
| 输出 (1K tokens × 10K 次) | $300.00 | $300.00 | $0.00 |
| 日总费用 | $405.00 | $324.00 | $81/天 |
| 月总费用 | $12,150 | $9,720 | $2,430/月 |
💡 结合 Crazyrouter 的路由优化,还可以再省 20-30%。
Prompt Caching 最佳实践#
1. 把不变内容放在前面#
messages = [
# ✅ 固定内容在前 → 容易命中缓存
{"role": "system", "content": "固定的系统提示和参考资料..."},
{"role": "user", "content": "变化的用户输入"}
]
2. 保持前缀一致#
# ❌ 错误:每次请求的前缀不同,无法命中缓存
messages = [
{"role": "system", "content": f"当前时间:{datetime.now()} 你是..."},
...
]
# ✅ 正确:动态内容放后面
messages = [
{"role": "system", "content": "你是一个专业助手...(固定部分)"},
{"role": "user", "content": f"当前时间是 {datetime.now()},请回答..."}
]
3. 合理控制缓存粒度#
- 太少(<1024 tokens):无法触发缓存
- 太多(>100K tokens):缓存写入成本高
- 最佳:2K-30K tokens 的系统提示/参考资料
常见问题 (FAQ)#
Prompt Caching 需要额外付费吗?#
不需要。缓存是由 API 提供商自动管理的,你只需按照最佳实践设计请求格式,就能自动享受缓存优惠。
所有模型都支持 Prompt Caching 吗?#
主要的大模型(Claude 3.5+、GPT-4o+、Gemini 2.0+)都支持。通过 Crazyrouter 调用时,缓存功能会自动透传。
缓存会影响回答质量吗?#
完全不会。缓存只是避免重复计算相同的输入 token,输出质量与不使用缓存完全一致。
如何查看是否命中了缓存?#
大多数 API 会在响应头或 usage 字段中返回缓存命中信息。例如 Claude 的 usage.cache_read_input_tokens 字段会显示缓存读取的 token 数。
总结#
Prompt Caching 是降低 AI API 成本最有效的方法之一。通过合理设计请求结构,你可以节省 50-90% 的输入 token 费用。
开始使用缓存优化:
- 注册 Crazyrouter 获取统一 API Key
- 将固定的系统提示和参考资料放在消息前缀
- 监控缓存命中率,持续优化
Crazyrouter 支持 300+ 模型的统一接入,自动路由到最优后端,配合 Prompt Caching 可以将你的 AI API 成本降到最低。


