当前位置: 首页
AI教程
LLM预测下一个词原理:从Token到Transformer完整过程

LLM预测下一个词原理:从Token到Transformer完整过程

热心网友 时间:2026-07-06
转载

许多初次接触大语言模型的用户,往往会产生一种错觉:它似乎能“理解”我们的话语。你提问它回答,让它编写代码它能补全,叫它撰写文章它也能续写。然而,若将视角拉近到模型内部,审视它的“大脑”运作机制,你会发现,它所做的所有事情可以归结为一句话:

依据已有上下文,预测下一个最可能出现的 Token。

请注意,这里说的并非“下一个词”,而是“下一个 Token”。Token 可能是一个单词,也可能是半个词、一个字,甚至一个标点符号。例如你输入“中国的首都是”,模型内部的计算结果可能是这样的:

北京:92% | 北平:4% | 长安:2% | 上海:0.5%

随后它根据概率挑选一个,比如“北京”。接着,模型将“北京”追加到现有内容中,再继续预测下一个 Token。这种像蚂蚁搬家一样,一个 Token 一个 Token 逐步生成的过程,被称为“自回归生成”(Auto-regressive Generation)。

一、用户输入并非直接进入模型

你输入的是“我爱人工智能,自然语言处理很有趣”,但模型并不认识这些字符。它的第一步是将这段文本切分成它可以处理的“积木块”。这个过程称为“Tokenization”,即词元化。

大语言模型处理的最小单位,通常不是语言学意义上的“词”,而是 Token。

英文中,“unhappiness”可能被拆成 “un” + “happy” + “ness”;“tokenization”拆成 “token” + “ization”。中文也类似,“我爱人工智能,自然语言处理很有趣”可能被切分为:

[“我”, “爱”, “人工智能”, “,”, “自然语言处理”, “很”, “有趣”]

不同的模型,例如 OpenAI 的 GPT、阿里的 Qwen、Meta 的 LLaMA,它们的 tokenizer 切分方式各有不同,每个都有自己独特的“风格”。

二、为什么不直接按照完整词来处理?

原因很简单:词汇量过于庞大。如果模型需要记忆每一个完整的英文单词,词汇表会膨胀到几十万;再加上中文、日文、代码、表情符号、专业术语,更是海量数据。这会导致几个问题:

第一,词表过大,查找匹配效率极低。第二,模型参数增多,训练与推理成本急剧上升。第三,遇到新创词汇、拼写变体或专业术语,模型直接“不知所措”。

因此,更明智的做法是将词分解为更小的“基础积木”。模型无需记住每一个复杂词汇,只需掌握一批常见的子词,就能像玩乐高积木一样自由组合出各种表达。你可以把 Token 理解为 LLM 世界里的“货币单位”——人类按字词句理解语言,模型则按 Token 进行计算、传输乃至“计费”。

三、Token 会被转换成 Token ID

切分好 Token 之后,模型会将每个 Token 映射成一个数字编号,即 Token ID。例如 “你” -> 57668,“好” -> 53901。

这个数字本身并不具备语义。57668 并不代表 “你” 的含义,也无法通过加减乘除算出 “好” 的编号。它只是一个索引,类似于字典中的页码。但页码本身无法让模型理解意义,真正让模型获得语义的是下一步:Embedding(嵌入)。

四、Embedding:将 Token ID 转化为语义向量

Token ID 只是编号,模型需要通过一个巨大的查找表(Embedding Matrix),将这些编号转化为高维向量。例如 Token ID 57668 就变成了 [0.12, -0.44, 0.87, ..., 0.03] 这样的向量。该向量的维度可能是 768、1024,甚至 4096。

这个过程名为“嵌入”(Embedding)。简单来说,就是把一个离散的 Token 编号,映射到一个连续的高维语义空间中。你可以想象一个巨大的语义空间,每个 Token 都是其中的一个点。语义相近的 Token,它们的向量距离通常也更近。例如“国王”与“王后”、“男人”与“女人”之间可能存在某种方向关系,“猫”、“狗”与“动物”可能离得更近,而“国王”与“苹果”则相距甚远。这种几何结构并非人工编写,而是模型在大规模文本训练中自行“领悟”出来的。

五、Embedding 只知道“是什么”,不知道“在哪里”

有了语义向量,模型知道了每个 Token “是什么”,但这还不够。因为一句话的含义不仅取决于词语,还依赖于顺序。“我咬了狗”和“狗咬了我”,所用的 Token 几乎相同,含义却完全相反。如果模型只看向量,它无法区分哪个在前、哪个在后。

因此,我们需要加入位置信息,即“位置编码”(Position Encoding)。模型会为每个 Token 的 Embedding 添加位置信息,告知它自身出现在序列中的第几个位置。最终,每个 Token 的表示包含了两种信息:语义信息(这个东西是什么)和位置信息(这个东西在哪儿)。可以粗略地理解为:最终输入向量 = Token Embedding + Position Encoding。当然,现代模型的位置编码有很多精巧的变体,但对于初学者,记住“模型需要知道顺序”这一点就足够了。

六、Transformer 真正开始处理上下文

到这里,输入已经从文字变为一串向量。接下来,这些向量会进入 Transformer Block。一个大语言模型通常不止一层,而是多层堆叠在一起。每一层都会继续加工 Token 的表示。Transformer Block 里最核心的两个部分是:自注意力机制(Self-Attention)前馈神经网络(Feed-Forward Network)。前者负责让每个 Token 观察上下文,判断自己应关注谁;后者则对每个 Token 的表示进行更深层的加工。

七、Self-Attention:模型如何理解上下文关系

Self-Attention 是 Transformer 的灵魂。它要解决的核心问题是:当前这个 Token,应该重点关注上下文中的哪些 Token?例如这句英文:“The animal didn’t cross the street because it was too tired.” 这里的 “it” 指代的是谁?是 “animal” 还是 “street”?人类很容易判断,因为“累了”的是动物,而不是街道。模型该如何计算出来?这就要依靠 Self-Attention。

八、Q、K、V:自注意力的三个角色

在 Self-Attention 中,每个 Token 的向量会被转换为三个新向量:Query、Key 和 Value。我们可以用一个生活化的比喻来理解:

Query(查询):“我在找什么?”
Key(键):“我能被什么问题匹配到?”
Value(值):“如果别人关注我,我能提供什么信息?”

例如对于 “it” 而言,它的 Query 可能在寻找“这个代词指代的对象是谁?”;对于 “animal” 来说,它的 Key 可能表明“我是一个可行动、可疲惫的实体”;而 “street” 的 Key 则可能是“我是一个地点”。

随后模型用 “it” 的 Query 去与上下文中每个 Token 的 Key 做相似度计算(通常通过点积)。如果 score(it, animal) > score(it, street),模型就会更加关注 “animal”,并据此从 “animal” 的 Value 中吸收更多信息。这就是 Self-Attention 让模型处理指代、上下文和长距离依赖的本质。

九、一个更直观的例子:苹果手机和我吃了苹果

同一个词,在不同的上下文里含义可能完全不同。例如“苹果手机很好用”和“我吃了苹果”。第一个“苹果”是品牌,第二个是水果。单独看“苹果”这个 Token,它的初始 Embedding 是固定的。但经过 Self-Attention 处理后,它会结合上下文“动态更新”自身的表示。在“手机”和“好用”的语境下,它的表示更偏向品牌;在“吃了”的语境下,则更偏向水果。模型并不是简单地查询一个固定字典,而是在上下文中实时调整每个 Token 的含义。

十、多头注意力:并非只用一种角度看句子

真实的 Transformer 中,通常不只有一个 Attention,而是多个并行,即“多头注意力”(Multi-Head Attention)。为什么需要多个头?因为一句话里存在多种关系。一个头可能关注语法关系(主语和谓语),另一个关注指代关系(it 指向 animal),第三个关注位置关系(前后顺序),第四个关注语义类别(地点、人物、动作)。多头注意力让模型能从多个角度同时观察上下文关系,最后将不同头的结果拼接、融合,形成更丰富的 Token 表示。

十一、Feed-Forward:对每个 Token 做更深层加工

Self-Attention 之后,每个 Token 已经吸收了上下文信息。接下来它会进入 Feed-Forward Network,这是一个对每个位置的 Token 向量单独处理的小型神经网络。你可以这样理解:Self-Attention 负责“社交”,与上下文交流信息;Feed-Forward 负责“内省”,对当前信息进行深度加工。Transformer Block 会反复循环这个过程:看上下文 -> 加工自己 -> 再看上下文 -> 再加工自己……层数越深,Token 的表示就越抽象、越丰富。

十二、经过很多层 Transformer 后,模型开始预测下一个 Token

假设输入是“中国的首都是”,经过 Tokenizer、Embedding、位置编码和多层 Transformer 处理后,模型会得到最后一个位置的隐藏向量。这个向量包含了前面所有上下文的信息,它大概表达了“后面应该接一个表示首都名称的 Token”。但此时它还不是文字,模型还需要把这个向量转换成对整个词表的打分。

十三、Logits:给词表里的每个 Token 打分

假设模型词表大小为 50,000,那么模型会输出一个 50,000 维的向量,每一维对应一个 Token 的原始分数,这个分数叫做“Logit”。例如:北京 12.8,北平 8.1,上海 3.2,长安 2.9,苹果 -1.4……分数越高,说明模型认为该 Token 越适合出现在下一个位置。注意,Logit 还不是概率。

十四、Softmax:把分数变成概率

为了从候选 Token 中选出一个,模型需要用 Softmax 函数将 Logits 转换成概率,并且所有概率之和等于 1。例如:北京 92%,北平 4%,长安 2%,上海 0.5%……这时模型就知道了:下一个 Token 最可能是“北京”。

十五、采样策略:为什么模型不是永远选概率最高的词?

最简单的方式是永远选概率最高的 Token,这叫做“贪心解码”。这种方式稳定,但有时会让输出变得死板。因此很多模型会使用采样策略,常见参数有 temperature、top-k、top-p。简单理解:temperature 低,模型更保守、更确定;temperature 高,模型更随机、更具创造性。编写代码、做数学题时,我们希望 temperature 低一些;写小说、头脑风暴时,则可以调高一些。

十六、Decode:把 Token ID 变回文字

模型选出的 Token 仍然是 Token ID,比如 12345。最后一步,Tokenizer 的 Decode 过程会将它转回文字:12345 -> 北京。于是输出变成了“中国的首都是北京”。模型再把“北京”追加到上下文后面,继续预测下一个 Token,生成句号“。”,以此类推,直到生成结束符或达到最大长度。

十七、完整流程总结

现在我们把整个过程从头到尾串起来:

用户输入:“中国的首都是”

1. Tokenizer:切成 Token -> [“中国”, “的”, “首都”, “是”]
2. Token 转 ID:-> [101, 234, 8976, 322]
3. Embedding:查表得到语义向量 -> [向量1, 向量2, 向量3, 向量4]
4. 位置编码:加入位置信息 -> [语义 + 位置]
5. 多层 Transformer Block:Self-Attention 建模上下文,Feed-Forward 深度加工
6. 输出隐藏状态:最后一层输出
7. 线性层:映射到词表大小,得到 50000 个 Logits
8. Softmax:转成概率 -> 北京 92%……
9. 采样策略:选出下一个 Token ID -> 北京
10. Decode:转回文字 -> “北京”
11. 重复:追加到上下文,继续预测

十八、给新手的一句话版本

LLM 的工作流程可以更简洁地理解为:它并非一次性写完答案,而是在不断根据前文,一个 Token 一个 Token 地往下预测。

十九、给有基础读者的技术版总结

从技术角度看,一个 Decoder-only Transformer 的推理过程大致是:

input text -> tokenizer -> token ids -> token embeddings + positional encoding -> stacked decoder transformer blocks -> final hidden states -> linear projection to vocab size -> logits -> softmax / sampling -> next token id -> decode -> append and repeat

在每一层 Transformer 中,核心计算包括:

Q = XWq, K = XWk, V = XWv; Attention(Q, K, V) = softmax(QKT/√dk) V

其中,Q 代表当前 Token 想找什么,K 代表每个 Token 能被怎样匹配,V 代表每个 Token 真正提供的信息。Self-Attention 让每个 Token 根据上下文更新自己的表示。多层堆叠后,模型的隐藏状态包含了丰富的上下文语义信息,最终通过输出层映射和采样策略选出下一个 Token。

二十、容易误解的几个点

1. LLM 并非直接“理解文字”

它处理的是 Token ID 和向量。自然语言只是输入输出层面的形式,模型内部主要进行矩阵计算、向量变换与概率预测。

2. Token 不等于词

Token 可以是一个字、一个词、一个子词、一个标点、一个空格,甚至一段代码片段。所以更准确的说法是:预测下一个 Token,而非预测下一个“词”。

3. Token ID 本身不具备语义

例如“你” -> 57668,这个数字只是编号,不代表含义。真正包含语义的是 Embedding 向量。

4. Embedding 不是人工写好的字典解释

它不是人类手动定义的“苹果 = 水果 / 公司”,而是模型通过海量文本训练出来的高维空间结构。

5. Self-Attention 并非“注意力集中”那么简单

它不是人类视觉意义上的注意力,而是一种向量匹配机制。本质是:用 Query 和 Key 计算相关性,再用相关性加权 Value。

结尾:LLM 的本质是一台上下文概率机器

从外部看,LLM 好像在聊天、写作、推理、编程。但从内部看,它的核心动作非常统一:将上下文转化为向量表示,然后预测下一个 Token 的概率分布。它之所以表现得像“理解语言”,是因为在大规模训练中,它学会了语言、知识、语法、语义、代码和推理模式之间复杂的统计关系。

因此,LLM 的核心并非简单地背答案,而是在巨大的参数空间里,将上下文压缩成语义表示,再一步一步生成最合适的下一个 Token。一句话总结:Token 是输入单位,Embedding 是语义坐标,Position Encoding 提供顺序,Self-Attention 建立上下文关系,Transformer 加工信息,Softmax 给出概率,采样策略选出下一个 Token,最后不断循环,生成完整回答。

来源:https://juejin.cn/post/7657709119710036002

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
阿里云Qoder CN灵码AI助手免费版及credits计费指南

阿里云Qoder CN灵码AI助手免费版及credits计费指南

阿里云QoderCN(原通义灵码)是一款AI智能编码助手,提供IDE插件、独立IDE等形态,覆盖编码及日常办公场景。产品分个人社区版(免费)、个人专业版、企业标准版和企业VPC版,采用Credits计费模式,支持多种AI模型。

时间:2026-07-06 16:30
基于大模型的城市文旅知识图谱构建与内容分发

基于大模型的城市文旅知识图谱构建与内容分发

大模型构建城市知识图谱时优先采信权威信源。贵港西江传媒联合《度假旅游》杂志,通过本地采编、期刊发布、阿里云多平台分发模式,产出产业文旅等结构化内容,提升AI知识库收录权重,为城市品牌长效传播提供可复制路径。

时间:2026-07-06 16:30
贵州文旅AIGEO内容运营本地媒体落地实践

贵州文旅AIGEO内容运营本地媒体落地实践

针对贵州文旅行业在阿里云平台的内容运营痛点,总结合规发文规则,包括弱化营销、避免引流信息与极限词。以《度假旅游杂志》在贵阳设立本地化运营站点为例,为黔域文旅商家产出合规原创内容,提升AI平台收录权重。同时指出商家常踩的审核红线,强调以干货分享获取自然流量。

时间:2026-07-06 16:29
阿里内部禁用Claude Code OpenCode成替代方案

阿里内部禁用Claude Code OpenCode成替代方案

ClaudeCode对国内用户定向封禁,网传阿里内部已全面禁用。OpenCode作为开源替代,支持接入多种AI模型,通过CCSwitch或手动配置可无缝迁移原有MCP与AgentSkill,规避账号风险。

时间:2026-07-06 16:29
年实测Homebrew安装配置国内源多种安装方式一篇搞定

年实测Homebrew安装配置国内源多种安装方式一篇搞定

Homebrew是macOS上流行的包管理工具,提供pkg安装包、脚本安装和Git克隆等多种安装方式。国内用户推荐使用镜像脚本安装并配置中科大或清华大学镜像源以加速下载。常用命令包括brewinstall安装工具、brewinstall--cask安装图形应用、brewupdate更新及brewdoctor诊断环境。

时间:2026-07-06 16:29
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全
  • 日榜
  • 周榜
  • 月榜