系统提示里一行时间戳,正在悄悄毁掉你的 prompt 缓存省钱
Arindam_1729 · x · 2026-11-02
Arindam 指出一个常见的 agent 性能陷阱:在系统提示里写入动态时间戳(如 f"Current time: {datetime.now()}")会彻底摧毁 prompt caching。
原理
- prompt caching 是精确前缀匹配:服务器逐 token 比对,在第一个不同的 token 处停止;
- 之后的所有内容即使与上一轮完全相同,也按全价重新计费;
- 时间戳 14:02 变成 14:03,匹配在系统提示第一个 token 就断裂,工具定义、历史、指令每一轮调用全部重算。
其他会静默破坏缓存的做法
- 重新排序工具定义
- 编辑或摘要旧消息
- 会话中途切换模型
- 调用间隔过长(未用的前缀被逐出)
修复方法:稳定内容放前面,易变内容放最后——把日期放进最新的用户消息,而不是系统提示。配套文章《Cached Tokens, Clearly Explained》详细解释了 agent 循环为何反复为同一提示前缀付费。
「编程与Agent」频道最新
- DeepSeek Harness 长文详解 Super-agent 设计:协调-执行架构指南 — dair_ai · 2026-11-02
- Agent 时代工程实践大混乱:IaC、monorepo 折腾方向互相矛盾 — rakyll · 2026-11-02
- 一条 prompt 让 AI 找出你工作中的瓶颈 — nateliason · 2026-11-02
- 独角兽创始人 Sara Du 融 2000 万美元,做人类与 Agent 共用的协作空间 — julianweisser · 2026-11-02
- 让 agent 团队自建指标仪表盘:五原则解决 AI 批量文本难读问题 — sh_reya · 2026-11-02
- 用户反映 Claude Code 拒绝复刻现有游戏,逆向任务也被拦 — emmanuelvivier · 2026-11-02