第一次接触大模型时很多人都会产生一个疑问ChatGPT 为什么能够读懂中文、英文、日文甚至还能写代码是不是模型里面真的存放了一个中文字典或者它是不是像我们一样一眼就能看到一个汉字答案都是否定。对于计算机来说并不存在文字这种概念。计算机能够处理的永远只有数字。例如你现在看到屏幕上的一个字你在人眼里它就是一个汉字。但在计算机内部它通常会先表示成 Unicode 编码例如U4F60继续转换之后又会变成01001111……也就是一长串二进制。也就是说计算机从来没有真正见过你这个字它看到的始终只是数字。大语言模型当然也是一样。因此当我们把一句中文发送给模型时它首先必须完成一件事情把文字转换成模型能够理解的数字。但是这里马上会出现另一个问题。2.2 为什么不能一个字对应一个数字假设我们设计一个最简单的大模型。我们规定你 → 1好 → 2世 → 3界 → 4这样你好世界是不是就可以转换成1 2 3 4看起来非常简单。为什么现实中的 GPT、Claude、Qwen 不这么做原因只有一个效率太低。举个例子。中文里中华人民共和国如果每个字单独处理。需要中华人民共和国七次处理。但是如果模型发现中华人民共和国这个词出现了几千万次。它完全可以把它当成一个整体。例如中华人民共和国↓一个Token这样模型一次就能识别。速度更快。表达的信息也更多。再举一个程序员更熟悉的例子。Pythoninit如果拆成__init毫无意义。模型更希望按如下定义token,这样才能更清晰的表示它的维度init↓一个Token因此模型并不是按照汉字或者单词去理解世界。而是按照这种新的单位Token。2.3 什么是 Token其实在3月23日中国发展高层论坛2026年年会上国家数据局局长刘烈宏正式公布AI领域核心概念Token的标准中文译名为 词元 。这一中文语义其实是相当精准的。但容易让初学者误以为,Token 就是一个词。其实完全不是更准确一点可以把它理解成模型自己发明的一套文字积木。这些积木有的大有的小有的是一个字有的是半个单词有的是整个句子。甚至还有可能只是一个空格。举几个真实例子。英文apple可能就是apple一个 Token。但是unbelievable有可能变成unbelievable三个 Token。有兴趣的可以去openai的Tokenizer试试,地址:Tokenizer - OpenAI APIimage中文呢? 其实也一样,每个模型的规则都可能会有区别中文你好有些模型你好两个 Token。有些模型你好就是一个 Token。代码System.out.println很可能整个就是一个 Token。因此Token 并没有固定长度。它唯一的目标就是让模型能够更高效地表示语言。2.4 Token 是怎么来的很多人第一次看到 Token会认为是不是程序员提前规定好的例如:你好. 编号是:1234其实不然。现代大语言模型中的 Token大多数都是通过算法自动学习出来的。训练模型之前工程师会先收集互联网上的海量文本。例如小说新闻论文GitHubStack Overflow技术文档然后统计,哪些字符经常一起出现,举个例子:中华人民共和国每天都会出现几十万次。那么算法就会认为 中华人民共和国 应该作为,一个整体。而不是七个汉字。同样,程序代码里面public static void经常一起出现。模型也可能把其中一部分组合成更大的 Token。这种自动合并过程就是现代 Tokenizer 的核心思想之一。它并不是理解了语言。而是根据统计规律把经常一起出现的字符组合成一个 Token。2.5 为什么不同模型 Token 数量不同很多人第一次使用 API 时会发现,同一段文字,每个模型消耗的token可能不太一样.GPT120 Token。Claude110 Token。Qwen95 Token。为什么答案很简单,因为它们使用的是不同的 Tokenizer,也就是说,大家使用的是不同的一套积木。有的人喜欢大积木,有的人喜欢小积木。举个例子。