近几年,“大语言模型”几乎成为人工智能领域最核心的关键词之一。从 ChatGPT 到 Claude,从 LLaMA 到 Qwen,从 DeepSeek-V3 到 DeepSeek-R1,大语言模型已经不再只是一个文本生成工具,而逐渐变成了可以对话、写代码、做数学推理、调用工具、检索知识、辅助科研和完成复杂任务的通用智能接口。但是,如果我们从技术发展角度来看,大语言模型并不是突然出现的。它的背后有一条非常清晰的发展路线:

语言模型
  ↓
神经网络语言模型
  ↓
Seq2Seq 与 Attention
  ↓
Transformer
  ↓
BERT / GPT / T5
  ↓
GPT-3 与 Scaling Law
  ↓
InstructGPT / RLHF / ChatGPT
  ↓
LLaMA / Mistral / Qwen / DeepSeek
  ↓
长上下文、MoE、推理模型、Agent

所以这个专栏的目的不是简单介绍“某个模型有多强”,而是系统回答一个问题:大语言模型到底是如何一步一步发展起来的?这一章作为开篇,我们先不深入某一篇论文,而是从整体上理解:什么是语言模型,什么是大语言模型,大语言模型为什么重要,它和传统 NLP 模型有什么区别,以及后续整个专栏会沿着什么路线展开。

一、什么是语言模型?

语言模型,英文是 Language Model,简称 LM。

最简单地说,语言模型要解决的问题是:

给定前面的文本,预测后面最可能出现的词或 token。

例如给定一句话:今天天气很好,我想出去

语言模型可能会预测下一个词是:散步

也可能是:跑步

或者:玩

从数学上看,语言模型本质上是在建模一个序列的概率。

假设一句话由多个 token 构成:

                               x_1, x_2, x_3, \ldots, x_n

那么语言模型希望计算整个序列出现的概率:

                             P(x_1, x_2, \ldots, x_n)

根据概率链式法则,可以写成:

                             P(x_1, x_2, \dots, x_n) = \prod_{i=1}^{n} P\!\left(x_i \mid x_1, x_2, \dots, x_{i-1}\right)

这个公式的意思是:

一个句子的概率=
第 1 个 token 的概率
第 2 个 token 在第 1 个 token 之后出现的概率
第 3 个 token 在前两个 token 之后出现的概率
...

对于现代 GPT 类模型来说,最核心的训练目标就是:根据前面的上下文,预测下一个 token。也就是:

                               P(x_i \mid x_1, x_2, \ldots, x_{i-1})

这看起来只是一个简单的“续写任务”,但当模型足够大、数据足够多、训练足够充分之后,它会逐渐表现出翻译、问答、摘要、代码生成、数学推理、工具调用等复杂能力。

这也是大语言模型最令人惊讶的地方:一个看似简单的 next-token prediction 任务,经过大规模训练后,竟然可以发展出广泛的通用能力。

二、从传统语言模型到神经网络语言模型

早期语言模型主要依赖统计方法,例如 n-gram 语言模型。n-gram 的核心思想是:一个词的出现只依赖前面有限的几个词。例如 bigram 模型假设当前词只依赖前一个词:

                                     P(x_i \mid x_1, x_2, \ldots, x_{i-1}) \approx P(x_i \mid x_{i-1})

trigram 模型则假设当前词依赖前两个词:

                                    P(x_i \mid x_1, x_2, \ldots, x_{i-1}) \approx P(x_i \mid x_{i-2}, x_{i-1})

这种方法简单、可解释,但有明显问题。

第一,它只能建模很短的上下文。

第二,它很难处理稀疏组合。例如训练集中没有出现过某个短语组合,模型就很难估计其概率。

第三,它无法真正理解语义,只是统计词和词之间的共现关系。

后来,神经网络语言模型开始出现。模型不再只统计词频,而是把词映射成向量表示,也就是 word embedding。例如:

king → 一个向量
queen → 一个向量
man → 一个向量
woman → 一个向量

这些向量可以捕捉一定的语义关系。

再往后,RNN、LSTM、GRU 等循环神经网络被广泛用于序列建模。它们可以按顺序读取文本,并用隐藏状态保存前文信息。

但是 RNN 类模型也有明显限制:

序列处理难以并行
长距离依赖建模困难
训练速度较慢
很难扩展到超大规模模型

这些问题最终推动了 Transformer 的出现。

三、Transformer:大语言模型的结构起点

2017 年,Vaswani 等人提出了 Transformer,论文标题是 Attention Is All You Need。这篇论文提出了一种完全基于注意力机制的网络结构,去掉了传统序列模型中的循环和卷积结构,并在机器翻译任务上取得了很强效果;论文也强调 Transformer 更容易并行训练。

Transformer 的核心变化可以概括为一句话:不再按顺序一个词一个词地处理文本,而是让序列中的 token 通过 self-attention 直接建立关系。

Self-Attention 的核心公式为:

                    Attention(Q, K, V) = Softmax\left(\frac{QK^T}{\sqrt{d_k}}\right)V

其中:

Q 是 Query,表示当前 token 想要查询什么信息;
K 是 Key,表示每个 token 可以提供什么索引信息;
V 是 Value,表示每个 token 真正携带的内容信息;
QK^T用来计算 token 之间的相关性;
\sqrt{d_k}用于缩放,避免点积过大;
Softmax 得到注意力权重;
最后对 V 做加权求和,得到新的 token 表示。

从直觉上理解,Self-Attention 就是在问:当前 token 应该关注句子中的哪些其他 token?

例如句子:The animal didn't cross the street because it was too tired.

这里的 “it” 指代的是 “animal”,而不是 “street”。Self-Attention 的作用就是让模型能够根据上下文建立这种长距离依赖关系。

Transformer 的出现,为后来的 BERT、GPT、T5、LLaMA、DeepSeek 等模型奠定了结构基础。

四、BERT、GPT、T5:预训练语言模型的三条路线

Transformer 出现后,NLP 进入了预训练语言模型时代。

这个阶段最重要的思想是:

先在大规模无标注文本上预训练模型,再在具体任务上微调。

在这个阶段,有三条非常经典的路线。

1. BERT:Encoder-only 路线

BERT 使用 Transformer Encoder,核心目标是学习双向语言表示。

BERT 的全称是 Bidirectional Encoder Representations from Transformers。它通过 Masked Language Modeling 进行预训练,也就是随机遮住句子中的一些 token,让模型根据上下文预测被遮住的词。BERT 论文指出,它通过联合利用左右上下文进行深层双向预训练,并可以通过增加一个简单输出层微调到多种 NLP 任务上。

例如:我今天去 [MASK] 吃饭。模型需要根据上下文预测:

学校
公司
餐厅

BERT 更适合理解类任务,例如:

文本分类
自然语言推理
命名实体识别
阅读理解

它的核心特点是:

双向理解强
适合理解任务
不适合直接自回归生成长文本

2. GPT:Decoder-only 路线

GPT 使用 Transformer Decoder,采用自回归语言建模目标。

它的训练方式是:给定前面的 token,预测下一个 token。

例如:人工智能正在改变

模型需要预测下一个 token 可能是:世界、社会、产业

GPT 这条路线非常适合文本生成,因为它天然就是从左到右逐 token 生成。

后来的 GPT-2、GPT-3、ChatGPT、LLaMA、Mistral、Qwen、DeepSeek 等大语言模型,大多都采用 decoder-only 架构。

GPT 路线的核心特点是:

生成能力强
可以统一很多任务
适合扩展到超大规模

3. T5:Encoder-Decoder 路线

T5 使用 Transformer Encoder-Decoder 架构,它把所有 NLP 任务都统一成 text-to-text 格式。

例如:

翻译任务:
translate English to German: The house is wonderful.
→ Das Haus ist wunderbar.

摘要任务:
summarize: 一长段文章
→ 一句话摘要

分类任务:
sentiment: 这部电影很好看
→ positive

T5 的核心思想是:所有任务都可以看成文本输入到文本输出。这条路线在很多理解与生成结合的任务中非常自然。

五、GPT-3:大语言模型真正进入大众视野的关键节点

如果说 BERT 代表了预训练语言模型时代,那么 GPT-3 则是大语言模型时代的重要节点。

GPT-3 论文 Language Models are Few-Shot Learners 训练了一个 1750 亿参数的自回归语言模型,并系统展示了模型在 zero-shot、one-shot 和 few-shot 条件下的任务泛化能力。论文指出,扩大语言模型规模可以显著提升 task-agnostic few-shot performance。

GPT-3 最重要的地方不是某一个任务分数,而是它展示了一种新的使用方式:不一定要为每个任务重新微调模型,而是可以在 prompt 中描述任务,让模型直接完成任务。

例如情感分类任务可以写成:请判断下面句子的情感是 positive 还是 negative。

句子:这部电影非常精彩,我很喜欢。
答案:

模型可能输出:

positive

再比如翻译任务:

请把下面的英文翻译成中文:

The weather is nice today.

模型可能输出:

今天天气很好。

这就是 in-context learning 的雏形。

模型不是通过梯度更新来学习新任务,而是通过上下文中的指令和例子临时理解任务。

这让语言模型从“针对某个任务训练的模型”,变成了“可以通过自然语言指令调用的通用模型”。

六、为什么模型变大后会出现新能力?

大语言模型之所以被称为“大”,不仅是因为参数多,还因为它们通常具有以下特征:

参数规模大
训练数据规模大
训练计算量大
任务泛化范围大
上下文长度更长
可以通过指令完成多种任务

随着模型规模增大,模型会逐渐表现出一些小模型不明显的能力,例如:

few-shot learning
in-context learning
复杂指令理解
代码生成
数学推理
多步骤问题求解
工具调用

不过需要注意:模型变大并不自动等于模型更有用、更真实、更安全。

InstructGPT 论文就明确指出,单纯让语言模型变大,并不会天然让它更好地遵循用户意图;大型语言模型仍可能生成不真实、有害或无帮助的内容。该论文提出通过监督微调和基于人类反馈的强化学习来让模型更符合用户意图。

这说明,大语言模型的发展不只是“堆参数”,还包括:

数据质量
训练目标
指令微调
人类反馈
偏好优化
安全对齐
推理增强
系统部署

这些内容都会在后续章节逐步展开。

七、Base Model 和 Chat Model 有什么区别?

在学习大语言模型时,经常会看到两个概念:

Base Model
Chat Model

这两个概念非常重要。

1. Base Model:基础模型

Base Model 通常指只经过大规模预训练的模型。

它的主要训练目标是:

根据前文预测下一个 token

也就是:

              P(x_i \mid x_1, x_2, \ldots, x_{i-1})

Base Model 学到了大量语言知识、世界知识和文本模式,但它不一定会按照用户希望的方式回答问题。例如你问:请解释一下什么是 Transformer。

Base Model 可能会续写成一段百科内容,也可能继续生成类似训练语料中的片段,而不一定以“助手”的方式回答。

2. Chat Model:对话模型

Chat Model 通常是在 Base Model 基础上进一步经过指令微调和对齐训练得到的。

它更擅长:

理解用户指令
保持对话格式
回答问题
拒绝不安全请求
按照要求输出结构化内容

一个简化流程可以写成:

大规模预训练
  ↓
Base Model
  ↓
监督指令微调 SFT
  ↓
偏好对齐 RLHF / DPO
  ↓
Chat Model

因此,ChatGPT、Claude、LLaMA-Chat、Qwen-Chat、DeepSeek-Chat 等,都不是简单的 base language model,而是经过对齐和对话优化的模型。

八、大语言模型和传统 NLP 模型有什么区别?

传统 NLP 模型通常是任务专用的。

例如:

一个模型做情感分类
一个模型做命名实体识别
一个模型做机器翻译
一个模型做文本摘要
一个模型做问答

每个任务往往需要单独的数据、单独的训练目标和单独的模型结构。

而大语言模型更像是一个统一接口。

用户可以用自然语言描述任务:

请总结下面这段文字
请把这段英文翻译成中文
请帮我写一个 Python 函数
请解释这篇论文的核心思想
请根据下面的错误信息帮我排查代码

模型通过同一个输入输出接口完成不同任务。

这种变化非常重要。

它让 NLP 从“任务专用模型时代”进入了“通用语言接口时代”。

可以这样对比:

对比维度 传统 NLP 模型 大语言模型
任务形式 每个任务单独建模 用自然语言统一描述任务
训练方式 任务数据监督训练 大规模预训练 + 指令微调
输入形式 固定格式特征或文本 任意自然语言 prompt
输出形式 标签、序列或分数 自然语言、代码、结构化结果
泛化方式 依赖任务微调 可 zero-shot / few-shot
用户交互 强,可对话

这也是为什么大语言模型可以被称为“通用智能接口”。它不是只解决某一个 NLP 任务,而是把很多任务统一到了自然语言交互中。

九、大语言模型为什么可以成为“接口”?

大语言模型最重要的变化之一,是它让自然语言本身成为了操作接口。

过去使用一个 AI 模型,通常需要:

准备数据
设计标签
训练模型
部署模型
编写调用代码

而现在,很多任务可以直接用自然语言表达:

请帮我总结这篇文章
请把这个表格转换成 JSON
请根据下面的需求写 SQL
请解释这段代码为什么报错
请给我设计一个实验方案

自然语言变成了新的“编程接口”。

这带来了一个重要转变:

用户不需要理解模型内部结构,也可以通过语言直接调用模型能力。

所以,大语言模型不仅是一个 NLP 模型,也逐渐变成了:

知识接口
编程接口
搜索接口
数据分析接口
科研辅助接口
办公自动化接口
Agent 控制接口

后续 RAG、工具调用、Agent、多模态模型,都是在这个基础上继续扩展。

十、为什么大语言模型不是简单的“聊天机器人”?

很多人第一次接触大语言模型,是通过聊天界面。但从技术上看,大语言模型远不只是聊天机器人。它的底层能力包括:


语言理解
语言生成
信息抽取
文本摘要
逻辑推理
代码生成
数学解题
知识问答
多轮对话
格式转换
工具调用
任务规划


例如,同一个模型可以完成:


写一篇文章
修改一段论文
解释一段代码
生成一个 SQL 查询
把自然语言转成表格
根据错误日志定位问题
阅读论文并总结方法
设计实验流程


这些任务表面上不同,但本质上都可以转化为:

给定上下文,生成符合目标的文本输出,这也是为什么 decoder-only 自回归语言模型能够成为主流架构之一。因为它把大量任务都统一成了文本生成问题。

十一、大语言模型的发展不是一条线,而是多条线汇合

如果只看模型名字,可能会觉得大语言模型发展非常混乱。

但实际上,它可以分成几条主线。

1. 架构主线

这条线关注模型结构如何变化:

RNN / LSTM
  ↓
Seq2Seq + Attention
  ↓
Transformer
  ↓
Encoder-only / Decoder-only / Encoder-Decoder
  ↓
Dense Transformer / MoE Transformer
  ↓
长上下文 Transformer

其中 Transformer 是最重要的结构转折点。Transformer 论文提出了完全基于 attention 的架构,并去掉了 recurrence 和 convolution。

2. 预训练主线

这条线关注模型如何从大量无标注文本中学习:

语言模型预训练
  ↓
Masked Language Modeling
  ↓
Causal Language Modeling
  ↓
Span Corruption
  ↓
Instruction Tuning
  ↓
Preference Optimization

BERT、GPT、T5 分别代表了不同预训练范式。

3. 规模主线

这条线关注模型规模、数据规模、计算量之间的关系:

小规模预训练模型
  ↓
百亿参数模型
  ↓
千亿参数模型
  ↓
compute-optimal training
  ↓
高质量数据 + 更合理规模

GPT-3 是早期大规模自回归语言模型的关键节点,它通过 175B 参数规模展示了 few-shot learning 能力。

4. 对齐主线

这条线关注模型如何从“会续写”变成“会帮助用户”:

Base Model
  ↓
Supervised Fine-Tuning
  ↓
Reward Model
  ↓
RLHF
  ↓
DPO / RLAIF / Constitutional AI

InstructGPT 是这条线的重要节点。它展示了通过人类反馈微调,可以让模型更符合用户意图,并改善有用性和安全性。

5. 开源生态主线

这条线关注强模型如何从少数机构走向开源社区:

OPT / BLOOM
  ↓
LLaMA
  ↓
Llama 2 / Code Llama
  ↓
Mistral / Mixtral
  ↓
Qwen / DeepSeek / Gemma

LLaMA 是开源 LLM 生态中的关键节点。LLaMA 论文发布了 7B 到 65B 参数规模的 foundation language models,并强调可以仅使用公开数据训练出具有竞争力的模型。

6. 推理与 Agent 主线

这条线关注模型如何从回答问题走向复杂任务求解:

Chain-of-Thought
  ↓
Self-Consistency
  ↓
Tree of Thoughts
  ↓
ReAct
  ↓
Toolformer
  ↓
RAG
  ↓
Agent

DeepSeek-R1 是推理模型方向的重要节点。其论文指出,可以通过强化学习激发大语言模型的推理能力,并观察到自我反思、验证和动态策略调整等推理模式。

十二、学习大语言模型时最容易混淆的几个概念

在正式进入后续论文之前,我们先把几个概念区分清楚。

1. LM、PLM、LLM 有什么区别?

概念 含义
LM Language Model,语言模型
PLM Pre-trained Language Model,预训练语言模型
LLM Large Language Model,大语言模型

可以简单理解为:

LM 是最宽泛的概念
PLM 强调预训练
LLM 强调大规模和通用能力

BERT、GPT-2、T5 都可以称为预训练语言模型。GPT-3、LLaMA、Qwen、DeepSeek 这类大规模模型通常称为大语言模型。

2. Encoder-only、Decoder-only、Encoder-Decoder 有什么区别?

架构 代表模型 适合任务
Encoder-only BERT、RoBERTa 理解类任务
Decoder-only GPT、LLaMA、Qwen、DeepSeek 生成、对话、推理
Encoder-Decoder T5、BART 翻译、摘要、Seq2Seq 任务

现在主流大语言模型大多采用 decoder-only 架构,因为它天然适合自回归生成,也容易统一各种任务输入输出。

3. Pretraining、SFT、RLHF 有什么区别?

阶段 作用
Pretraining 学语言、知识和基础能力
SFT 学会按照指令回答
RLHF 根据人类偏好进一步对齐
DPO 用偏好数据直接优化模型行为

可以简单理解为:

预训练让模型“会说话”
SFT 让模型“听指令”
RLHF / DPO 让模型“更符合人类偏好”

4. Prompt 和 Fine-tuning 有什么区别?

Prompt 是在输入中告诉模型任务要求。

Fine-tuning 是更新模型参数,让模型适应某类任务。

例如:

Prompt:
请把下面这句话翻译成英文:今天天气很好。

Fine-tuning:
用大量中英翻译数据继续训练模型参数。Prompt 更轻量,适合直接使用模型。Fine-tuning 成本更高,但可以让模型更适合特定领域。

十三、本文小结

本文是“大语言模型论文精读”专栏的第一章。

我们先从整体上回答了几个基础问题。

第一,语言模型的本质是建模文本序列概率,现代 GPT 类模型通常通过预测下一个 token 进行训练。

第二,Transformer 是大语言模型的结构基础。它通过 self-attention 建模 token 之间的关系,并摆脱了 RNN 的顺序计算限制。

第三,BERT、GPT、T5 分别代表了预训练语言模型时代的三条重要路线:encoder-only、decoder-only 和 encoder-decoder。BERT 通过双向预训练学习语言表示,GPT 通过自回归预测进行文本生成,T5 则把任务统一成 text-to-text 格式。

第四,GPT-3 展示了大规模自回归语言模型的 few-shot 和 in-context learning 能力,使语言模型从任务专用模型逐渐走向通用接口。

第五,模型变大并不自动等于更符合用户意图。InstructGPT 说明,还需要通过指令微调和人类反馈对齐,让模型更有用、更安全、更符合用户需求。

第六,后续大语言模型的发展还包括 Scaling Law、开源 LLM、参数高效微调、MoE、长上下文、RAG、工具调用、推理模型和 Agent 等多个方向。

如果用一句话总结本专栏的主线:

大语言模型的发展,不只是模型参数越来越大,而是 Transformer 架构、预训练目标、数据规模、计算规律、指令对齐、开源生态、高效推理和工具调用共同演进的结果。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐