发布于 · 更新于 · AI 生成,已对照实时价目自动事实核查 · English

按使用量计费的LLM如何工作:令牌、预付费与402错误

太长不看: 按使用量计费的LLM API根据输入和输出令牌数量收费,费用从预付费余额中实时扣除。这种按量付费模式无需月度承诺。当余额为零时,API会返回明确的HTTP 402 Payment Required错误。

按使用量计费的LLM如何工作?

大多数云LLM API(包括TokShop)都按令牌而非按请求收费。令牌是文本块——英语中大约相当于0.75个单词——您发送的每个提示和收到的每个响应都会被分解为令牌。API对它们进行计数,乘以每个模型的单价,并从您的预付费余额中扣除费用。

这种按使用量计费的模式(也称为按量付费)意味着您只需为实际使用量付费。没有月度承诺、没有席位许可,即使您运行一个繁重的批处理作业也不会产生意外超额费用。但这也意味着您需要了解令牌如何计数、余额如何跟踪以及余额耗尽时会发生什么。

令牌:消费的基本单位

每个LLM调用都有两个令牌流:输入(提示词、系统消息、对话历史)和输出(生成的响应)。API会在响应元数据中报告这两个计数。

例如,TokShop的OpenAI兼容端点返回的典型响应包含:

{
  "usage": {
    "prompt_tokens": 142,
    "completion_tokens": 83,
    "total_tokens": 225
  }
}

输入和输出令牌的定价不同,因为生成令牌(输出)在计算上比处理令牌(输入)更繁重。例如在TokShop上,DeepSeek V3.2每百万输入令牌收费$0.42,每百万输出令牌收费$0.63——输出是输入的1.5倍。其他模型则不同:GLM 4.6输入收费$0.90,输出收费$3.30(3.7倍),而Qwen3 Coder输入收费$2.25,输出收费$11.25(5倍)。

您可以在TokShop定价页面查看完整价格列表。关键要点是:输出令牌在账单中占主导地位,尤其是在编码或推理模型上。

账本:预付费信用与实时扣款

按使用量计费需要一个余额系统。TokShop使用预付费美元信用系统:您向账户充值资金,每次API调用都会实时扣除精确费用。没有月度发票,也没有每次调用的信用卡扣款——只有一个运行中的账本。

以下是典型调用如何转化为费用的过程:

  1. 您发送提示词。API处理它,计算输入令牌,并开始生成输出。
  2. 生成完成后,API计算:
    费用 = (输入令牌数 * 输入单价) + (输出令牌数 * 输出单价)
  3. 该费用立即从您的账本中扣除。

例如,一个1000输入/500输出的DeepSeek V3.2调用费用为:
(1000 * 0.42/1e6) + (500 * 0.63/1e6) = $0.00042 + $0.000315 = $0.000735

这不到十分之一美分。您需要大约1,360次这样的调用才会花费$1.00。

您的账本在TokShop仪表板中可见,旁边还有每次调用的日志,包含令牌计数和精确的美元成本。这种透明度有助于您调试成本激增并预估未来使用量。

402错误:余额为零时会发生什么

当您的预付费信用耗尽时,API会返回HTTP 402 Payment Required错误。这不是一个错误——这是系统在强制执行您的支出限额。

典型的402响应体如下所示:

{
  "error": {
    "message": "Insufficient balance. Please add credits in your dashboard.",
    "type": "insufficient_balance",
    "code": 402
  }
}

您的应用程序应该优雅地处理此情况。一个简单的Python方法:

import openai

client = openai.OpenAI(base_url="https://tokshop.xyz/v1", api_key="sk-tok-...")

try:
    response = client.chat.completions.create(
        model="deepseek-v3.2",
        messages=[{"role": "user", "content": "Hello"}]
    )
    print(response.choices[0].message.content)
except openai.APIStatusError as e:
    if e.status_code == 402:
        print("Balance exhausted. Please top up at https://tokshop.xyz/register")
    else:
        raise

402是一个清晰的信号:它明确告诉您请求失败的原因,没有歧义。您可以设置一个监控脚本,通过仪表板API定期检查余额,或者直接捕获402错误并通知您的团队。

如何预估和控制成本

由于定价是按令牌和按模型计算的,您可以在构建之前预估成本。一些实用建议:

  • 使用更短的系统提示词。 系统消息中的每个令牌在每次调用中都会作为输入收费。
  • 设置 max_tokens 限制。 如果不设置,模型可能会生成长篇响应,尤其是在创意或推理任务上。
  • 为简单任务选择更便宜的模型。 DeepSeek V3.2($0.42/$0.63)适用于摘要和聊天。将Qwen3 Coder($2.25/$11.25)保留给准确性更重要的代码生成任务。
  • 记录令牌使用量。 存储每个响应中的 usage.total_tokens。乘以您模型的混合价格(输入和输出价格的加权平均值)以跟踪一段时间内的支出。

粗略估计,假设一次典型对话平均每轮500个输入令牌和200个输出令牌。使用DeepSeek V3.2,每轮成本约为$0.000336——大约每美元3,000轮对话。

为什么按使用量计费对开发者很重要

传统的SaaS计费通常按席位或按月收费,与实际使用量无关。对于LLM API,其使用量可能在开发期间激增而在生产环境中下降,按使用量计费使成本与价值保持一致。当您的应用程序繁忙时支付更多,闲置时支付更少。

权衡之处在于,您必须监控余额并优雅地处理402错误。但借助预付费信用和透明的日志记录,系统是可预测的。您还可以使用仪表板在阈值处设置警报(例如,“当余额低于$10时提醒我”)。

有关管理密钥和检查使用量的完整文档,请参阅TokShop文档

总结

按使用量计费的LLM通过计算令牌数量、应用每个模型的价格并从预付费账本中扣除费用来工作。402错误是您的安全网——一个资金耗尽的明确信号。通过理解令牌经济学并在代码中处理402错误,您可以构建具有成本意识的应用程序,永远不会因意外账单而措手不及。

相同的原则适用于大多数LLM提供商,但具体的价格、模型选择和账本机制各不相同。请查看定价页面以获取您所用模型的准确费率,并始终先用小额余额进行测试。

常见问题

当我的TokShop余额耗尽时会发生什么?

当您的预付费信用耗尽时,API会返回HTTP 402 Payment Required错误,并附带明确消息,提示您通过仪表板添加更多信用。

为什么输出令牌比输入令牌更贵?

输出令牌定价更高,因为生成文本(输出)对模型来说比处理文本(输入)在计算上更密集,输出价格通常是输入的1.5倍到5倍,具体取决于模型。

如何预估和控制我的LLM API成本?

您可以通过使用更短的系统提示词、设置响应的 max_tokens 限制、为简单任务选择更便宜的模型以及记录令牌使用量来跟踪一段时间内的支出,从而控制成本。

立即体验

文中提到的模型都已上线我们的 OpenAI 兼容 API,按 token 透明计价。 查看价格并获取 API Key →

相关文章