Token Reduction Is Not Cost Reduction
本文表明,减少编码智能体上下文中的 Token 数量并不能可靠地降低计费成本,因为提示词缓存(prompt-cache)流量占据主导地位且存在任务失败的风险,因此本文主张应基于成功调整后的计费成本而非仅仅基于 Token 减少量来评估成本效率。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一下你正在经营一家高科技侦探社,你的超级智能 AI 侦探(被称为“编码代理”)通过阅读文件、运行命令并与你聊天来破解谜题。每当他们阅读一个文件或运行一个命令时,你都会收到来自云服务商的账单。
长期以来,大家都认为节省成本的最佳方法是让侦探们读更少的文本。逻辑很简单:“如果我们压缩了他们阅读的文件,我们就减少了字数,账单自然就降下来了!”这听起来是个完美的计划,就像通过挤出所有空气来压缩行李箱一样。
但这篇标题为**《Token 缩减并不等于成本降低》(Token Reduction Is Not Cost Reduction)**的论文,在这里告诉我们,行李箱的比喻是一个陷阱。作者进行了一场大规模实验——在 7 个不同的代码库和 3 种不同的 AI 模型上进行了超过 2,908 次侦探运行——以观察实际的账单情况如何。
这里有一个转折:他们发现,缩减文本并不总是能缩减账单。 事实上,有时缩减文本反而会让账单上升。
“缓存记忆”的惊喜
最大的震惊在于钱到底花在了哪里。作者拆解了账单,发现 87% 的重构成本(以及大约 80% 的实际账单)来自于一个叫做“提示词缓存流量”(prompt-cache traffic)的东西。
把 AI 的记忆想象成一块超快、神奇的白板:
- 在白板上写字(创建缓存/Cache Creation): 这需要花钱,但是一次性的费用。
- 从白板上阅读(读取缓存/Cache Reads): 这非常便宜,就像拿到了一张折扣券。
- 新文本(未缓存输入/Uncached Input): 这是昂贵的部分,但它其实只占极小的一部分(仅约 1.3% 的账单!)。
然而,白板并没有清晰展示出的隐藏成本。作者发现账单中存在 8.7% 的“无法归因残差”(unattributed residual),他们的标准拆解法无法解释这部分内容。这部分剩余的金额并非随机产生的;它直接随着 AI “思考得有多努力”而变化。在 Haiku 4.5 模型上,你设置的“思考强度”越高,这个神秘的账单就会变得越大。这表明,即使文本看起来很短,AI 可能也在进行昂贵的脑力劳动,而这些劳动并未体现在 Token 计数中。
问题在于,当你压缩文本时,你不仅仅是在节省“新文本”部分的费用。你可能会破坏“从白板上阅读”的部分。如果你把文件压缩得太厉害,AI 可能会感到困惑,忘记自己在做什么,然后不得不重新阅读整个对话历史来理清思路。
每当 AI 需要重新阅读这段历史时,它就必须再次将内容写入白板。而“写入”是非常昂贵的!因此,即使你节省了一些单词,你也迫使 AI 一次又一次地支付“写入费”。
“38% 的削减”反而更贵
作者测试了一个高级压缩系统(称为 RTK-ML),该系统成功减少了 38.4% 的原始工具输出文本。你会觉得这能省下一大笔钱,对吧?
错了。
在配对测试中,这个系统实际上增加了 6.8% 的成本(其 95% 置信区间为 [+2.8, +11.3])。
为什么?因为压缩得太激进,导致 AI 必须采取额外的步骤来解决问题。它必须运行额外的诊断轮次、重新阅读文件并提出更多问题。每一个额外的步骤都意味着要重新传输整个对话历史,这抵消了文本压缩带来的任何节省。
论文明确排除了“更少的 Token = 更低的成本”这一观点。他们发现,你移除的文本量与节省的金额之间的关系基本上是不存在的。两者的相关性仅为微弱的 0.15,这几乎接近于零,简直就像抛硬币一样随机。
“断裂锚点”的灾难
压缩还有另一种反噬方式:它会破坏 AI 执行任务所需的线索。
作者在 Go 语言编程任务上进行了一项特别测试。他们发现,当他们压缩文本时,AI 有时会丢失“逐字编辑锚点”(verbatim edit anchors)——即它在修复 Bug 时需要精确复制并粘贴的、字节级一致的代码行。
想象一下你在试图修理水管漏水,但你阅读的说明书被挤压得太厉害了,以至于你需要切割的具体部位变成了一个模糊的污点。AI 试图进行修复,但由于指令损坏,那个“补丁”(修复方案)无法匹配。
- 未使用压缩时: AI 成功应用了 27 出 40 个补丁。
- 使用压缩后: AI 只成功完成了 15 出 40 个。
在这项特定测试中,压缩版本不仅在每次成功修复的成本上更高,而且失败的频率也更高。作者指出,虽然压缩版本的“单次尝试成本”看起来较低,但由于失败次数过多,其“每个已解决问题的成本”实际上是原来的两倍($0.515 vs. $0.248)。
“黑盒”代理
他们还测试了另一个名为 Headroom 的工具,它像是一个中间人,在消息到达 AI 之前对其进行重写。这个工具对钱包来说简直是一场灾难。它使成本比完全不做处理时高出了 48.4%(置信区间为 [+42.3, +55.0]),且没有任何成功率上的提升。
总结
论文的结论是,如果你想在 AI 编码代理上节省资金,你不能只盯着“Token 计数器”并假设你在省钱。
- 他们证明了: 在这些特定的、真实的测试场景中,减少文本并不能可靠地降低成本。事实上,对于 RTK-ML 系统,它反而让事情变得更贵了;对于 Headroom,它让事情变得贵得多。
- 他们测量了: 他们不只是在猜测;他们追踪了 2,908 次实际运行,总账单约为 $175.92(仅针对主要实验部分),外加 8.7% 随思考强度变化的、无法用标准 Token 计数解释的额外账单。
- 他们建议: 衡量一个压缩工具是否有效的唯一方法,是测量每个成功任务的最终账单金额,而不是看删除了多少个单词。
所以,下次有人告诉你,“我们把数据压缩了 50% 来帮你省钱!”你可以微笑一下并说:“酷,但你检查过 AI 是否因为这个不得不把整本书又重新读了一遍吗?”因为在 AI 代理的世界里,有时最短的路径反而是最昂贵的。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。