你找到了一个中意的模型,旁边标着价格:每百万 token 2 美元。在你能回答一个问题之前,这个数字毫无用处——你的应用到底会用掉多少 token?
大多数人靠猜,而且大多数人都猜低了。不是因为 token 有多复杂,而是因为一次请求里几乎所有东西都是由 token 组成的,你打的那点字只占其中很小一部分。
下面讲清楚 token 是什么、怎么数,以及意外都藏在哪里。
价格最后核对日期:2026 年 8 月 26 日。 实时数字在 ElliSekiz 对比页。
token 到底是什么
AI 模型既不读字母也不读单词。它们读的是 token——来自一份固定词表的小块文本,模型就是用这份词表构建的。
一个 token 可以是一个完整的词、词的一部分、一个字符,或一个标点。大致如下:
cat→ 一个 tokentokenization→ 常被切成三四块,比如token+iz+ation!→ 一个 token- 词前面的空格通常跟着这个词走,所以
the是一个 token,不是两个
为什么要这样切分文本?模型需要一份它能识别的东西的固定清单。把所有英语单词列出来会非常庞大,而且仍然会漏掉人名、错字和别的语言。一份约十万个子词片段的清单几乎能覆盖一切,因为陌生的词可以用熟悉的片段拼出来。
道理就这么简单。文本进去,被切成已知的片段,然后按片段收费。
你的文本是多少 token
OpenAI 对英语的经验法则是 一个 token ≈ 4 个字符 ≈ ¾ 个词,所以 100 个 token 大约是 75 个词。
拿来粗略估一下没问题,拿来做预算就不行,原因有三。
每个模型的分词方式都不一样。 同一句话在不同模型上得出的数量不同——有时差别很大。Anthropic 自己的文档写明,Claude 4.7 及以后使用了更新的分词器,其中"同样的输入文本产生的 token 比早期模型多约 30%"。同样的文本、同样的厂商,仅仅因为换了版本就多出 30% 的 token。
其他语言更贵。 大多数模型的词表以英语为主。表示较少的语言,其文本会被切成更多、更小的片段——同样的意思要花更多 token。
代码和结构化文本表现怪异。 缩进、括号和长标识符的碎裂方式与散文不同。
可靠的做法是去数,而不是去估。厂商提供了办法:Anthropic 有一个调用免费的 token 计数接口,OpenAI 公开了一个分词工具。用你真实的提示词数一次,以后就再也不用猜了。
让人意外的地方:一切都是 token
你的问题只占你付费内容的一小部分。Anthropic 的文档公布了几个最简请求的准确数字,值得细读:
| 发送了什么 | 输入 token |
|---|---|
| 系统提示 "You are a scientist" 加上消息 "Hello, Claude" | 14 |
| 问题 "What's the weather like in San Francisco?" 加上 一个 工具定义 | 403 |
| 一张图片加上 "Describe this image" | 1,028 |
| 一个 PDF 加上 "Please summarize this document." | 2,188 |
再看一遍第二行。问题只有九个词。描述一个工具——它的名称、说明、输入 schema——大约要花 390 个 token。一个带十五个工具的智能体,在用户还没输入任何内容之前,每次请求都要付这笔钱。
第三、四行说的是媒体,故事一样。一张图片约一千 token。一个 PDF 好几千,而那还是短的。
输入 token 和输出 token 价格不同
每个文本模型都公布两个费率。贵的那一头永远是输出。
| 模型 | 输入 $/1M | 输出 $/1M | 输出是输入的 |
|---|---|---|---|
| GPT-5 nano | $0.05 | $0.40 | 8 倍 |
| Gemini 2.5 Flash Lite | $0.10 | $0.40 | 4 倍 |
| GPT-5 mini | $0.25 | $2.00 | 8 倍 |
| Claude Haiku 4.5 | $1.00 | $5.00 | 5 倍 |
| GPT-5 | $1.25 | $10.00 | 8 倍 |
| Claude Sonnet 5 | $2.00 | $10.00 | 5 倍 |
| Claude Opus 5 | $5.00 | $25.00 | 5 倍 |
由此直接得出一个实用结论:让模型用三句话而不是十句话回答,比把你的提示词缩短同样的篇幅更省钱。 这通常是最便宜的优化,只需要一行指令。
一次对话到底要花多少钱
10 轮聊天。系统提示 500 token,问题各 100 token,回答各 250 token。
问题在于模型在两次调用之间没有记忆——整段对话每一轮都会重新发送。所以第 10 轮又为第 1 到 9 轮付了一次钱。
- 你打出的 token: 10 × 100 = 1,000
- 你被计费的输入 token: 21,750
- 输出 token: 10 × 250 = 2,500
你打了一千个 token,却为将近两万两千个付了钱。
| 模型 | 这一次对话的成本 |
|---|---|
| GPT-5 nano | $0.002 |
| Claude Sonnet 5 | $0.069 |
两个都不大。乘以每月 5 万次对话,这个差额就是舍入误差和一笔真实开支之间的差别。
悄悄推高 token 账单的四件事
- 系统提示,每次请求都计费。 800 token 的系统提示乘以 5 万条消息,就是每月 4000 万 token,只为一段你写过一次的文字。提示缓存正是为此而生——厂商保存不变的前缀,重新读取时只收一小部分费用。
- 对话历史。 如上所示。裁剪或概括旧轮次就是解法。
- 工具定义。 每个约 390 token,每次请求都算,无论那个工具是否被用到。
- 图片和 PDF。 每个一千 token 起。
这些都没有被隐藏——全部都有文档。只是很容易在估算时被漏掉。
token 只是若干计价单位中的一种
在你下结论之前值得知道:大多数 AI 模型根本不是按 token 计价的。ElliSekiz 追踪的 472 个模型里,按 token 计价的有 160 个——文本和聊天模型。其余 338 个按图片、按百万像素、按视频秒数或按运行次数计价。
所以"这个模型多少钱"会因为模型产出什么而有不同的形态,而按 token 的价格永远无法与按图片的价格直接比较。
结论
- token 是一小块文本,不是一个词。英语中约为 ¾ 个词,多数其他语言中更少。
- 永远不要用经验法则做预算。用厂商自己的工具,针对你打算使用的那个确切模型去数。
- 你的问题是小头。系统提示、对话历史、工具定义和附件才是大头。
- 输出 token 比输入贵 4 到 8 倍,所以让回答更短是最便宜的节省方式。
在 ElliSekiz 上继续了解
浏览聊天模型。 每个文本模型的输入与输出 token 价格并排列出,见聊天模型页。
然后试一个。 每个模型页都有 playground——在你把任何数字乘以 5 万之前,先跑一遍真实提示词,读一读真实的 token 数。
来源
- Anthropic — Token counting(有据可查的示例计数、分词器变更、免费计数接口)
- OpenAI Help Center — What are tokens and how to count them?(英语的经验法则)
- OpenRouter models API,
https://openrouter.ai/api/v1/models(token 价格,读取于 2026-08-26)
