最近在使用CODEX的过程中,每天顶着30-50元的DEEPSEEK平台API接口日消耗额,实在消耗不小,然后找了一下每一轮对话,Codex 都会把「系统提示 + 工具说明 + 到目前为止的全部聊天记录」重新发一遍。所以单轮成本 = 固定约 1.7 万 token + 已有历史长度,整个会话的累计花费按轮数的平方增长。这不是 bug,是对话式大模型的通

扫码分享
二维码

详细介绍

最近在使用CODEX的过程中,每天顶着30-50元的DEEPSEEK平台API接口日消耗额,实在消耗不小,然后找了一下每一轮对话,Codex 都会把「系统提示 + 工具说明 + 到目前为止的全部聊天记录」重新发一遍。所以单轮成本 = 固定约 1.7 万 token + 已有历史长度,整个会话的累计花费按轮数的平方增长。这不是 bug,是对话式大模型的通用机制。

先说结论

被 API 账单吓到过一次:119 次请求,干掉 58,041,753 个 token。

一天大几十块钱,一个月就是小两千。我当时的想法只有一个:这玩意儿我玩不起。

折腾了一晚上,终于搞明白了——不是它黑,是它的计费方式跟我以为的完全不一样。

我以为的 vs 实际上的

我以为:聊天机器人嘛,我说一句它回一句,花的就是这两句的钱。

实际上:它每一次回答,都会把"系统提示 + 工具说明 + 我们之前聊过的全部内容"重新发一遍给模型。

打个比方:你去饭馆点菜,每加一道菜,服务员都要把前面点过的所有菜重新念一遍,而且按念出来的字数收费。

所以:

  • 第 1 轮:只发当前这句,约 1.7 万 token

  • 第 25 轮:要把前面 24 轮全带上,6.3 万 token

  • 第 50 轮:8.8 万 token

聊天记录越长,每一轮越贵,而且是平方级往上涨。

我是怎么发现的

Codex 会在本机留会话日志,我把自己的翻出来,写了个脚本统计。数据很难看。

一个 50 轮请求的会话,干的事就是给一个小工具加个"多选"功能、再打包成 exe:

输入 289 万 token + 输出 3.6 万 = 293 万 token

为了打包一个 exe,花了将近 300 万 token。

再往下翻,还有几个我完全没意识到的地方:

  1. 每轮固定开销 1.7 万 token。 系统提示 6000、工具说明 5500、技能清单 4000——我一个字都没打,先烧 1.7 万。

  1. 我装了 54 个技能插件,每一个都要在每轮请求里报一遍名字和用途,固定占 4000 token。

  1. 中途换模型是重灾区。 我把模型从 A 换成 B,整段聊天记录被重新按原价算了一遍——因为缓存失效了。缓存命中价通常只有原价的 1/8。

说句实话:那 5800 万里有一部分是我在别的工具、别的机器上一起用掉的。但机制一模一样,跑不掉。

我怎么改的

知道原因就好办了。目标很明确:把上下文长度压下来,把轮数压下来。

第一步:改三个开关

在 C:\Users\Administrator\.codex\config.toml 里加三行:

model_context_window = 120000            # 单轮最多发送约 12 万 token
model_auto_compact_token_limit = 84000   # 到 8.4 万就自动压缩历史
tool_output_token_limit = 6000           # 单次工具输出最多保留 6000 token

翻译成人话:

  • 第一行:别让它一口气吃满二十几万 token 的上下文

  • 第二行:聊到 8.4 万就自动"总结前情",而不是硬撑着越滚越大

  • 第三行:长日志、文件列表只留前 6000 token,不准一直躺在聊天记录里重复收费

怕手改出错,我让它顺手写了个一键脚本:双击应用、双击还原,还会自动备份原配置。改完完全退出 Codex 再重开才生效。

第二步:改我自己的习惯

这一步比配置更重要:

  1. 一个话题聊完就开新会话。 最狠的一招,上下文直接归零,花费立刻掉回 1.7 万/轮。

  1. 不中途换模型。 换一次,整段历史重算一次。

  1. 不整份读大文件、不贴长日志。 贴一次十万字的日志,之后每一轮都要为它重复付费。

  1. 长期背景写进项目里的说明文件,别每开一个新会话就重新口述一遍。

  1. 盯着"单轮输入"这个数字。 涨到 5 万以上就该收尾了,说明这个会话已经很贵。

第三步:装个"仪表盘"

我让它又写了个小报表,双击就能看:每个会话烧了多少 token、缓存命中率多少、大概花了多少钱。

看到"未缓存"那一列特别高的时候,就知道自己又干了烧钱的事。

改完的效果

  • 长会话的单轮成本大概砍掉一半以上

  • 聊天记录不再被几百行日志长期占着重复收费

  • 心里有数了,不用再靠"月底看账单"来发现超支

当然,最省钱的一招还是那个最土的:聊完就开新会话。

最后

回头看,这个坑的本质是:我们用"聊天"的直觉,去理解一个"每一轮都要重新投喂全部上下文"的系统。

你以为在聊天,它以为在一次又一次地重新阅读理解你们的历史——而阅读,是按字数付费的。

所以别再怪自己"话多"了。把窗口压小、把会话分段、把大文件挡在门外,剩下的交给习惯。

文件对应123云盘下载地址:https://www.123912.com/s/Eu2njv-Cr5dh