Tip
阅读指南
前面几节,我们了解了文字接龙、概率分布和自回归机制。
但还有两个重要的概念需要补充:
ChatGPT预测的最小单位是什么?为什么每次回答都不一样?
在这一节,我们将解答这些问题。
这里我需要稍微技术性地补充一点:
ChatGPT预测的,准确说不是"词",而是Token。
什么是Tokenization(分词)?
在文本输入到ChatGPT之前,会先被切分成一个个Token。这个过程叫做Tokenization(分词)。
为什么需要这样做?
首先,你要理解一个关键约束:计算机需要一个固定大小的词表。
什么意思?就是ChatGPT必须事先定好一个"词汇表",比如包含20万个词。在预测下一个词时,只能从这20万个词里选,不能临时增加新词。但问题来了:
如果直接用"词"作为基本单位:
如果把所有词都放进词表:
不用"词"作为基本单位,而是用更小的"token":
这样,用20万个token,可以组合出无限种词汇。
Token是什么?
一个token可能是:
具体例子
中文:
"今天天气真好"
→ 切分成:["今天", "天气", "真", "好"]
→ 这是4个token
而英文可能是这样:
"Tokenization is important"
→ 切分成:["Token", "ization", " is", " important"]
→ 这是4个token(注意空格也算在token里)
Token与中英文词汇的换算大致关系:
词表大小随版本增长: 从 GPT-2/3 的 5万多个,到 GPT-4 的 10万多个,再到 GPT-4o 的 20万多个。
更大的词表意味着:
这就是token的智慧之处。
因为ChatGPT引入了随机性。它不是每次都选概率最高的词,而是按照概率分布随机抽样。
为什么要这样设计?
这个话题非常深刻,涉及到创造力的本质、智能与随机性的关系等问题。我们会在后续专门详细讨论Temperature和另一个重要参数Top-p,以及它们如何控制AI的"创造力"。
想象下,如果ChatGPT对于同样的问题,每次回答都一字不差,那她就不配称为人工智能,她只是一个MySQL数据库。你只是在查询数据。
冷知识: ChatGPT其实不懂数学
很多人以为ChatGPT很擅长数学,毕竟它能解方程、算概率。
但其实它不是在"算",而是在"猜"。
问:"23 + 47 = ?"
ChatGPT的思路:
- 训练数据里见过很多"23 + 47 = 70"
- 预测:下一个词最可能是"70"
它不是真的在计算,只是记住了答案。
它可能连简单的计数都会错:
问:"strawberry这个单词里有几个r?"
ChatGPT可能答错。
因为它不是在"数字母",而是在预测。
类似一个学生把所有题目和答案都背下来了,但并不理解数学原理——考试能过,换个题型就懵了。
不过,OpenAI很早就发现了这个问题,并找到了一个巧妙的解决方案:让ChatGPT学会“请外援”。
从GPT-4开始,ChatGPT可以调用外部工具——一个真正的计算器或Python代码执行环境。当遇到数学题时:
所以2024年你用ChatGPT算数学题,大概率不会出错——不是因为它“学会”了数学,而是因为它学会了调用工具。
2026年的新一代大模型(如GPT-5.5、Qwen3-Max、Gemini 3.0)通过强化学习和推理增强,它们已经具备了较强的原生数学计算能力,不再完全依赖调用外部工具,而是能够在模型内部进行多步骤的逻辑推导和自我纠错。
但核心原理没有变——它们仍然是在“预测”,只是通过更深的推理能力,让这种预测更加准确。对于特别复杂的数学问题,模型仍然会调用专业工具来保证100%的准确性。
现在你知道了ChatGPT是如何玩文字接龙游戏的:一个词一个词地预测,每次选概率最高的。
但这里有个核心问题:什么是"语言模型"?为什么ChatGPT被称为"大语言模型"?
下一节我们将正式介绍:语言模型的概念和本质。
| 中文 | English | 音标 | 说明 |
|---|---|---|---|
| 词元 | Token | /ˈtoʊkən/ | 模型预测的最小文本单位,可以是词、词的一部分或标点 |
| 分词 | Tokenization | /ˌtoʊkənaɪˈzeɪʃən/ | 将原始文本切分为Token序列的过程 |
| 词表 | Vocabulary | /vəˈkæbjʊleri/ | 模型能识别的所有Token的集合,GPT-4o约20万个 |
| 子词 | Subword | /ˈsʌbwɜːd/ | 比完整词更小的文本单元,通过组合子词Token可用固定词表表示无限词汇 |
| 温度参数 | Temperature | /ˈtemprətʃər/ | 控制采样随机性的超参数,温度越高输出越多样、越具创造性 |
| 嵌入 | Embedding | /ɪmˈbedɪŋ/ | 将离散的Token映射到连续向量空间的技术,使语义相近的词在空间中靠近 |
| 自回归 | Autoregressive | /ɔːtoʊrɪˈɡresɪv/ | 模型依赖自身之前的输出作为后续输入、逐个预测下一个Token的生成方式 |
| 随机采样 | Random Sampling | /ˈrændəm ˈsæmplɪŋ/ | 按照概率分布随机选择下一个Token而不是每次都选最高概率者 |