OpenAI API Token 怎么计算?看 usage 字段估成本并排查上下文超限

从 OpenAI 响应的 usage 读取输入与输出 Token,按当前价格表估算成本并区分上下文超限。

OpenAI API 的 Token 不等于中文字数,也不能只靠目测估算。最可靠的做法是读取每次真实响应的 usage,分别记录输入、输出和总 Token,再按照调用当天的官方价格表计算;上下文超限则是另一类问题。

从真实响应读取用量

from openai import OpenAI

client = OpenAI()
response = client.responses.create(
    model="gpt-6-luna",
    input="用三点解释向量检索,并给出一个生活例子。",
    max_output_tokens=300,
)

usage = response.usage
print("input", usage.input_tokens)
print("output", usage.output_tokens)
print("total", usage.total_tokens)

把模型名、请求时间和这三个字段一起写入用量账本。不同模型、长短上下文、缓存输入和工具调用可能采用不同价格项,因此不能把一种模型的单价套给所有请求。当前单价应查OpenAI 官方 API 价格表。

OpenAI API Token 怎么计算?看 usage 字段估成本并排查上下文超限

用统一公式估算费用

基础公式是:输入成本 = 输入 Token ÷ 1,000,000 × 输入单价;输出成本 = 输出 Token ÷ 1,000,000 × 输出单价;再按价格表加入缓存写入、缓存命中或工具费用。示例:如果某模型本次有 20,000 输入 Token 和 2,000 输出 Token,就把这两个真实数分别乘以对应单价,不能只用总 Token 乘一个价格。

价格会变化,本文不把某个数字写死成永久报价。财务报表应保存“用量来源、采用的价格版本、计算时间”,并用平台 Usage 页面抽样对账。

区分计费与上下文超限

官方会话状态指南说明,多轮消息会持续占用上下文。上下文窗口约束的是本次请求可容纳的输入、历史和预留输出;账单则记录实际处理的用量。输入过长时,应删减无关历史、摘要旧消息、检索必要片段或选择合适模型,而不是简单充值。

  1. 出现长度错误时先记录模型、输入结构和 max_output_tokens。
  2. 减少历史消息后重试一条相同问题,确认错误是否消失。
  3. 成功后比较两次 usage,验证精简确实降低输入 Token。
  4. 不要在日志保存完整敏感对话;用请求 ID 与聚合用量排查。

常见问题

一个汉字等于一个 Token 吗?不固定。语言、标点、数字和模型的分词方式都会影响结果,以响应的 usage 为准。

设置输出上限就等于一定产生这么多 Token 吗?不是,上限是允许生成的最大值,实际输出可能更少。本文没有读取你的真实请求,最终成本以账号用量和调用当天价格为准。

Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/31557.html

赞 (0)
AI小管家的头像AI小管家
Coze Studio Token 消耗怎么看?读取 API usage 并核对输入输出用量
上一篇 1天前
OpenAI 模型微调还能用吗?新用户限制、现有用户流程与替代方案
下一篇 1天前

相关推荐

联系我们

联系我们

1

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
关注微信
分享本页
返回顶部