"如果你不理解 Tokenization,你就无法理解为什么 LLM 在简单任务上会失败。"
Tokenization 是将原始文本转换为模型可处理的整数序列(ID)的过程。它是整个流水线的第一步,也是许多与数学、拼写和代码相关的"幻觉"的根源。
为什么需要 Tokenization?
计算机理解数字,而不是字符串。我们需要一种将文本映射到数字的方法。
粒度范围
我们可以在不同层级进行分词:
| 方法 | 词表大小 | 序列长度 | 优点 | 缺点 |
|---|
| 字符级 | 小(~100-256) | 很长 | 没有 OOV(词表外)问题 | 上下文窗口很快填满;单个字符缺乏语义 |
| 词级 | 巨大(1M+) | |