乐于分享
好东西不私藏

《什么是 Token?为什么 AI 不是按“字”理解世界的》

《什么是 Token?为什么 AI 不是按“字”理解世界的》

你和 AI 聊天、写代码、写文案时,后台其实一直在默默算一笔账:

本次消耗:XX Tokens

很多人第一反应是:

Token 不就是“字”吗?一个字 = 一个 Token?

但这个理解,其实差得有点远。
这一篇,我们只讲清一件事:

AI 眼里没有“字”,也没有“词”,只有 Token。

理解 Token,你才算真正看懂大模型是怎么“读世界”的。

一、AI不是在“读句子”,而是在处理Token序列

人类阅读一句话时,是直接理解整体语义的。
比如看到:

“大模型真的很厉害”

我们会瞬间理解它的意思,而不会刻意去拆成一个个字。
但在大模型内部,这个过程并不是这样发生的。
在进入模型之前,这句话会先被转换成一串 Token。
例如在某些模型中,它可能被切分为类似这样的形式(不同模型会有差异):

大 / 模型 / 真 / 的 / 很 / 厉害

需要注意的是:

这种切分不是“按字切”,也不是“按词切”,而是由模型词表和训练统计规律共同决定的结果。

换句话说:

Token不是语言规则的产物,而是“压缩后的语言表示”。

核心区别是:

人类处理的是语义整体 ,AI处理的是 Token 序列


二、Token 到底是什么?

Token 可以理解为:

模型用来表示语言的基本计算单位。

但它并不等于“字”或“词”。
更准确一点,它是:

一种基于统计压缩得到的语言片段编码。

在训练前,大模型会构建一个“词表”(Vocabulary),里面包含几万到几十万个 Token。
这些 Token 可能是:
一个字(如“我”)
一个常见词的一部分(如“模型”)
一个词组(如“人工智能”)
甚至是符号或子字节片段
模型做的事情很简单:

把输入文本转换成 Token 序列,再在这个序列上进行计算。


三、Token 是怎么切分的?

这一部分,是很多人第一次真正理解 AI 的关键。
很多人以为 Token 是“按字切开”的,但实际情况要复杂得多。
Token 的切分,本质上不是语文规则,而是一种在训练前通过大量语料统计得到的子词编码体系(如 BPE、SentencePiece)。
你可以把它理解成:

AI 在运行前,已经准备好了一本“拆词字典”。

这本字典里记录了:哪些字符组合应该被当作一个整体,哪些应该拆开。
在真正运行时:

AI 并不是在“临时思考怎么切”,而是在“按照这本字典直接查表切分”。


1️⃣ 英文:按“高频组合片段”拆
例如:
unhappiness → un + happiness(或其他拆法)
running → run + ning
它不会按语法规则拆,也不会严格按单词拆,而是:

哪些片段在大量语料中经常一起出现,就更可能被当作一个 Token。


2️⃣ 中文:字 + 词片段混合
例如(示意):
“我” → 通常 1 个 Token
“我们” → 可能 1–2 个 Token
“人工智能” → 可能整体作为一个 Token,也可能被拆开
“大模型真的很厉害” → 会被拆成多个片段组合
不同模型的“词表”(tokenizer)不同,所以同一句话在不同模型中切分结果可能完全不同。

3️⃣ 为什么看起来“不同”?
这里需要区分清楚:

✔ 在同一个模型内部:切分是固定的 

✔ 在不同模型之间:切分可能不同


✔ 同一个模型内部
如果满足以下条件:
同一个模型
同一个 tokenizer(词表不变)
输入文本完全一致(包括空格、标点)
那么:

Token 切分结果是完全确定的,不会变化

因为这个过程本质是:

“查固定词表 + 做匹配”,没有随机性。


✔ 不同模型之间
如果换了模型,比如:
GPT 系列
LLaMA 系列
Claude 系列
它们的 tokenizer 词表是各自训练出来的。
因此:

同一句话可能被拆成完全不同的 Token 序列

这并不是“规则变了”,而是:

每个模型用的是不同版本的“拆词字典”。

举个例子:

“大模型真的很厉害”

可能在不同模型中变成:
模型 A:大 / 模型 / 真的 / 很 / 厉害
模型 B:大 / 模型  / 真 / 的 / 很 / 厉害
模型 C:大模型 / 真的 / 很 / 厉害
4️⃣ 一个容易混淆但很重要的点
Token 的“切分”是确定性的,但 AI 的“回答”不一定。

四、为什么不能直接按“字”来理解?

如果直接用“字”作为模型输入,会带来几个问题:如果直接用“字”作为模型输入,会带来几个问题:
1️⃣ 表达空间过大
中文 + 英文 + 符号 → 组合爆炸
2️⃣ 学习效率变低
过细的单位会让模型难以学习稳定结构
3️⃣ 计算成本变高
序列越长 → 计算量越大
因此 Token 的本质是一种工程折中:

用“统计意义上的语言块”,替代“纯字符级建模”。

你可以这样理解:
人类说“外卖”,不会重新理解一遍“快速送餐系统”。
模型也是一样:

它直接用一个 Token 表示这个概念。


五、为什么大模型都按 Token 计费?

因为在大模型里:

Token ≈ 计算量来源之一

每一个 Token 都会触发一轮计算,包括:
注意力计算(Attention)
神经网络前向传播
上下文关联计算
因此整体成本取决于:
输入 Token 数量
输出 Token 数量
上下文长度
所以你会看到:
输入越长 → 越贵
输出越长 → 越贵
上下文越长 → 成本越高
这不是“商业规则”,而是物理层面的成本关系。

六、写在最后

理解 Token 之后,其实已经能看清一件很关键的事:
AI 并不是直接在“理解语言”,而是先把语言转换成 Token,然后在 Token 构成的序列上进行计算。
换句话说:

它看到的不是一句话的意义,而是一串可以被处理的数字片段。

也正因为如此,很多我们直觉上的语言现象,在 AI 里都会变成“计算问题”:
能处理多长的内容(取决于 Token 数量)
能容纳多少上下文(取决于 Token 序列长度)
甚至成本和速度,也都由 Token 直接决定
但到这里,其实只解释了一半。
因为这一篇我们只讲清了一件事:

AI 是“怎么把语言变成 Token 来理解输入的”。

而更关键的一半还在后面——

AI 是怎么从这些 Token 出发,一步一步“生成回答”的?

它并不是先想好整句话,再表达出来,而是不断做一件事:

在当前已有 Token 的基础上,预测“下一个最可能出现的 Token”。

然后一步一步往后接,直到形成完整回答。
下一篇我们可以继续往下拆:

AI 到底是怎么“思考”的?其实它只是在猜下一个 Token

到那一步,你会开始真正理解——
为什么 AI 有时候很聪明,有时候又会一本正经地胡说八道。