用 Prompt Caching 降低重复长上下文成本
把稳定的长前缀放到可缓存位置,减少重复请求的延迟与费用。
基于 OpenAI Developers 整理 · Prompt Caching · 官方资料
同一份系统说明、工具定义或长文档被反复送进模型时,Prompt Caching 可以复用已处理前缀。
这篇帮你确认:哪些内容适合固定在前缀,如何观察缓存命中,以及动态用户问题应放在后面。
把稳定内容放在前缀
缓存命中依赖前缀一致。把不变的系统提示、schema、工具说明放在前面;把每次变化的用户问题放在末尾。
稳定前缀 + 变化问题
python
from openai import OpenAI
client = OpenAI()
SYSTEM = "你是文档助手。只根据给定规范回答,不确定就说明不知道。"
response = client.responses.create(
model="gpt-5.6",
input=[
{"role": "system", "content": SYSTEM},
{"role": "user", "content": "规范第 3 节允许哪些错误码?"},
],
)
print(response.output_text)
print(getattr(response.usage, "prompt_tokens_details", None))最容易踩的坑
每次请求都改系统提示
任何前缀字符变化都会打断缓存;把可变部分挪到后缀。
看不到命中指标
检查 usage / prompt_tokens_details 中的 cached tokens 字段(以当前官方字段名为准)。