AI 对话模型价格文档指南

token 怎么算钱:API 计费公式和省钱方法

费用 = 输入 token ÷ 100 万 × 输入单价 + 输出 token ÷ 100 万 × 输出单价。本站按每 100 万 token 人民币标价,输入输出分开算,每次调用后从余额扣,没有月费。长对话和 Claude Code 费 token,是因为每一步都把历史和文件当输入重发。

更新于 2026-11-01 · MaCloud AI

token 是什么?

token 是模型读写文字的最小单位,可以理解为“字词碎片”。英文里一个 token 大约是几个字母;中文、代码和各种符号的切法不同,不同模型的分词方式也不同,同样意思的中文通常比英文用的 token 多一些。所以别靠字数估算,实际数字以每次调用返回的 usage 和控制台 用量 为准。

输入 token 和输出 token 有什么区别?

  • 输入 token:你发给模型的所有东西,包括系统提示、你的问题、之前的对话历史、上传的文件、编程工具读进来的代码。
  • 输出 token:模型写回来的内容。输出单价通常比输入单价高好几倍。

所以“问题很短但贴了一大段代码”,花的主要是输入;“让它写一篇长文”,花的主要是输出。

计费公式和示例

单次费用 = 输入 token ÷ 1,000,000 × 输入单价 + 输出 token ÷ 1,000,000 × 输出单价

下面用整数举例(示例数字,不是真实价格):假设某模型输入 10 元、输出 50 元每 100 万 token,一次调用输入 4,000 token、输出 1,000 token。

部分算法费用
输入4,000 ÷ 1,000,000 × 10 元0.04 元
输出1,000 ÷ 1,000,000 × 50 元0.05 元
单次合计0.09 元
一天这样调用 500 次45 元

真实单价看下表(人民币,每 100 万 token),代入公式就能估算:

现在的真实价格

按模型页上的价格估算:每次对话 2,000 个输入 token、500 个输出 token。实际扣费以控制台为准。

模型每次对话1,000 次对话
GEM 3.8 Flash¥0.0016¥1.63
TT-6 Luna¥0.0039¥3.92
TT-6.1 Terra¥0.0027¥2.67
HK-5.5¥0.0013¥1.28
GEM 4 Argon¥0.03¥31.14
TT-6.1 Sol¥0.0053¥5.34

为什么对话越长越贵?

模型本身不记得之前聊过什么。每发一条新消息,客户端都要把整段历史一起再发一次,这些历史全部算输入 token。第 1 轮可能只有几百 token 输入,聊到第 30 轮,哪怕你只问“那这个呢?”,输入也可能已经上万 token。

所以换话题就开新对话,比在一个对话里一直聊便宜得多。

Claude Code 为什么特别费 token?

Claude Code、Cline 这类编程代理完成一个任务要来回很多步:读文件、想方案、改代码、跑测试、看报错、再改。每一步都是一次 API 调用,每次都带上系统提示、工具定义、已读过的文件和前面所有步骤的结果。一个“帮我修这个 bug”的任务,背后可能是几十次调用,每次输入几万 token。

  • 一个任务结束就 /clear,别让旧任务的上下文跟着下一个任务一起发。
  • 对话变长时用 /compact 压缩历史。
  • 在提示里直接指出相关文件和函数,减少它“到处翻”的步骤。
  • 写一份简短的 CLAUDE.md 说明项目结构,比让它每次自己探索省。
  • 简单任务换便宜的模型,见 Claude、GPT、Gemini、DeepSeek 怎么选。

怎么查自己花了多少?

  1. 登录 控制台,概览页能看到当前余额。
  2. 点左侧 用量,列表是最近 50 次调用,每条有模型名、输入 token、输出 token 和这次的费用。
  3. 按时间对照你刚才做的事,找出最贵的那几次,看是输入多还是输出多。
  4. 输入多就精简上下文、开新对话;输出多就在提示里要求简短,或者设 max_tokens 上限。

用量页位置:控制台左侧菜单 用量。同一个账号建了多个 Key(比如 Claude Code 一个、Cursor 一个)的,对照调用时间就能看出哪个工具花得多。

代码里怎么拿到 token 数?

每次调用的返回里都带 usage 字段,可以自己记日志或做预算控制:

import os
from openai import OpenAI

client = OpenAI(base_url="https://api.macloudai.com/v1", api_key=os.environ["MACLOUD_API_KEY"])
r = client.chat.completions.create(
    model="gem-3.8-flash",
    messages=[{"role": "user", "content": "用一句话解释什么是 token"}],
    max_tokens=200,
)
print(r.choices[0].message.content)
print("输入 token:", r.usage.prompt_tokens, "输出 token:", r.usage.completion_tokens)

把 token 数代入上面的公式和模型页单价,就能算出这次花了多少。完整接口说明见 接入文档。

常见问题

Q1有月费或者最低消费吗?
没有。只按实际用掉的 token 扣预付余额,不用就不扣。
Q2余额会过期吗?
不会,余额在账号有效期间一直可用。
Q3余额用完会怎样?
后续请求会被拒绝(返回 403),充值到账后马上恢复,不用改任何配置。
Q4中文比英文更费 token 吗?
通常同样意思的中文会用多一些 token,但不同模型分词不同,以用量页的实际数字为准。
Q5为什么一次简单提问也扣了不少?
多半是带上了很长的对话历史或文件内容,这些都算输入 token。开新对话再问一次对比一下就清楚了。
Q6价格在哪看?
模型页按人民币、每 100 万 token 标价,输入和输出分开列。

更多指南