TodayAI

用 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 字段(以当前官方字段名为准)。

官方资料

OpenAI DevelopersPrompt caching