大语言模型(英语:Large Language Model,简称LLM)

大多数人都有和 DeepSeek、Kimi 这类大语言模型(LLM)对话,却很少有人真正想明白:当你敲下一行文字,点击发送,到模型一字一句吐出回复,这中间到底发生了什么?

其实,抛开那些动辄千亿参数的复杂模型不谈,LLM 的本质非常简单:它就是一个永不停歇的 “文字接龙” 大师,通过一次又一次预测 “下一个字是什么”,最终拼出一整段完整的回复。

整个过程可以拆解为一个清晰的循环流水线,我们用一张图先看懂全貌:在这里插入图片描述

LLM 预测循环流程示意图

接下来,我们一步步把这个过程拆解开,讲透每一个环节。


第一步:把你的文字,拆成模型能懂的 “积木”——Tokenization

你输入的是一串人类能看懂的字符串,比如:"你好,大模型",但计算机和大模型根本看不懂文字,它们只认识数字。

所以第一步,模型要先把你的文本,拆成一个个最小的、标准化的 “文本积木”,我们称之为Token(词元)。这个过程就叫做分词(Tokenization)。

注:这里我使用到了openai的分词网站:https://platform.openai.com/tokenizer

你可能会问,为什么不直接按字或者按词拆分?

这是因为现代 LLM 普遍采用了子词(Subword)分词算法(比如 BPE),它的好处是:

  1. 兼顾效率与覆盖:用有限的几万种 Token,就能组合出几乎所有的词语,不管是常用词还是生僻词、甚至是你造的新词。

  2. 解决未登录词问题:比如你输入一个模型没见过的专业术语,它也能把它拆成几个子词来理解,而不是直接报错。

举个例子:

  • 英文单词 unhappiness,可能会被拆成 unhappiness 三个 Token;
  • 中文句子 你好,大模型,可能会被拆成 你好模型 四个 Token。在这里插入图片描述

简单来说,Token 就是模型处理文本的最小单位,1 个 Token 大概对应 0.75 个英文单词,或者 1.5 至 2 个左右的中文字符。


第二步:把积木变成数字 ——Token 到 Token ID 的映射

拆完 Token 之后,模型还是不能直接处理这些字符串,它需要把每一个 Token,转换成一个唯一的整数,这个整数就是Token ID。

这个过程其实就是查表:模型自带了一个预训练好的词汇表(Vocabulary),里面记录了每一个 Token 对应的唯一 ID。比如:

  • 你好 → 177519
  • → 11
  • → 1640
  • 模型 → 184232

经过这一步,你输入的整段文字,就从一串字符串,变成了一串纯数字的数组:

[177519, 11, 1640, 184232]在这里插入图片描述

到这里,文本的预处理就完成了,这串数字数组,就是大模型真正的输入。


第三步:大模型的 “思考”—— 编码与上下文理解

现在,这串 Token ID 数组被送入了大模型的核心,开始了模型的Transformer “思考” 过程。

首先,这些 ID 会被转换成向量:

1. 词嵌入:本质是查表操作

词嵌入的底层实现非常直观,就是一个超大的查找表(Lookup Table):

  • 模型会维护一个形状为 [词表大小 |V|, 隐藏维度 d] 的权重矩阵,每一行就对应一个Token的语义向量——比如“国王”和“女王”的行向量会非常接近,因为它们的语义相似。
  • 当你拿到Token ID之后,直接把这个ID作为索引,从矩阵里取出对应的那一行,就得到了这个Token的嵌入向量,整个过程就是一次简单的数组索引。
  • 绝大多数主流大模型(比如GPT、LLaMA系列)都会做权重共享:这个嵌入矩阵,和最后预测下一个Token的输出层权重是同一个,这样可以减少近一半的参数,同时提升模型的泛化能力。词嵌入查表示意图

词嵌入底层实现示意图

2. 位置编码:给向量注入顺序信息

因为Transformer是并行处理所有Token的,天生不认识序列顺序,所以需要给每个Token注入位置信息,现在主流的实现有两种:

  • 传统正弦位置编码(原始Transformer):用三角函数预计算出位置向量,直接加到词嵌入上,公式是:

这种方式不需要训练,但是处理超长序列的时候泛化能力很差。

  • 旋转位置编码(RoPE,当前事实标准):现在LLaMA、GPT-NeoX等主流模型都用这个,它不是直接加向量,而是通过旋转词嵌入的向量,让两个Token的点积自动带上它们的相对位置信息。这种方式天生支持长度外推,哪怕训练的时候只见过4k的序列,推理的时候也能处理128k甚至百万级的长序列。

3. 自注意力:理解上下文依赖的核心

这是模型理解词与词之间关系的核心,底层的计算流程是:

  1. 生成Q、K、V向量:每个Token的向量,通过三个独立的可训练权重矩阵,分别投影出三个向量:
  • Q(查询):当前Token想要“查找”什么信息
  • K(键):当前Token能“提供”什么信息
  • V(值):当前Token的实际内容
  1. 计算注意力分数:用当前的Q,和所有Token的K做点积,点积的结果就代表两个Token的相似度,然后除以√d_k来缩放,避免点积太大导致Softmax饱和、梯度消失。

  2. 归一化与加权求和:把分数过Softmax,转换成0-1之间的注意力权重,然后用这些权重对所有的V做加权求和,就得到了当前Token的上下文向量——比如当处理“它”的时候,就会自动给前面的“球”或者“机器人”分配很高的权重,实现指代消解。

  3. 多头注意力:上面的过程会并行做很多次(比如8头、32头),每个头关注不同的依赖关系,比如有的头关注语法结构,有的头关注语义关联,最后把所有头的结果拼起来,再做一次线性变换,就得到了自注意力层的输出。 另外,因为是Decoder-only的生成式模型,这里还会加一个因果掩码:把未来位置的注意力分数设为负无穷,这样Softmax之后权重就是0,保证模型在处理的时候,看不到未来的Token,不会泄露信息。

4. Prefill与KV Cache:推理加速的核心

这一步是把所有输入的Prompt一次性处理完,同时为后面的生成阶段做准备:

  • Prefill阶段:模型会一次性把所有输入的Token都过一遍Transformer层,为每个Token都计算出对应的K和V向量,然后把这些K和V都缓存起来,这就是KV Cache。这个阶段的时间复杂度是O(n²),所以如果你的Prompt很长,这一步会比较慢,也就是你感觉“第一个字出来很慢”的原因。
  • KV Cache的作用:后面生成新Token的时候,就不需要重新计算之前所有Token的K和V了,只需要计算新Token的K和V,拼到缓存里就行。这样生成阶段的时间复杂度就从O(n²)降到了O(n),每生成一个新Token都非常快。

KV Cache工作流程示意图

KV Cache工作流程示意图

经过这一步,模型已经完全理解了你输入的内容,接下来就要开始生成回复了。


第四步:预测下一个 Token—— 接龙的第一步

理解了你的问题之后,模型要做的第一件事,就是预测:在我现在的上下文后面,最可能出现的下一个 Token 是什么?

这就是 LLM 最核心的任务:下一个 Token 预测(Next Token Prediction)。

模型会输出一个概率分布:对应词汇表里所有几万种 Token,每个 Token 出现在下一个位置的概率是多少。比如,在你问了 “你好,请问 LLM 到底是什么?” 之后,模型可能会算出:

  • :35% 的概率
  • :20% 的概率
  • :15% 的概率
  • … 其他所有 Token 的概率

然后,模型会根据你设置的采样策略(比如贪心、Top-P、温度系数等),从这个概率分布里选出一个最合理的 Token ID,作为它生成的第一个回复的 ID。


第五步:解码 —— 把数字变回你能看懂的文字

拿到了预测出来的 Token ID 之后,模型要做的就是把它变回你能看懂的文字,这个过程就是解码(Decoding)。

其实就是反过来查词汇表:刚才我们是 Token 查 ID,现在是 ID 查 Token。比如预测出来的 ID 是 56568,那对应的 Token 就是,这样你就能看到模型输出的第一个字了。

这就是为什么你会看到模型是一个字一个字往外吐的 —— 因为它本来就是一个 Token 一个 Token 生成的。


第六步:自回归循环 —— 这就是 LLM 的本质

到这里,模型只生成了一个字,还没完。

接下来,最关键的一步来了:模型会把刚刚生成的这个新的 Token ID,拼到之前的输入序列的末尾,形成一个新的、更长的输入序列。

然后,重复上面的过程:

  1. 把新的输入序列送入大模型,处理上下文

  2. 预测下一个 Token 的概率分布

  3. 采样得到新的 Token ID

  4. 解码成文字,输出给你

  5. 再把新的 ID 拼到输入后面,继续循环…

这个循环,我们称之为自回归生成(Autoregressive Generation),这就是 LLM 的本质!

它就像玩文字接龙:

  • 你出了开头:你好,请问LLM到底是什么?
  • 模型接了第一个字:
  • 然后它把加到句子后面,变成:你好,请问LLM到底是什么?我,然后接下一个字:
  • 再加进去,变成:你好,请问LLM到底是什么?我是,再接:
  • 再加进去,再接:
  • 就这样一个字一个字接下去,直到它预测到了结束符(比如<|endoftext|>),或者生成的内容足够长了,这个循环才会停止。

总结

看到这里你应该明白了,不管是和你聊天、写代码、写论文、还是做推理,所有 LLM 能做的事情,本质上都是这个简单的循环:

预测下一个 Token,把它加到输入里,再预测下一个,循环往复。

那些看似复杂的逻辑、推理、创造力,本质上都是模型在海量的文本数据里,学会了人类语言的规律,然后用这个规律,一次一次地接龙,最终拼出了一段段看似智能的文字。

那么这就是 LLM 的本质:循环预测 “下一个字是什么”。

这里给大家精心整理了一份全面的AI大模型学习资源包括:AI大模型全套学习路线图(从入门到实战)、精品AI大模型学习书籍手册、视频教程、实战学习、面试题等,资料免费分享

👇👇扫码免费领取全部内容👇👇
在这里插入图片描述

1. 成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图方向不对,努力白费

这里,我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。可以说是最科学最系统的学习成长路线。
在这里插入图片描述

2. 大模型经典PDF书籍

书籍和学习文档资料是学习大模型过程中必不可少的,我们精选了一系列深入探讨大模型技术的书籍和学习文档,它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础(书籍含电子版PDF)

在这里插入图片描述

3. 大模型视频教程

对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的大模型视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识

在这里插入图片描述

4. 2026行业报告

行业分析主要包括对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

5. 大模型项目实战

学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。

在这里插入图片描述

6. 大模型面试题

面试不仅是技术的较量,更需要充分的准备。

在你已经掌握了大模型技术之后,就需要开始准备面试,我们将提供精心整理的大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

在这里插入图片描述

7. 资料领取:全套内容免费抱走,学 AI 不用再找第二份

不管你是 0 基础想入门 AI 大模型,还是有基础想冲刺大厂、了解行业趋势,这份资料都能满足你!
现在只需按照提示操作,就能免费领取:

👇👇扫码免费领取全部内容👇👇
在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐