什么是 AI Token:从分词、推理到费用,看懂 AI 处理文字的全过程
在用 AI 的时候,我们几乎每天都会遇到一个词:token。它既不是登录用的令牌,也不是加密货币里的代币。一句话概括:token 是 AI 读取和处理文字时所使用的「文字块」。看懂它,你就能更便宜、更快、更稳定地使用 AI。
写在前面:此 token 非彼 token
先澄清一个最容易混淆的点。今天要讲的 token,和登录认证里的 token、加密货币里的 token,是完全不同的概念。
对我们人类来说,「请帮我总结这份资料」是一句很自然的话。但 AI 并不是直接理解我们看到的这句话——它会先把文字切成更小的单位,再在此基础上做后续处理。这个「更小的单位」,就是 token。
下面分三个部分来讲:token 到底是什么、推理是怎么一步步发生的、以及费用是怎么算的。理解了 token,这三件事就都说得通了。
一、AI 接收的不是文字本身,而是一串 token ID
最基础的流程是这样的:人类输入的是文字,比如「token 是什么?」。对人来说这就是普通的一句话,但模型内部没法直接处理自然语言的字符串,必须先经过一道叫 Tokenizer(分词器) 的处理。
Tokenizer 做两件事:把文字切成更小的单位,再根据词表把每个单位转换成一个编号。这个编号就叫 token ID。模型最终真正接收到的,不是我们眼睛看到的文字,而是一串数字。
人类看到的: token 是什么?
│
▼ ① Tokenizer 切分
切成 token: [token] [ 是] [什么] [?]
│
▼ ② 查词表,转成编号
得到 token ID: [ 2374 ] [ 891 ] [ 4102 ] [ 31 ]
│
▼
模型真正接收的,是这串数字
用编程来类比就很好懂:我们写代码时,写的是人类易读的高级语言;但计算机执行时,需要先转换成机器能处理的形式。AI 处理自然语言也是同理——文字先过 tokenizer,变成 token 和 token ID,模型再基于这串数字往下推理。
这里有一个关键认知:到底怎么切、切成几个 token、对应哪个 ID,并不是全球统一固定的,而是取决于你用的模型和 tokenizer。
二、token 数 ≠ 字数,也 ≠ 单词数
这是最容易被误解的一点:token 数和字数不是一回事,和单词数也不是一回事。
举个例子,日语的「お誕生日おめでとう」(生日快乐),看上去是 9 个字。但用不同的 encoding(也就是 tokenizer 的切分方式),结果完全不同。按 OpenAI Cookbook 的例子:
| Encoding | token 数 |
|---|---|
r50k_base(较老) | 14 |
cl100k_base | 9 |
o200k_base | 8 |
所以,没必要把某句话的 token 数当成一个「永远固定的标准答案」去背。真正要记住的原则只有一句:token 由 tokenizer 决定。同一句话,换了模型或 tokenizer,token 数就可能变。
如果你在实际开发或做成本估算时需要精确数字,最稳妥的办法是用目标模型自带的 tokenizer 或官方工具去实测。
三、词表:一本从文字到数字的字典
再往深一层看,每个模型的 tokenizer 和**词表(vocabulary)**设计可能都不一样。
这个词表,就像一本字典的目录:拿到切分后的单位之后,靠它把每个单位换成对应的 token ID——本质上就是「文字 → 数字」的映射表。
以 DeepSeek 为例(它是开源的,所以词表设计可以直接看到):
https://huggingface.co/deepseek-ai/DeepSeek-V3/raw/main/tokenizer.json
打开它的 tokenizer.json,你会看到类似这样的约定:
id 0 → 开始符号
id 1 → 结束符号 ← 模型输出这个,意味着「回答结束了」
id 2 → 空白
id 3 → 感叹符号
...
也就是说,如果 AI 在某次推理中输出了 id 1 这个 token,就代表「输出完成」。
这里希望你建立的直觉是:最终喂给 AI 的,全都是数字信息。而要把人类输入的文字变成对应的数字,就需要这样一张表。
四、从 token ID 到「语义坐标」:嵌入向量
那么,AI 拿到 token ID 这串数字,是不是就能直接开始推理了?其实还不行。接下来它还得拿到每个 token 的语义信息。
举个例子:给 AI 输入 apple,它指的是「能吃的苹果」,还是「苹果公司 / iPhone」?这取决于上下文。要区分,就需要语义信息。
token ID 只是文件里定义的一个编号,本身不含语义;token 的语义则一般是通过训练得到的,表现为一个高维向量(vector)。
可以把它理解成「语义空间里的坐标」:两个词意思越接近,它们在这个空间里的位置就越近。
语义空间(示意)
猫 ● 犬 ● 子犬 ← 动物,彼此靠得近
汽车 ● 卡车 ← 交通工具,离动物很远
大语言模型每次推理,都会输出一个相同维度的向量,然后计算这个向量和哪个 token 的向量最接近,就把那个 token 作为输出。
这个概念听起来有点抽象,但背后的数学原理其实和大学线性代数的基础相当接近。感兴趣的话,可以去 Udemy 之类的平台看看 AI 原理的课程,会更好理解。
五、推理的全过程:从一句话到一段回答
把上面的环节串起来,从人类输入的文字到最终生成输出,大致要经过这几步:
- 输入文字
- 程序把文字切分成 token
- 把 token 转成对应的数字 ID
- 由数字 ID 取出对应的特征向量(embedding)
- 给特征向量叠加位置信息
- 把这份由 [特征向量 + 位置信息] 组成的高维矩阵输入大语言模型做计算
- 每算一次输出一个 token,直到出现结束符为止
用一个例子走一遍
以一个很简单的问题为例:「日本最高的山是哪座?」
第一步,输入文字,也就是我们人类写的自然语言。
第二步,token 化。这句话被切成 7 个 token,每个 token 对应一个 ID:
[日本] [で] [一番] [高い] [山] [は] [?]
│ │ │ │ │ │ │
ID ID ID ID ID ID ID
第三步,取出每个 token 的特征向量。每个 token 的特征向量在模型训练完成后基本是固定的。
第四步,给特征向量叠加位置信息。同一个词,出现在句子里的位置不同,意思也会变。比如「我爱你」和「你爱我」,用的词很像,意思却完全不同——位置信息就是用来表达这种顺序的。
第五步,把最终生成的矩阵数据输入大语言模型,开始推理。推理时一次只输出一个 token,直到出现结束符:
第 1 次推理 → 输出向量最接近「富士山」 → 输出「富士山」(非结束符,继续)
第 2 次推理 → 最接近「です」 → 输出「です」 (非结束符,继续)
第 3 次推理 → 输出句号「。」 → (非结束符,继续)
第 4 次推理 → 输出结束符 → 推理完成
最终,模型生成的回答是:「富士山です。」(是富士山。)
为什么「语义」之外还需要「顺序」
第三、四步值得再强调一下。
第三步里,模型用 token ID 去内部的「嵌入表(embedding table)」查出对应的向量。可以把 token ID 理解成目录编号,特征向量就是这个编号对应的内容。这一步不是推理时临时算的——它在模型训练完成后,就已经作为内部参数存好了,推理时主要是按 ID 查表取向量。
但光有「语义」还不够,模型还得知道每个 token 的先后顺序,所以第四步要加上位置向量。embedding 向量加上位置向量,就得到了输入矩阵 X。在这个矩阵里,大致上每一行对应一个 token,每一列对应该 token 的某个特征维度。
这里最重要的直觉是:我们写的虽然是一句话,但进入大语言模型时,它变成了一个数字矩阵。后续的推理,本质上就是围绕这个矩阵做大量计算。
六、费用:通常由输入 token 和输出 token 决定
理解了 token,费用的机制也就好讲了。可以把 token 想象成水、电、煤气:用得多,费用就高;用得少,费用就省。
很多 AI API 都是按 token 数计费的,通常分成两类:
- 输入 token:你交给 AI 的文字、资料、对话历史、日志、代码等等。
- 输出 token:AI 生成的回答。
实务上有三个要点值得记住:
- 价格通常按「每 100 万 token」来标。
- 输出 token 往往比输入 token 更贵。
- 如果同一份输入会被反复使用,部分服务可以靠缓存(cache)功能降低成本。
七、用「会议纪要总结」估算一下 token 量
来用一个贴近日常工作的例子估算 token 量。
假设有一份约 3000 字的会议纪要,要让 AI 帮忙总结。实际调用时,输入不只是纪要正文,还包括类似「请按决定事项、TODO、负责人,整理成表格」这样的指令。
按一个比较粗的口径估算:
输入 ≈ 5000 tokens
输出 ≈ 1000 tokens
─────────────────────
单次调用 ≈ 6000 tokens
如果某家 AI 厂商的价格是「每 100 万 token 收 500 日元」,那么这一次调用的费用大约是 3 日元。
当然,这个数字不是什么固定公式,只是用来建立「量感」的例子。对中文、日文这类文本,常常可以粗略按「1 token ≈ 1 个字上下」来估,但实际仍取决于模型和 tokenizer。
日常判断时,粗估往往就够用了;但系统开发、预算评估、要做大量调用的场景,就应该用各家的官方 tokenizer 或 token counting 工具去精确计算。
八、同样的任务,不同模型价格可能差几十倍
同一个任务,换不同厂商、不同模型,成本可能相差几十倍。
以执行 1000 次类似任务为例,大致会是「OpenAI 的高端模型最贵、DeepSeek 最便宜」这样的格局。
- 高性能模型适合:复杂推理、重要文档、对质量要求高的场景。
- 廉价模型适合:大量、简单的处理,以及能容忍一定误差的场景。
实务里真正重要的,不是永远用最贵的,也不是永远用最便宜的,而是根据任务的风险、质量要求和成本,选一个合适的模型。
九、总结:今天值得记住的四个要点
最后,把关于 AI token 最该记住的,浓缩成四点:
-
token 是 AI 处理信息量的单位。 AI 并不是整段整段地直接处理文章,而是先把文章切成 token,再转换成数字表示来处理。
-
AI 的回答是一个个 token 生成出来的。 它预测下一个 token,接到上文后面,如此往复,直到回答结束。
-
输入越长、输出越长,成本和处理时间通常都会增加。 因为模型要处理的 token 变多了。
-
实际使用时,尽量只给必要的信息,并明确指定输出的格式和长度。 不必每次都塞「你好」「谢谢」这类对处理没太大必要的话——AI 并没有情绪,对着目标把所需信息简洁地传达过去就好。
把握住这几点,你对 AI 的使用,就会从「凭感觉」走向「心里有数」。