1.6 KiB
1.6 KiB
title, created, updated, type, tags, sources, confidence
| title | created | updated | type | tags | sources | confidence | |||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Prefix Matching Invariant(前缀匹配不变性) | 2026-06-29 | 2026-06-29 | concept |
|
|
high |
Prefix Matching Invariant
prompt-caching 的铁律:缓存按字节从头进行哈希校验,前缀中任何微小更改都会导致该位置往后的所有缓存集体失效。
机制
- 模型缓存已计算完毕的上下文前缀(KV Cache)
- 下次请求前缀完全一致 → 命中缓存,跳过 Prefill 阶段
- 成本降低约 90%,延迟降低最高 85%(Anthropic, 2024)
"从静到动"分层排列
为最大化缓存命中率,上下文必须严格按以下顺序排列:
静态 ──────────────────────────────────────→ 动态
[工具定义] → [系统提示] → [历史对话] → [动态消息]
反直觉设计要求
动态全局变量不能插在开头的系统提示中:
- ❌
System: "今天是 2026-06-29。你是..."→ 日期变化击穿整段缓存 - ✅ 将日期作为普通消息挂在对话流最末尾,保证前缀稳定性
缓存经济学
参考阿里云百炼计费规则:首次创建缓存按输入 100% 计费,后续命中仅需 20%。
N > 3 即可产生净收益(同一前缀在被清理前复用第 2 次开始省钱)。高频迭代 Agent 的极低边际成本即源于此。