返回博客
阅读约 1 分钟

把 AI 成本管住:用 AI 做东西到底花多少钱

为什么 AI 账单常常出人意料、真正有效的四个杠杆是什么,以及第一次调用 API 之前必须设好的那个上限。

  • #AI
  • #成本
  • #Token
  • #API
控制 AI 成本的四个步骤:理解计费单位、限制上下文、复用重复内容、设置支出上限
分享

简短回答

AI 不按问题计费,而是按 token 计费;你随请求发送的上下文,每一次调用都会被重新计费。因此一场长对话比十场短对话更贵。订阅和 API 是两套彼此独立的体系,各有各的限制。真正有效的做法是:保持上下文精简、把重复的前缀缓存起来、选择合适的模型规模,并在第一次自动化调用之前设好支出上限。

控制成本的四个步骤

先弄清楚为什么付费,再去限制,而不是反过来。

  1. 理解计费单位

    按 token 计费,而不是按问题或按回答计费。

  2. 限制上下文

    每次调用都要为随行的全部历史重新付费。

  3. 复用重复内容

    把固定不变的开头缓存起来,而不是每次重发。

  4. 设置上限

    自动化启动前,先在账户里设好硬性支出上限。

第一次收到 AI 账单时感到意外,原因很少是价格高,而是脑子里装着一个错误的模型:以为是按问题付费。实际上你付的是文本量,而且是每一次调用中随请求一起发送的全部文本量。 一旦想通这个区别,做东西时的决定会立刻不一样。

这篇文章讲的是机制,不是当天的价格。数字会变,套餐会改名,促销来了又走。下面这四个杠杆始终不变,无论你用的是 Claude、ChatGPT、Gemini 还是本地模型。

按 token 计费,而不是按问题

token 是一小段文本,视语言不同,大约相当于半个词到一个词。厂商对输入和输出分别计费,而且输入 token 通常明显比输出 token 便宜。 因此,一个简短的问题配上极长的回答,可能比一个很长的问题配上简短回答更贵。

由此有一个立刻可用的做法:「请简短」不是客套话,而是一条成本指令。在任务里明确写出格式和长度,就等于给账单里更贵的那一半设了边界。这也是为什么一个精确的任务描述能带来双重回报——质量上的和金钱上的。它该怎么写,见你的第一个好提示词

真正推高成本的是上下文

这里藏着能解释大多数账单的意外之处:语言模型在两次调用之间没有记忆。 为了让对话像对话,每进行一步,之前的全部历史都会被重新发送一次——并作为输入被重新计费。

也就是说,一次会话的第二十步,同时也在为前面的十九步买单。在编程会话里,文件、报错信息和工具输出还会一并进入历史,这份基础负担会迅速膨胀。十次简短干净的对话,通常比一次什么都拖着走的长对话更便宜。

由此得出一个比任何比价都更省钱的习惯:话题一变就开新对话。这不是为了整洁,而是因为旧历史否则会在之后的每一步里被继续付费。对智能体同理:一个边界清晰、有明确停止条件的任务,产生的工具调用远少于开放式探索——而AI 智能体默认往往就会启动这种探索。

订阅和 API 是两个世界

付费订阅是带使用上限的固定费用:每月付固定金额,偶尔撞上限制。API 恰好相反——它不含任何免费额度,每次调用单独计费。 作为交换,只要你的支付方式有效,它不会拦住你。

两者彼此分离:订阅不含 API 额度,API 使用走的是独立账户,有自己的速率限制和账单。混淆两者,要么是白等一次额度重置,要么是无意中启动了付费用量。当前挡住你的是哪一种限制、什么时候恢复,见Claude 与 Codex 的使用限制

日常可以这样记:手工干活放订阅,自动化放 API——而自动化必须配上限。

真正能改变金额的四个杠杆

保持上下文精简是最强也最省钱的杠杆,因为它在每一次调用中都生效。换话题就换对话,只放相关文件而不是整个目录,不要把完整的报错日志整段贴进去。

把重复的内容缓存起来。 当很多次调用共用同一段很长的开头——系统指令、规则文档、参考资料——厂商正好为此提供了缓存:Anthropic 的 prompt caching 有效期较短,Google 在 Gemini API 中提供 context caching。重复的那部分会以低于完整重传的价格结算。如果每次都是简短且全新的提示词,缓存没有任何帮助,只有真正存在重复时才划算。

批量处理,而不是逐条调用。 如果任务不必立刻完成,异步处理是更便宜的路径。Anthropic 提供 message batches,Google 提供 Batch API。代价是等待时间——对于夜间分析、批量翻译或数据准备来说,这通常无关紧要。

选择合适的模型规模。 最大的模型未必带来最贵的结果。边界清晰、可机械校验的任务,小模型往往够用;而开放式规划和困难排错,大模型经常反而更便宜,因为它第一次就把事情做成,而不是到第四次才成。 三次失败的便宜尝试,比一次成功的昂贵尝试更贵。

上限要设在实验之前

最贵的账单不是昂贵模型造成的,而是没人叫停的循环:一出错就重试的脚本、没有停止条件的智能体、被遗忘的定时任务。没有支出上限,你只能从账单上知道这件事。

因此顺序很简单:在第一次自动化调用运行之前,就在厂商账户里设好支出上限。 不是之后,也不是「等上线再说」。此外,为新密钥设置较低的速率限制、按项目分开 API 密钥、为每次回答设定最大 token 预算,都会有帮助。

每月五分钟的例行检查

成本控制不是一次性设置。每月问四个问题就够:

  • 消耗量和我实际做过的事对得上吗?
  • 是否还有我忘掉、但仍在运行的自动化调用?
  • 有没有反复出现、但还没缓存的长开头?
  • 模型选择还符合当前任务,还是只是沿用下来的?

判断依据始终是厂商的用量面板,而不是自己的估算。Anthropic 另外提供 Usage and Cost API,可以用程序方式查询消耗与费用,并接入自己的看板。

这篇文章刻意不做的事

它不给出每百万 token 的具体价格,也不做套餐的金额对比。这类数字在厂商调整它的那一天就是错的,而这种调整发生的频率,远高于一篇博客文章所能承受的。具有约束力的数值在文中链接的价格页面和你自己的账户页面里。

留下来的是机制:计费单位是 token 而不是问题、上下文是乘数、订阅与 API 是两个钱包,以及一个在事故之前而不是之后起作用的上限。把这四件事配置好一次,AI 成本就很少需要再费心。

小测验

成本逻辑弄明白了吗?

三个问题,关于真正决定账单金额的机制。

1 / 3

为什么一场长对话的成本会越来越高?
显示答案
  1. 1. 为什么一场长对话的成本会越来越高?

    正确答案: 因为之前的对话历史在每一步都会被重新发送

    模型在调用之间没有记忆。历史每次都被重新传输,因此每次都被重新计费。

  2. 2. 订阅和 API 之间是什么关系?

    正确答案: 是两个独立的钱包,各有限制和计费方式

    订阅用量和 API 计费是分开的。订阅不含 API 额度,API 也没有免费额度。

  3. 3. 第一次自动化调用之前,你要做什么?

    正确答案: 在厂商账户里设置支出上限

    一个被误触发的循环,如果没有上限,你要等到账单来了才会发现。上限是唯一能在事故之前起作用的刹车。

来源

  1. Claude PricingAnthropic · 访问于 2026-07-15
  2. Usage and Cost APIAnthropic · 访问于 2026-07-15
  3. How do usage and length limits work?Claude Help Center · 访问于 2026-07-15
  4. Codex pricing and usage limitsOpenAI · 访问于 2026-07-15
  5. Gemini API pricingGoogle · 访问于 2026-07-15
  6. Context cachingGoogle · 访问于 2026-07-15
  7. Batch APIGoogle · 访问于 2026-07-15
  8. Rate limitsGoogle · 访问于 2026-07-15

常见问题

为什么一场长对话比几场短对话更贵?

因为语言模型在两次调用之间没有记忆。为了让回答贴合上下文,之前的全部对话会在每一步被重新发送并重新计费。第二十步同时也在为前面的十九步付费。

订阅是不是比 API 便宜?

手工使用通常是的,因为订阅是有使用上限的固定月费。一旦调用进入自动化,决定因素就变成用量:API 按 token 计费,不含任何免费额度。

我的 ChatGPT 或 Claude 订阅包含 API 额度吗?

不包含。厂商把订阅用量和 API 计费分开管理。API 走的是独立账户,有自己的付款方式、速率限制和支出规则。

提示词缓存或上下文缓存到底能省下什么?

当同一段很长的开头在多次调用中重复出现时才有用,例如系统指令、规则文档或参考资料。重复的部分会以低于完整重传的价格计费。如果每次都是简短且不同的提示词,缓存没有意义。

怎么判断小模型就够用?

当任务边界清晰、结果可以机械校验时:格式化、摘要、抽取、重命名。而开放式规划、困难的排错和长工具链,往往用大模型更便宜,因为它需要的尝试次数更少。

怎样持续盯住成本?

看厂商的用量面板,而不是自己估算。Anthropic 另外提供 Usage and Cost API,可以用程序方式查询消耗与费用。