痴迷优化:我们将推理成本削减了68%
内容提要
Cloudflare优化其AI代码审查代理,将平均审查成本从2.43美元降至0.77美元(降68%),中位耗时从4分09秒缩短至1分32秒。约40%的节省来自代码优化,其余来自模型与推理强度调整。关键措施包括:各仓库共享缓存前缀、减少LLM调用、并行读取文件、跳过无新内容的复审。质量评估显示,高强度下代码质量审查仍能发现相当数量的真实问题,且误报和严重性虚高大幅减少。
延伸解读
成本上涨的根源:模型升级与上下文膨胀
文章指出,审查成本从4月的1.19美元涨至8月的2.46美元,主要并非架构变化,而是模型更换和上下文规模扩大。8月全面转向Anthropic模型使单次成本从1.38美元升至2.03美元,同时每次审查的token量从91万增至299万。即使缓存命中率高达97%,大量token仍推高费用。这提醒读者,模型能力提升往往伴随成本上升,需定期审视token消耗结构。
缓存前缀共享:被忽视的省钱杠杆
优化前,每个会话首次请求仅有14%至26%的概率命中缓存,原因是系统提示将仓库特定信息与共享部分捆绑,导致跨仓库无法复用。通过拆分提示块、为共享部分单独设置缓存断点,并移除前置的仓库特定内容,首次请求命中率大幅提升。仅此一项配合内部标准审查器的索引内联,就将单次成本从2.47美元降至2.02美元。对于运行AI代理的团队,检查首次请求是否真正读取缓存应是首要优化点。
减少调用次数:并行读取与跳过无效复审
代码质量审查器平均每次审查发起16.6次LLM调用,每次调用都携带完整对话上下文,成本随调用次数和上下文大小双重增长。优化措施包括:让审查器在首轮响应中并行读取所有相关文件(最多150KB)、移除子审查器无法使用的工具、在复审时跳过无新内容的审查器、审查发布后立即停止而非多跑一轮生成无人查看的摘要。这些改动合计每次审查节省约0.20美元,并显著缩短延迟。
质量权衡:高强度审查保住真实发现
成本下降后,代码质量审查器在高强度下发布的严重发现减少40%,但作者实际修改率从34%升至59%,每千次审查中导致修改的发现数量与之前基本持平(132对145)。盲审评估显示,重要发现数量从0.28微增至0.30,而严重性虚高从0.46降至0.14。然而,中等强度确实丢失了真实发现,导致修改的发现仅为高强度的约四分之一;性能审查在中等强度下重要问题减少约64%。因此,代码质量已调回高强度,性能和安全仍在评估中。
Q&A
Cloudflare的AI代码审查代理成本降低了多少?
平均审查成本从2.43美元降至0.77美元,降幅68%;中位耗时从4分09秒缩短至1分32秒。
为什么AI代码审查的成本会从1.19美元涨到2.46美元?
主要原因是模型变更:8月初将所有审查器迁移到Anthropic模型,使每次作业成本从1.38美元升至2.03美元;同时工程师产生的变更更大更复杂,更多审查落入最昂贵的“完整审查”层级。
Cloudflare如何通过缓存优化来降低推理成本?
他们发现每个会话的第一个请求只有14%-26%的概率命中缓存,因为OpenCode v1将共享的代理提示和环境信息放在同一个块中,缓存断点设在块末尾,导致共享部分无法单独存储。9月16日,他们在代理提示末尾添加标记,并用插件钩子将块拆分为二,使前半部分(所有作业共享的字节)拥有自己的缓存断点,从而让不同仓库的审查可以复用缓存前缀。
减少LLM调用次数采取了哪些具体措施?
措施包括:移除子审查器无法使用的工具(避免浪费调用);让审查器并行读取文件(首次响应中读取共享上下文和所有补丁);在复审时跳过无新内容的审查器;在发布审查评论后停止额外回合;将超时审查器与提供商故障区别对待;取消已取消的作业。这些措施合计每次审查节省约0.20美元。
成本降低后,代码审查质量是否下降了?
对于代码质量审查器(高强度),虽然严重发现数量减少了40%,但作者对严重发现的采纳率从34%升至59%,每千次审查中导致更改的发现数量与之前大致相同(132 vs 145)。模型评判显示,重要发现数量基本不变(0.28→0.30),而严重性虚高减少了70%。因此,消失的主要是噪音和虚高严重性,真实问题发现能力未受显著影响。但性能审查在中强度下丢失了约64%的重要发现,安全审查可能也有下降,因此计划测试高强度。
模型和推理强度的调整对成本降低贡献了多少?
在总节省的1.67美元中,代码优化贡献0.65美元,模型与推理强度调整贡献1.06美元。具体调整包括:协调器从三种模型/强度组合中选定中强度Opus 5.5(与高强度相比无显著效果差异但更便宜);将Sonnet审查器全部迁移到Sonnet 5.5(每token价格相同但token用量更少,代码质量运行成本降低62%);代码质量审查器从Sonnet 5.5中强度改为高强度(成本增加61%但发现更多真实问题)。
优化后审查延迟改善了哪些具体指标?
超过5分钟的审查比例从37.9%降至0.7%;中位完整审查从5分16秒降至1分54秒,轻量审查从2分58秒降至1分14秒,琐碎审查从77秒降至30秒;第99百分位延迟现在比4月份四分之三的审查还要快。