如果你在生产环境中使用大语言模型,你已经知道模型性能只是一半的问题。另一半则是月底的账单。Mancer 2、Novita 和 StreamLake 这三家供应商最近调整了模型价格。如果你依赖这些 API 中的任何一个,你下一份账单的样子可能与上一份大不相同。

这已不再罕见。LLM 市场仍在探索如何对推理进行收费。一些供应商按每千个 token 计费。另一些则将请求打包成不同的层级,或提供持续使用折扣。当一个平台调整其单价或重构其层级时,对你预算的影响可能从轻微的困扰到严重的成本超支不等。跟踪这些更新并非可选,而是工作的一部分。

为什么 API 定价值得你关注

开发者通常将 API 定价视为一项“设置好就不用管”的开支项目。你对模型进行基准测试,选择一个供应商,然后继续构建功能。这种做法在出问题之前一直有效。在当前的格局下,定价变化可能在悄无声息中发生。供应商可能会降低旧模型的成本,同时提高其新端点的价格。另一家可能会引入上季度还没有的输出 token 附加费。如果你不留心,只有在云账单寄达时才会发现。

LLM 计费的细粒度使得这个问题变得尤为棘手。你很少支付固定的月费。你支付的是每一个 prompt token 和每一个 completion token。输出端的涨价可能比输入端更令人心痛,因为 completion 通常比 prompt 更长。如果你的应用程序生成长文本、代码或多步推理链,那么每个 token 的微小增长也会迅速扩大规模。

还存在“漂移”问题。你的应用程序的 token 构成会随时间而变化。你可能会添加一个新的 system prompt,从而消耗更多的输入 token。你可能会切换到思维链(chain-of-thought)提示词,从而产生更长的输出。即使供应商的价格保持不变,你的成本也会发生变化。当供应商的价格同时变动时,缺乏透明度的团队可能会受到突如其来的冲击。

发生了哪些变化

Mancer 2、Novita 和 StreamLake 都推出了价格调整。具体细节因平台而异,但方向是一致的:你上个月使用的成本结构可能不再适用。

Mancer 2 更新了其模型定价,这意味着使用其端点的开发者需要重新评估其每次请求的成本。如果你在内部文档中缓存了旧的价格表,那些数据已经过时了。

Novita 也对其提供的所有服务进行了价格调整。对于因符合特定预算范围而选择 Novita 的团队来说,新费率可能会改变进行中项目的总拥有成本(TCO)。

StreamLake 也调整了其定价。在下一个计费周期运行之前,应重新审查任何围绕 StreamLake 早期费率表构建的集成。

由于这是三个具有不同定价模型的不同平台,因此对于你会支付更多还是更少并没有统一的规律。一个供应商可能会降低入门级费率,同时提高高级吞吐量定价。另一个可能会调整上下文窗口(context-window)溢价。唯一可以确定的假设是,你旧的电子表格已经错了。

忽视费率变化的隐藏成本

让我们看看这在实践中究竟意味着什么。假设你运行一个每天处理一万次对话的客户支持助手。每次交流平均消耗两千个输入 token 和四百个输出 token。即使每百万 token 仅变动几美分,每月也可能累积成数百美元。如果价格变化影响了输出 token,而你的助手因为你升级了模型而开始生成更长的回复,那么你将面临双重打击。

此外还有乘数效应。许多应用程序并不会在每次用户请求时仅调用一次 LLM。它们会在循环中调用,或者在带有检索步骤的流水线中调用,或者在需要回退到次级模型时调用。回退模型的价格变化可能看起来并不紧迫,直到你的主模型达到速率限制(rate limit),而你不得不花一个忧郁的周三在更昂贵的备用模型上挥霍预算。

预算超支并不是唯一的风险。如果价格下降而你没有察觉,你可能会不必要地限制使用量。你本可以服务更多的用户、处理更大的文档,或者降低你对客户的定价。无知带来的影响是双向的。

如何养成成本追踪习惯

你不需要企业级的财务团队来掌控这一切。你只需要一套常规流程和一个记录变更的地方。

首先,集中管理你的费率表。维护一份简单的文档——无论是共享的 Wiki 页面、Notion 表格,还是开发频道中的置顶消息——列出你使用的每个模型的当前每 token 或每请求价格。当供应商宣布变更时,立即更新文档。不要等到迭代评审(sprint review)时才处理。

其次,按供应商和模型对使用量进行打标签。大多数可观测性工具都允许你为 API 调用附加自定义元数据。利用这些标签生成每周成本摘要。如果你发现费用激增,可以在几秒钟内查明是由于使用量增加还是费率变动引起的,而不是耗费数天时间。

建立一个消耗率(burn-rate)警报。这不需要多么复杂。一个每天早上查询使用量仪表盘并将数值发布到 Slack 的定时脚本就足够了。当数值跳变时,你当天就会知道,而不是在三十天后收到财务部门发来的愤怒邮件。

每季度审查一次你的模型选择。一月份最适合你用例的模型在六月份可能就不再是最佳选择,这并不是因为模型变差了,而是因为定价格局发生了变化。曾经价格过高的供应商可能降低了费率,而曾经便宜的首选模型可能涨价了。请根据实时价格而非历史价格重新运行你的基准测试。

最后,在架构决策中考虑定价因素。如果你知道某个供应商经常变动费率,那么在设计系统时,应确保能够直接更换端点(endpoints),而无需重写一半的代码库。将客户端抽象在内部接口之后。将模型名称保存在配置文件中,而不是硬编码在提示词层(prompt layer)里。

从哪里获取可靠的更新

供应商的博客和文档是官方来源,但在忙碌的一周里很容易被忽略。一种选择是关注那些专门追踪整个生态系统中此类变更的精选汇总。关于近期 Mancer 2、Novita 和 StreamLake 调整的完整细分,请查看这里的详细摘要:

LLM 定价变更:Mancer 2, Novita, and StreamLake

如果你想保持消息灵通,并与其他努力控制 AI 基础设施账单的开发者交流心得,还有一个值得加入的社区:

Telegram 上的 GyaanSetu AI

对抗意外账单的最佳防御手段,是建立一个能在变更发生时及时提醒你的信息网络。

核心启示

定价波动是当前 LLM 市场的一个特性,而非缺陷。运行模型的成本在降低,供应商在尝试不同的费率结构,竞争也在推动价格变动。从长远来看,这是个好消息,但前提是你必须保持关注。像对待可用性指标(uptime metrics)一样对待你的 API 成本:进行测量、设置警报并定期进行审查。Mancer 2、Novita 和 StreamLake 最近的变更只是在提醒你:你的 AI 技术栈的价格标签永远不会是固定不变的。