Codex CLI 0.164版本修复了影响缓存命中的关键问题。Codex的压缩功能用于处理对话历史并生成摘要,分为本地压缩与远程压缩两种:前者在本地处理,后者依赖OpenAI或Azure服务。判断方式是config.toml中provider的name字段,填OpenAI或Azure走远程压缩,其他走本地压缩。0.164之前,普通请求会按当前工具列表拼接一条additional_tools,固定放在请求第一条但不进历史,只要工具列表变化,后续缓存就会全部失效;而本地压缩请求不拼接additional_tools,导致第一条无法命中缓存,命中率几乎为零。0.164默认开启incremental_tools,工具声明被存入历史,新增工具作为新的additional_tools追加在历史末尾,前面的前缀保持不变,因此即使工具列表变化,缓存依然有效,顺带解决了本地压缩无法命中缓存的问题。实测数据显示,升级后缓存命中率中位数从0%提升至98.6%,缓存token与输入token的比例从约11%提升至约89%。需注意该优化只适用于Responses Lite模型,对GPT 5.5无效。
事件分析
此次更新的核心是提示词缓存的前缀稳定性问题:任何位于请求前部的动态内容都会破坏KV缓存的复用。Codex将工具声明纳入历史并采用增量追加方式,把动态变化移到请求尾部以保住共同前缀,这是Agent类产品上下文工程的典型设计范式。从成本角度看,长会话Agent场景下缓存命中率直接决定推理开销,命中率从0%到98.6%意味着输入token实际计费量可下降数倍,对重度使用编码Agent的开发者影响显著。后续来看,缓存友好的上下文管理将成为Claude Code、Cursor等编码Agent竞争的关键技术点,而Responses Lite与完整Responses API在缓存行为上的差异也值得持续关注。
核心观点:缓存命中率就是Agent产品的成本生命线,前缀工程正成为AI编程工具的隐形竞争力。
原文链接:Linux.do