什么是 上下文缓存(Context Caching)?
上下文缓存(Context Caching)是复用重复提示词上下文或已计算模型状态的做法,使 LLM 服务不必为每个请求重复计算相同输入 token。
工作原理
当许多请求共享长前缀时,上下文缓存很有价值,例如系统提示词、政策文档、工具规格、few-shot 示例或固定 RAG 上下文。服务层可以根据平台能力复用已缓存的分词、提示词处理或 KV Cache 状态,而不是每次支付完整预填充成本。这可以改善长提示词的 TTFT 和成本,但缓存正确性取决于精确前缀匹配、模型版本、分词器、权限和失效规则。过期或错误共享的缓存会带来隐私和正确性风险。
主要特点
- 复用重复上下文以减少冗余预填充计算
- 在长共享前缀和高请求复用率场景最有用
- 可改善 TTFT、吞吐量和服务成本
- 需要严格缓存键,覆盖模型、分词器、提示词前缀和权限
- 当来源内容、政策或模型版本变化时需要失效
常见用途
- 缓存所有用户共享的长系统提示词
- 在 Agent 请求中复用工具 schema 或政策文本
- 当某组文档被反复查询时降低 RAG 延迟
- 改善带稳定指令块助手的 TTFT
- 把可公开缓存上下文与用户私有上下文隔离
示例
loading...
Loading code...常见问题
上下文缓存节省的是什么?
它可以根据服务平台能力节省重复分词、预填充计算或 KV Cache 构建。
上下文缓存什么时候最有帮助?
当许多请求共享长而稳定的前缀,且每个用户请求只改变较小后缀时,它最有帮助。
上下文缓存会泄露数据吗?
会。缓存键和权限边界必须防止私有上下文被未授权用户复用。
为什么模型版本会影响上下文缓存?
缓存的模型状态只对同一模型、分词器和兼容服务配置有效。