大语言模型(LLM,Large Language Model),如 OpenAIChatGPT,智谱的 GLM的出现,代表了 自然语言处理(NLP,Natural Language Processing)领域的一次重要跃迁。传统 NLP方法虽然能胜任垃圾邮件分类、情感判断等特定任务,但在复杂指令理解、上下文推理和连贯文本生成方面能力有限。相比之下,现代 LLM 可以处理多轮语境、生成原创内容,并在翻译、问答、摘要和文本分析等多种任务中表现出较强的通用性,而且搁以前,你简历说你你会 NLP,简直不明觉厉;现在呢?你说你不会 LLM,都感觉自己跟不上时代了,楼下咖啡厅的交流都是充满 AI LLM的味道,为了更好的理解 LLM的本质,博主就和大家一起聊聊 LLM的内核,这是博主总结学习 LLM的开篇,就先站在3000米的高空先看看 LLM吧。

1. LLM简介

1.1 定义

大语言模型(Large Language Model,简称LLM)是指使用大量文本数据训练的深度学习模型,使得该模型可以生成自然语言文本或理解语言文本的含义。这些模型可以通过在庞大的数据集上进行训练来提供有关各种主题的深入知识和语言生产 [1]。其核心思想是通过大规模的无监督训练学习自然语言的模式和结构,在一定程度上模拟人类的语言认知和生成过程。

——百度百科

翻译翻译就是,大语言模型(LLM)是一种能够处理输入给他的文字,并且根据你的输入生成响应内容的一种模型,它也有个高端大气的名字叫深度神经网络,通过学习大量文本,掌握词语之间的关系、句子的结构以及上下文中的语言规律,从而完成问答、写作、翻译、总结等任务。大语言模型中的,主要体现在两个方面:一是训练数据规模庞大,二是模型内部包含大量参数。参数可以理解为模型在学习过程中不断调整的内部数值,它们共同决定模型如何处理输入并生成结果。

1.2 核心本质

LLM 的基础训练任务其实很简单,也就是核心本质,根据前面的内容预测下一个词。例如,看到今天天气很,模型可能会预测后面是“好”“冷”或“热”。在反复进行这种预测的过程中,模型逐渐学会语法、语义、知识关联和表达方式。令人意外的是,这个看似简单的训练目标,在足够多的数据和参数支持下,可以产生非常强大的语言能力,而前面提到的完成问答、写作、翻译、总结等任务,其实对LLM而言本质都是一样的,其实就是根据已有输入的上下文,不断地不断地预测下一个词,直到触发收尾条件,所以问答、写作、翻译、总结都是表象,核心其实就是预测,或者说推理能力。

记住这个观念很重要,这就是为什么大模型会有幻觉的本质,既然是预测,是不是就有对错?既然是预测,是不是建议你输入给到的上下文铺垫越详细越好(这就是为什么建议的prompt,skills等越详细越好),此处和侦探、警察推理、破案的本质是一样的。

当然也不是说有幻觉就一无是处了,不论是数学方法,机器学习,还是深度学习等,在解决复杂预测问题时,起到的作用更多都是提升预测正确概率的一种解决方案,而不是给到100%准确答案的求解,毕竟调优是世界的常态,最优解往往是理论值。

1.3 和人工智能家族其它成员的关系

由于LLM 可以生成新的文本,它也属于生成式人工智能人工智能是一个更广泛的概念,目标是让机器完成语言理解、模式识别和辅助决策等任务。机器学习深度学习都是实现人工智能的重要方法,而 LLM 则是深度学习的一种典型应用。

传统机器学习通常需要人工设计特征。例如,在垃圾邮件识别中,人们可能会统计“免费”“中奖”等词出现的次数,或者检查邮件中是否包含大量感叹号和可疑链接,再用这些特征训练分类模型。

深度学习则可以直接从原始数据中自动学习有用特征,减少人工设计规则的工作。不过,许多任务仍然需要带标签的数据。例如,训练垃圾邮件分类模型时,依然需要提前标明哪些邮件是垃圾邮件,哪些是正常邮件。

除了机器学习深度学习人工智能还包括规则系统、专家系统、遗传算法符号推理等方法。不过,当前许多人工智能应用主要依赖深度学习

2. LLM有什么用

2.1 初心

凭借对非结构化文本的处理能力,大语言模型能够从复杂语言材料中识别语义、上下文和情感信息,因此被应用于多个领域。常见用途包括机器翻译、文本生成、情感判断和内容摘要等。随着模型能力不断增强,LLM 的应用范围也逐渐扩展到小说创作、文章撰写、文案生成以及计算机代码编写等更复杂的任务。

2.2 发展的眼光

从发展的角度看,LLM 正在从单一的文本生成模型,逐步演变为能够连接数据、调用工具、保留记忆并自主执行任务的智能系统。随着 Prompt、MCP、Skills、Memory、Agent Harness 等能力不断成熟,LLM 未来很可能像互联网数字化技术一样,成为广泛嵌入业务流程的基础设施,并重塑部分工作的组织方式。但真正的价值不在模型本身,而在于它能否稳定、可控、低成本地完成真实任务;至于这一过程是否最终通向AGI,目前仍然只是可能性,而非确定结论。

3. 浅谈一下Transformer架构

3.1 Transformer:现代大语言模型的核心基础

如今绝大多数大语言模型,例如 GPT、Claude、Gemini、LLaMA 等,都建立在 Transformer 架构之上。Transformer 最早发表于 2017 年论文《Attention Is All You Need》,最初的设计目标其实并不是聊天机器人,而是解决机器翻译问题,例如将英文翻译成德文或法文。然而,Transformer 后来的影响远远超过了翻译任务。它改变了计算机处理语言的方式,并成为现代LLM 发展的核心技术基础。

3.2 Transformer 的基本结构:编码与生成

最初的 Transformer 主要由两个部分组成:

  • 编码器(Encoder)
  • 解码器(Decoder)

编码器负责理解输入信息,它会将文本转换成计算机可以处理的数字表示,并学习其中的语义关系。

例如:

“小明把苹果放在桌子上,因为他准备吃水果。”

编码器不仅识别“苹果”“桌子”等词,而是尝试建立它们之间的联系,判断这里的“苹果”指的是水果,而不是科技公司。解码器负责根据已有信息生成输出。例如在机器翻译任务中:

输入:

I love artificial intelligence.

编码器先理解句子的含义,解码器再生成:

我喜欢人工智能。

简单来说:

Encoder 负责“理解输入”,Decoder 负责“生成输出”。

不过,在后来的 LLM 发展中,并不是所有模型都保留完整的 Encoder-Decoder 结构。

例如:

  • BERT 使用 Encoder
  • GPT 使用 Decoder
  • T5 使用 Encoder-Decoder

其中 GPT 类模型已经成为当前生成式 AI 的主流路线,第5节细聊。

3.3 自注意力机制:Transformer 的核心创新

Transformer 最重要的创新是:自注意力机制(Self-Attention)

Transformer 出现之前,很多语言模型依赖循环神经网络(Recurrent Neural Network,RNN)

RNN 按顺序处理文本:

第一个词 → 第二个词 → 第三个词 → 第四个词

这种方式类似人读一本书,只能从第一页逐渐读到最后。它的问题是:当文本越来越长时,前面的信息需要经过很多步骤才能影响后面的内容,因此容易出现:

  • 长距离信息衰减;
  • 梯度消失;
  • 训练效率较低。

为什么RNN有不足,为什么Transformer的自注意力机制又这么重要,为什么需要捕捉上下文的关系呢?如果不捕捉,会有什么问题?看看下面这个翻译的例子就懂了。

从技术角度看,自注意力机制通过计算,来决定不同词之间的重要程度:

  • Query(查询当前需要关注什么);
  • Key(每个词提供什么信息);
  • Value(实际携带的信息)

这个后续有专门的章节,不必深陷其中,记住这个经典的例子即可,简单理解:Transformer 不再只是按照顺序阅读,而是可以同时查看整句话甚至更长文本,并找到其中的重要关联。

3.4 BERT:更擅长理解语言

BERT(Bidirectional Encoder Representations from Transformers)是基于 Transformer Encoder 的代表模型。它的目标不是生成文本,而是学习更好的语言表示,帮助模型理解文本含义。

BERT 使用一种称为掩码语言模型(Masked Language Model,MLM)的训练方式。训练过程中,模型会随机隐藏输入中的部分词,然后要求模型根据上下文预测被隐藏的内容。

例如:

“今天的天气非常 [MASK(隐藏内容)],适合出去散步。”

BERT 的任务是预测:

[MASK(隐藏内容)]

可能是什么词,关键在于:BERT 在预测这个词时,可以同时看到:

左侧信息:

“今天的天气非常”

以及右侧信息:

“适合出去散步”

因此,它能够结合完整上下文进行判断:

“今天的天气非常好,适合出去散步。”

比起只依赖前文,BERT 可以利用词语前后的信息,这就是所谓的:

双向(Bidirectional)语言理解能力。

需要注意的是:

BERT 的“双向”并不是说 Transformer 天然具有两个方向的信息流,而是因为 BERT 的训练方式允许模型在预测被遮挡词时,同时利用左右两侧的上下文。

Transformer Encoder 本身通过 Self-Attention 可以访问整个输入序列,因此 BERT 才能够建立这种双向语义表示。

由于这种训练方式,BERT 更擅长理解完整语境。

例如:

“这部电影剧情一般,但是演员表现非常精彩。”

BERT 不会简单根据“精彩”判断这是好评,而是能够结合整句话理解:

  • 剧情评价一般;
  • 演员表现优秀;
  • 整体评价比较复杂。

因此 BERT 更适合:

  • 情感分析;
  • 文档分类;
  • 搜索理解;
  • 内容审核。

可以把 BERT 理解为:

一个擅长阅读和分析文章的模型。


3.5 GPT:更擅长生成语言

GPT(Generative Pre-trained Transformer)主要采用 Transformer Decoder 结构,它的核心训练目标非常简单:根据已有文本预测下一个词

例如输入:

“人工智能正在改变”

模型预测:

“世界”

继续预测:

“的发展”

虽然任务看起来像简单的文字接龙,但为了做好这个任务,模型必须学习:

  • 语言规律;
  • 语法结构;
  • 知识关联;
  • 推理模式;
  • 不同领域的信息。

因此,一个简单的训练目标,在海量数据和巨大参数规模支持下,可以产生非常复杂的能力。这也是 GPT 可以完成:

  • 写文章;
  • 写代码;
  • 翻译;
  • 总结;
  • 问答;
  • 内容创作。

等任务的原因。


3.6 GPT 为什么具有 Zero-shot 和 Few-shot 能力

传统机器学习通常需要针对不同任务训练不同模型。例如:

  • 垃圾邮件分类 → 一个模型;

  • 情感分析 → 一个模型。

GPT 展现出了更强的通用能力。

3.6.1 Zero-shot(零样本学习)

模型没有看到具体示例,也可以完成任务,例如:

“请把下面中文翻译成英文。”

模型无需重新训练,就能够完成翻译。


3.6.2 Few-shot(少样本学习)

模型通过少量示例快速适应任务。

例如:

苹果 → Apple

香蕉 → Banana

橘子 →

模型可以推断:

Orange

这里并不是模型重新学习,而是利用已有参数中学习到的语言模式,根据上下文调整输出。

3.7 Transformer和LLM的关系

需要注意的是:

Transformer 是一种神经网络架构,而 LLM 是基于这种架构,通过大规模数据训练得到的语言模型。

两者的关系可以理解为:

Transformer 是一种“发动机设计”,而 LLM 是搭载这种发动机,并经过大量训练形成的智能系统。

因此:

  • Transformer ≠ LLM
  • 但现代主流LLM大多基于 Transformer

如今,大多数先进 LLM 都采用 Transformer 架构,尤其是Decoder-only Transformer

例如:

  • GPT
  • Claude
  • LLaMA
  • Qwen

但需要明确,TransformerLLM 并不是同一个概念,Transformer 是一种通用神经网络架构,可以用于:

  • 文本;
  • 图像;
  • 视频;
  • 多模态任务。

LLM 则是:

使用大规模文本数据训练,并拥有大量参数的语言模型。

此外,也存在一些探索非 Transformer 架构的大语言模型,希望降低计算成本,提高效率,但目前来看,Transformer 仍然是推动 LLM 发展的主流技术路线。

4. 大模型的“大”究竟多大

现代GPT、BERT等大语言模型的能力,很大程度上来源于大规模、多样化的预训练数据。这些数据通常包含数十亿甚至万亿级别的文本 token(词元,大模型训练时候分词的最小单元,可能是一个单词,可能是两个,可能是一个英语词根等),覆盖网页、书籍、百科资料、论文以及代码等多个领域,使模型能够学习语言结构、知识关联以及复杂的上下文模式。

GPT-3 为例,其训练数据池约包含 5000 亿个 token,最终模型训练过程中实际使用约 3000 亿个 token。这些数据主要来自多个公开文本来源,包括 Common Crawl 网页数据、WebText2、Books1、Books2 Wikipedia 等。其中,Common Crawl 是规模最大的来源,约包含 4100 亿 token 的过滤网页文本;此外,Books1Books2 分别贡献约 120 亿 token550 亿 tokenWikipedia 约包含 30 亿 token

需要注意的是,GPT-3 数据表中的比例并不是简单的数据规模占比,而是训练过程中不同数据来源的采样权重。例如,虽然 Wikipedia 的原始规模远小于网页数据,但由于其内容质量较高,在训练时仍被赋予了一定比例。通过融合不同领域的大规模文本数据,GPT-3 学习到了丰富的语言规律和知识关联,使其能够完成问答、文本生成、摘要、翻译以及代码生成等多种任务。

随着模型规模不断扩大,训练数据规模也持续增长。例如,Meta 发布的 LLaMA 系列模型进一步扩展了数据来源。LLaMA-2 使用约 2 万亿 token 的公开数据进行训练,数据覆盖网页文本、代码、书籍、学术资料等多个领域。相比早期语言模型,更大规模且更加多样化的数据帮助模型学习更复杂的语言模式、知识关系和推理能力。

不过,大规模预训练也是构建 LLM 中成本最高的阶段。训练先进的大语言模型需要大量 GPU 计算资源和长时间运行,成本通常达到数百万美元甚至更高。例如,GPT-3(1750 亿参数)的训练成本估计约为 460 万美元。因此,在实际应用中,开发者通常不会从零开始训练模型,而是直接使用已有的预训练模型,再通过微调(Fine-tuning)、指令调整(Instruction Tuning)等方式,使模型适应具体业务需求。

经过大规模预训练后的 LLM 通常被称为基础模型(Foundation Model)。它们具备较强的通用语言能力,可以进一步扩展到搜索、办公、编程、客服、知识管理等不同应用场景。

5. 从 GPT 到 GPT-3,再到 ChatGPT,深入聊聊

GPT 系列模型不断扩大模型规模和训练数据,使语言能力逐渐增强,其中 GPT-3 是一个重要里程碑,GPT-3 于 2020 年发布,拥有:

  • 1750 亿参数;
  • 数千亿 token 的训练数据。

相比早期 GPT 模型,GPT-3 在规模上实现巨大提升,并展现出了更强的文本生成和任务迁移能力,但是本质还是GPT的核心训练目标和用途。


5.1 ChatGPT:从语言模型到对话助手

GPT-3 本身主要是一个基础语言模型,它能够生成文本,但并不一定能够很好地理解用户指令。ChatGPT 则是在 GPT 基础模型之上,通过额外训练得到的对话系统,主要包括:

5.1.1 指令微调(Instruction Tuning)

让模型学习:

用户提出任务 → 模型按照要求完成任务。

例如:

用户:

总结下面这篇文章。

模型:

输出摘要。


5.1.2 人类反馈强化学习(RLHF)

通过人类评价反馈优化模型输出,使回答:

  • 更符合用户意图;
  • 更安全;
  • 更自然。

因此:GPT 基础语言模型,而 ChatGPT 经过对齐优化后应用形态


5.2 下一个 Token 预测:简单目标背后的强大能力

GPT 的训练方式属于自监督学习(Self-supervised Learning)。它不需要人工为每句话标注答案,而是利用文本自身生成训练目标。

例如:

原始文本:

今天的天气很好。

模型学习:

输入:

今天的天气

预测:

很好

因此,大量互联网文本都可以直接成为训练数据。这也是 LLM 能够利用海量数据训练的重要原因,如果按照之前需要人工tag的方式来实现训练,可见这个量级和参数是恐怖如斯的,从人治理数据到LLM自己治理,这本身就是一次质变的飞跃。


5.3 为什么 GPT 使用 Decoder-only Transformer

最初 Transformer 是为机器翻译设计的,由EncoderDecoder两个部分组成。Encoder 负责理解输入文本,Decoder 根据输入生成目标文本。而 GPT 采用Decoder-only Transformer。它去掉了 Encoder Encoder-Decoder Attention,只保留:

  • Masked Self-Attention
  • 前馈网络

原因是GPT 的任务是根据已有内容预测未来内容,例如:

输入:

今天的天气非常

预测:

模型只能利用前面的信息,不能提前看到未来答案。这种按照顺序逐步生成文本的方法称为:自回归生成(Autoregressive Generation)


5.4 什么是自回归模型

自回归的核心思想是当前结果依赖于之前已经出现的信息,例如:股票价格可能受到过去价格影响;一句话中的当前词,也受到前面词语影响。GPT 生成文本时:

第一个 token

预测第二个 token

继续预测第三个token

每一步都会参考之前已经生成的内容,因此能够保持文本连续性。


5.5 GPT 规模的发展

相比最初 Transformer的建议:

  • Encoder 6 层;
  • Decoder 6 层。

GPT-3

  • 96 Transformer Decoder
  • 1750 亿参数。

不过,需要注意:模型能力并不是简单由参数数量决定,而是由多个因素共同影响:

  • 模型架构;
  • 参数规模;
  • 数据质量;
  • 训练方法;
  • ……

5.6 为什么 GPT 能“涌现”出没有专门训练的任务

GPT 最令人关注的能力之一,是它能够完成一些训练目标之外的任务。例如:虽然模型训练目标只是预测下一个 token,但它仍然可以:

  • 翻译语言;
  • 编写代码;
  • 总结文章;
  • 回答专业问题。

这种现象通常被称为:涌现能力(Emergent Capability)

例如:模型训练过程中接触大量英文和中文文本:

English:

artificial intelligence

Chinese:

人工智能

模型逐渐学习不同语言之间的关联关系,因此具备翻译能力。不过需要注意:“涌现能力”是否是真正突然产生的新能力,还是模型规模扩大后能力逐渐增强,目前仍是研究讨论中的问题;这里真的很有意思,也值得令人深思,就是回到语言本身,传统的翻译,编码,总结,回答专业问题的技能,在底层的语言表达逻辑是否真的是完全雷同?起码在LLM这个精灵看来,是一样的。


5.7 GPT 与现代 LLM 的关系

GPT-3 发布之后,许多现代LLM仍然延续 GPT 的核心思想。

例如:

  • OpenAI GPT 系列;
  • Meta Llama
  • Qwen
  • Claude

虽然不同模型在:

  • 数据来源;
  • 参数规模;
  • 训练方式;
  • 对齐方法;

方面存在差异,但核心路线基本一致:使用 Transformer Decoder 架构,通过大规模预训练获得通用语言能力,再通过后训练(Post-training)适配具体应用。

6. 手搓一个LLM的步骤

如果从零开始手搓一个简化版LLM,该怎么搓,总体可以分为三个阶段来搓。

第一阶段,搓LLM的基础环节,主要包括文本数据的处理输入数据的构造,以及 Transformer 中关键的注意力机制实现。通过亲手编写代码,理解模型如何接收和处理语言信息,理解这一阶段,会对你以后应用LLMprompt有质的飞跃。

第二阶段,搓一个类似GPT 的语言模型,并学习完整的预训练流程。模型将通过大量文本学习语言规律,并具备生成新文本的能力。同时,本阶段还会介绍模型评估的基本方法,帮助理解如何判断一个LLM 的性能。

说明:真正训练一个接近 GPT 规模的大语言模型需要巨大的计算资源和资金投入,实际成本可能达到数百万美元。因此,博主不会尝试复现工业级模型的完整训练规模,而是采用较小的数据集完成学习实验,和读者们一起探讨理解模型训练背后的核心机制。此外,也会介绍如何加载已有的公开模型权重,从而避免从零训练带来的高昂成本。

第三阶段,开始搓已有预训练模型的基础上进行微调(Fine-tuning),让模型能够更好地适应具体任务,例如按照用户指令生成回答、完成文本分类等实际应用场景。

通过这一过程,我们将从底层代码出发,逐步理解一个现代 LLM 从数据处理、模型构建、预训练到应用优化的完整流程,更多的内容尽情期待总结更新。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐