刚接触大模型时很多人都会反复看到一个词Token。比如这个模型支持128KToken这段内容会消耗多少Token输入太长超过Token限制了很多人第一反应是Token不就是字吗或者不就是词吗其实都不完全对。更通俗一点说Token就是模型处理信息时先切出来的一个个小单位。具体的小单位是什么方式与切词方法有关后续我们会说到这个问题。模型不会像人一样直接看懂一整段话、一整张图或者一整条序列它通常要先把输入拆成一块一块再去处理。这些被拆出来的一块一块就是Token。你可以把Token理解成模型读东西时的基本颗粒。注意是基本颗粒不是固定等于一个字也不是固定等于一个词。在自然语言里Token是什么这是大家最常见的场景。比如这句话今天天气很好。在我们人眼里这是一句完整的话。但在模型那里它不会直接把整句话当一个整体处理而是会先切开。可能会切成今天天气很好。也可能切成今天天气很好。不同模型切法可能不一样。所以你会发现Token不等于字。因为今天可能是1个Token也可能是2个。很好也可能被当成一个整体。再看英文Large Language Model is useful.有的模型可能切成LargeLanguageModelisuseful.也有的模型可能切成Large Language Modelisuseful.所以Token也不等于单词。因为一个英文单词有时是1个Token有时会被拆成几段。为什么自然语言要这样切因为模型本质上是在做计算。它不能直接看懂句子而是要先把文本拆成适合计算的单位再把这些单位转成数字、向量最后送进模型。所以在自然语言里Token可以是一个字一个词的一部分一个完整的词一个短语一个标点符号一个数字一个特殊符号比如2026年AI很火可能会切成2026年AI很火你会发现连标点符号都可能单独算Token。在不同研究领域中Token的定义和形式往往并不相同。比如在基因组学中Token可以是碱基或k-mer在蛋白组学中Token可以是氨基酸或序列片段在图像任务中Token则常常对应一块图像区域。在基因组学里Token可以是什么基因组学里最基本的序列通常是DNA序列比如ATCGGCTA如果把这个序列交给模型处理也需要先切分成Token。最简单的切法单个碱基做Token。比如ATCGGCTA这时候每个碱基都是一个Token。这是最直观的做法因为DNA的基本字母本来就只有4个字母N通常不参与模型训练ATCG另一种切法k-mer做Token。比如把连续3个碱基当成一个单位也就是常说的3-mer。对于ATCGGCTA可以切成ATCTCGCGGGGCGCTCTA这时候一个Token就不再是单个字母而是一小段局部模式。这样做的好处是模型不只看到单个碱基还能更容易捕捉局部序列特征。在更复杂的建模里Token甚至可以不是简单的字母串而是启动子区域外显子内含子某类 motif某段调控元件也就是说在基因组学里Token可以有不同层级最细单个碱基中间k-mer更高层有生物学意义的功能片段在蛋白质组学里Token可以是什么蛋白质序列和自然语言也有点像。因为蛋白质本质上也是一串序列只不过“字母”不是汉字或英文而是氨基酸。比如一段蛋白序列MKTFFVLLL这里每个字母都代表一个氨基酸。最常见的切法单个氨基酸做Token比如MKTFFVLLL这时候一个氨基酸就是一个Token。也可以用片段做Token比如把连续几个氨基酸组成一个片段MKTTFFFVLLLL或者用滑动窗口形成更细的片段。还可以用结构或功能单元做Token如果模型更复杂Token也可能不是简单序列而是更高层的蛋白质单元例如某个motif某个二级结构片段某个功能域片段所以在蛋白质组学里Token也不一定固定。它可以是单个氨基酸若干氨基酸片段结构单元功能区域在图片处理中Token又是什么很多人一听Token会以为这只是文字里的概念。其实图像模型里也有Token。因为模型处理图片时也不会像人一样直接看整张图。它通常也会先拆。最常见的做法把图片切成小块比如一张图片大小是224×224。模型可以把它切成很多个16×16的小方块。这样整张图就变成一堆小块第1块第2块第3块……每一个小块就可以看成一个Token。这就是视觉Transformer里很常见的思路。举个例子你有一张猫的图片。在人眼里这是一只猫。但模型不会先有猫这个概念它会先看到左上角一块颜色纹理中间一块耳朵区域下方一块身体区域背景的一块地板区域这些图像块经过编码后就变成视觉Token。所以在图片处理中Token常常是一小块图像patch或者某种压缩后的视觉特征块在语音处理中Token可以是什么语音也是一样。比如一句话的语音波形对人来说是连续的声音但模型一般不会直接整段吞下去。它可能先切成很短的时间帧声学特征片段音素子词单元举个简单例子一句你好在人耳里就是两个字。但对语音模型来说可能先变成一串短时间片段的声学特征再进一步映射成语音Token。所以在语音场景下Token可以是时间帧音素离散语音单元压缩后的声学编码片段模型需要把复杂输入变成一串可以计算的基本单位。Token就是这个桥梁。你可以把它理解成现实世界的信息进入模型之前先被切成一个个可处理的小块。这些小块就是Token。把模型想成一个流水线工厂。一整篇文章进来太大了不方便加工一整张图片进来也太大了不方便加工一整条基因序列进来同样太长了所以工厂第一步不是直接生产而是先分拣、切块。切成适合机器处理的一小块一小块之后再进入后面的加工流程。这些小块就是Token。Token这个词听起来很技术但本质并不复杂。你只要记住下面这几句就够了1. Token是模型处理信息时的基本单位。2. 它不等于字也不等于词而是模型自己的切分颗粒。3. 不同场景下Token可以完全不同。比如在自然语言里Token可以是字、词的一部分、词、标点在基因组学里Token可以是碱基、k-mer、功能片段在蛋白质组学里Token可以是氨基酸、序列片段、结构单元在图片处理中Token可以是一块块图像patch在语音处理中Token可以是时间帧、音素或语音单元