什么是大语言模型
重新认识 LLM
在传统软件的世界里,一切都是确定性的:给定输入,程序产生确定的输出。函数调用有明确的返回值,逻辑分支有清晰的条件。
大语言模型(Large Language Model,LLM)打破了这个范式。它不是一组 if-else 规则,而是一个概率模型——给定一段文本,它预测接下来最可能出现的内容。
核心机制:下一个 Token 预测
LLM 做的事情,本质上只有一件:
给定前面的所有文本,预测下一个 token 最可能是什么。
比如给它 "今天天气" ,它可能给出:
"真"→ 70% 概率"不"→ 15% 概率"很"→ 10% 概率- 其他 → 5%
然后它选一个输出,把它拼到原文后面,再预测下一个 token。如此循环,直到生成完整的回答。
这就是所谓的自回归生成(autoregressive generation)——一个 token 一个 token 地往外"吐"。你在 ChatGPT 中看到的逐字出现的效果,就是这个过程的直观体现。
它和传统软件有什么不同
| 传统软件 | LLM | |
|---|---|---|
| 驱动方式 | 规则驱动 | 概率驱动 |
| 输出确定性 | 相同输入 → 相同输出 | 相同输入 → 可能不同输出 |
| 能力来源 | 人写的代码逻辑 | 从海量数据中学到的模式 |
| 错误特征 | 崩溃、异常、逻辑错误 | "幻觉"——自信地给出错误答案 |
| 边界 | 明确(文档定义) | 模糊(需要探索和测试) |
最重要的认知转变是:LLM 不"理解"你的意图,它在做统计意义上的模式匹配。 它的回答看起来像是在"思考",但底层是在做概率计算。
"大"在哪里
"大语言模型"的"大",指的是参数量。你可以把参数理解为模型内部的旋钮——参数越多,模型能捕捉的语言模式就越复杂。
- GPT-2(2019):15 亿参数
- GPT-3(2020):1750 亿参数
- GPT-4(2023):未公开,推测超过万亿
参数量的爆发式增长带来了一个有趣的现象:涌现能力(emergent abilities)。当模型足够大时,会突然表现出小模型不具备的能力,比如逻辑推理、代码生成、多语言翻译。这有点像水加热到 100°C 时突然沸腾——量变引起质变。
要点总结
- LLM 是概率机器,不是知识库。它的回答是"最可能的",不是"一定正确的"。
- 它的能力来自训练数据。训练数据没覆盖的领域,它会表现不佳甚至胡编。
- 它不执行逻辑。看起来像在推理,实际上是模式匹配。这解释了为什么它有时会犯低级错误。
- 非确定性是特性,不是 bug。同样的问题可能得到不同的答案,这是概率采样的自然结果。