中文 ▾

Claude API 与 OpenAI 成本对比:按 token 计算

对比 Claude API 和 OpenAI 的成本,需要的不只是并排阅读两份价格表,因为同一任务在不同模型上产生的 token 数量不同,输入与输出的比例也不同。这里有一种可重复的按 token 计费的方法,并附带一个经过计算的 1M token 示例,费率为 $0.15 和 $0.50/1M。

最后更新

两个精密天平称量着 token 硬币堆,中间放着一把尺子,以说明按 token 计算成本的比较

总结

  • 比较相同工作量下每个完成任务的成本,不要按费率进行比较。
  • 使用每个 API 自己的 usage 数字计算 token,因为分词器不同。
  • 输入/输出比例的变化可使 1M tokens 的成本增加超过两倍。
  • 从各供应商的定价页面获取当前费率;我们在此不引用它们。

为什么价格表比较会误导

两个定价页面展示了四个数字:每个供应商的输入和输出费率。将它们并排对比,你会得到一个排名,但这仅适用于恰好一种工作负载,即没有特定用户拥有的那种。实际使用情况在三个方面有所不同。

  • 相同的提示词在每个供应商处会变成不同数量的 token,因为每个供应商都有自己的分词器。
  • 模型的回答长度不同。一个更健谈的模型即使在较低的费率下,输出成本也可能更高。
  • 你的输入和输出比例决定了哪个费率更重要。摘要器主要支付输入费率,而故事生成器主要支付输出费率。

因此,方法是保持工作负载固定,在每个 API 上测量 token,并以每个供应商的当前费率对这些测量的 token 进行定价。我们不是引用 Anthropic 或 OpenAI 的数字,因为它们都会变化,等你读到这篇文章时我们的数据就不准确了。两家供应商的定价页面都是公开的。我们可以做的是用我们自己的费率作为工作参考来展示计算过程。

比较的四个步骤

  1. 选择一个代表性的工作负载。 来自你产品的 30 个真实请求,包括长请求。
  2. 在每个 API 上运行。 从使用记录块中记录每次调用的提示词 token 和完成 token。
  3. 计算成本。 成本 = 输入 token x 输入费率 / 1M + 输出 token x 输出费率 / 1M。
  4. 针对质量进行调整。 将成本除以你可以直接使用的回答比例。一个 90% 时间可用的模型,其每个可用回答的成本约为其原始价格的 1.11 倍。

为你自己的工作量填写此表。右侧的列才是重要的。

项目供应商 A供应商 B此 API
每 1M 个 token 的输入费率查看他们的当前定价查看他们的当前定价$0.25
每 1M 个 token 的输出费率查看他们的当前定价查看他们的当前定价$0.50
测量的输入 token,30 个请求你的计数你的计数你的计数
测量的输出 token,30 个请求你的计数你的计数你的计数
可用的回答你的得分你的得分你的得分

一个经过计算的 1M token 示例

假设一个月的聊天流量总计 1M 输入 token 和 1M 输出 token。输入费率为 $0.15/1M,输出费率为 $0.50/1M 时,成本为 $0.15 + $0.50 = $0.65。如果另一家供应商的费率是我们的两倍,则相同流量的成本为 $1.30。如果它收取的费用是十倍,则为 $6.50。由于费率不由我们来公布,请使用你在其页面上找到的倍数。

现在看看比例的影响。保持总量为 1M token,并调整比例。

1M 总 token 的混合比例输入成本输出成本总计
900,000 输入 / 100,000 输出(摘要、分类)$0.135$0.05$0.185
500,000 输入 / 500,000 输出(聊天)$0.075$0.25$0.325
200,000 输入 / 800,000 输出(长生成)$0.03$0.40$0.43

同样一百万 token 的成本因方向而异,为 $0.185 或 $0.43,比率为 0.43 / 0.185,约为 2.3。如果供应商的输出费率远高于输入费率,那么以生成为主的产品比以摘要为主的产品成本高得多。使用你自己的比例对比供应商,绝不要使用平均值。

用一个脚本测量两个 API

此脚本运行提示词列表,并打印我们接口的测量 token 数和成本。对于另一家供应商,以相同方式使用他们的 SDK 和基础 URL,收集相同的两个计数器,并应用他们的费率。

from openai import OpenAI

client = OpenAI(
    base_url="https://api.claudeapicosts.com/v1",
    api_key="YOUR_KEY",
)

prompts = [
    "Summarise in two sentences: The quarterly report shows revenue up and costs flat.",
    "Draft a polite reply declining a meeting invitation.",
    "Write a 150-word product description for a steel water bottle.",
]

tin = tout = 0
for p in prompts:
    r = client.chat.completions.create(
        model="uncensored",
        messages=[{"role": "user", "content": p}],
    )
    tin += r.usage.prompt_tokens
    tout += r.usage.completion_tokens

print("input tokens:", tin, "output tokens:", tout)
print("cost at 0.15 / 0.50 per 1M: $%.6f" % (tin * 0.15 / 1e6 + tout * 0.50 / 1e6))

usage 块随每个非流式响应一起提供,流式输出时则在流结束时到达。在比较时,使用这些数字而不是离线 token 估计。

价格卡未显示的成本

  • 重试和拒绝。 在该服务中,失败或拒绝的请求不收费。检查每个供应商如何处理它们。
  • 缓存和批量折扣。 某些供应商对重复的提示词前缀或离线批量作业提供折扣。如果你的工作负载适合,有效费率可能低于列表费率。阅读他们的当前定价以获取规则。
  • 最低充值额与过期时间。 在此,充值额从 $20 到 $500 不等,且额度永不过期。其他计划可能有所不同。
  • 速率限制。 完整 API 密钥允许 8 个并发请求和每分钟 300 个请求。如果你的峰值流量超过此限制,较低的费率可能无法使用。
  • 支付方式。 此处的充值仅支持加密货币,即 TRC20 链上的 USDT 或 Base 链上的 USDC。如果这不符合你的需求,节省的费用也就毫无意义。

导致供应商比较失真的错误

  • 比较不同大小的模型。 小型快速模型与大型推理模型是不同的产品。请比较你真正会在两者之间进行选择的那些模型。
  • 混淆每 1,000 个 token 与每 100 万 token 的费率。 每 1,000 个 token $0.00015 的费率相当于每 100 万 token $0.15。请先进行换算。
  • 忽略上下文窗口限制。 此处的窗口为 100,000 tokens。如果任务需要更多,成本就不是问题了。
  • 仅运行一次。 输出长度会有所不同。请对每个提示词运行几次并取平均值。

该 API 在比较中的定位

这既不是 Anthropic 的 API,也不是 OpenAI 的 API。它是一个独立的 OpenAI 兼容服务,提供单一开放权重模型,模型 ID 为 uncensored,经过调优可在合法成人用途下无内容审查地回答问题。该服务仅支持文本,拥有 100,000 个 token 的上下文窗口。其价值在于低 token 单价、无订阅费用以及标准接口。

公平地看待其劣势。如果你需要特定供应商的模型、图像或音频输入、嵌入或最强的推理能力,请首先根据这些需求进行比较,其次才是成本。如果你的工作负载是小说、角色扮演、陪伴应用或其他供应商拒绝的内容,价格和其不拒绝(内容)的特性共同可能成为决定因素。禁止涉及未成年人的性内容。

切换代码很简单。将 Base URL 更改为 https://api.claudeapicosts.com/v1,密钥和模型更改为 uncensored。文档涵盖了接口和参数,定价页面列出了费率和奖励:充值满 $50 起 +5%、满 $100 起 +10%、满 $200 起 +15%。如需更详细的成本背景,请参阅 我们对无审查 LLM 成本的分析。要免费运行上述脚本,请在 API 密钥页面领取 $0.50 试用额度。

常见问题

Claude 和 OpenAI 哪个更便宜?

这取决于模型、你的 token 组合以及当前费率。请在每个 API 上测量你工作负载的 token 消耗,并应用各供应商的当前定价。

为何不同供应商的 token 计数不同?

每个供应商使用自己的分词器,因此相同的文本会被分割成不同数量的 token。请使用每个 API 的使用量字段。

该服务提供 Claude 或 OpenAI 模型吗?

不提供。该服务通过 OpenAI 兼容 API 提供单一独立的开放权重模型,与任一供应商均无隶属关系。

此处 双向各 1M token 的成本是多少?

1M 输入 token 成本为 $0.15,1M 输出 token 成本为 $0.50,因此两者总计 $0.65。

几分钟内获取 API 密钥

注册,复制密钥,更新基础 URL。就这样。

立即开始