面试官:“你如何理解大模型的工作本质?”我。。。
本文最后更新于 45 天前,其中的信息可能已经有所发展或是发生改变。

前言

在openclaw、claude code等LLM应用爆火的今天,不尝试主动拥抱AI大概就意味着坐等时代抛弃。这篇文章我们来聊聊大语言模型的工作实现逻辑是怎样的,难道大语言模型真的就如初见印象中那么神通广大?(至于什么是大语言模型这里就不过多赘述了。。。)

首先抛出结论:

大模型的工作本质是——一次添加一个 Token

一、Token是什么?

经常使用大模型的朋友对这个词肯定不会陌生,毕竟ChatGPT免费版动不动就说”今日Tokens到达上限请明日再来“,那么这个无数次阻断我们自由探索的Token到底是什么?

Token 是 LLM 处理文本的基本单位。

这里的token虽然说是文本处理的单位,但token ≠ 单词 ≠ 字符,不同语言的 token 规则不同,例如:

文本Token可能的拆分
hello worldhello world
unbelievableun believ able
我爱你
KubernetesKuber netes

总而言之:Token 是通过 tokenizer 算法切分出来的子词单元(subword,至于具体怎么切如上所示(只是可能切法)

举个例子来帮助理解吧:

假如你输入了:

I love cloud computing.

可能会被切分成token:

[I] [love] [cloud] [comput] [ing]

之后,每个切分出的token会被转换成一个token id

例如:

I -> 345
love -> 8921
cloud -> 12093
comput -> 8872
ing -> 231

所以模型实际上看到的是:

[345, 8921, 12093, 8872, 231]

而并非文字。

二、“一次添加一个 Token”到底是什么意思?

理解了Token是什么之后,我们再回归正题聊聊大模型的工作本质究竟是什么。

不像我们想象的那样,大模型生成文本的方式其实非常机械,模型本质是在不断预测“下一个最可能的 token”,这么说可能有点抽象,那再举个例子来帮助理解:

假如你问一个模型:

中国的首都是

第一步:将文本切分成token(此处只是方便理解,省略token id)

[中国] [的] [首都] [是]

第二步:根据输入的token计算概率分布,取可能性最大的结果预测下一个token

例如:

北京  0.92
上海  0.03
广州  0.02
南京  0.01

那么模型就会选择概率最高的北京,然后输出:

中国的首都是北京

所以生成过程其实是:

token1 token2 token3 token4
→ 预测 token5
→ 再预测 token6
→ 再预测 token7(不断循环,每次只根据之前的token预测下一个token)

所以本质是:P(token_t | token_1, token_2, … token_t-1)

这就是 语言模型(Language Model)

三、为什么转换成Token id模型也看不懂?

Token ID 只是整数,本身不包含语义信息,因此需要映射到向量空间,必须转换为 向量

转化成向量之后再处理还有个好处,AI 算法的输入不限于文本,还包括图片、音频等多模态信息,统一转换为向量后可由同一算法框架处理,转化成向量这一步就是:Embedding(嵌入)

我们也可以这样理解:Embedding = 把 Token 变成向量

一个文本内容进入模型前的转化流程如下:
1. 分词(Tokenization):将输入文本拆分为 Token 序列
2. One-Hot 编码:将每个 Token 映射为高维稀疏二进制向量
3. 向量压缩:通过神经网络将稀疏向量压缩为固定大小的稠密向量

讲的更加直观一些,继续沿用上面的例子:

北京

可能,最终被转化为一个1536维的向量:

[0.13, -0.82, 0.77, ...]

注意:向量在 语义空间 中是有结构的。(这个概念不理解可以放到后面,知道就行)

四、大模型的工作流程

大模型的工作流程可以大致概括成以下流程:

文本
↓
Tokenizer
↓
Token IDs
↓
Embedding
↓
向量
↓
Transformer layers
↓
预测下一个token

如果换成具体的例子就是:

"你是"

↓ tokenizer

[你] [是]

↓ token id

[123, 88]

↓ embedding

[
[0.21,0.11,...],
[0.33,0.82,...]
]

↓ Transformer
↓ Attention
↓ Feed Forward

↓ 输出概率

AI 0.9
ML 0.05
DL 0.03

↓ 输出预测结果
你是AI

总结

这篇文章中我们围绕大模型的工作本质详细了解了什么是Token(LLM 处理文本的基本单位),什么是embedding,以及文本内容在被处理前究竟会经过哪些处理,希望看完这篇文章的你彻底理解了大模型的实际工作原理~

如果觉得文章有所帮助,可以选择智齿一下博主,一缘一分期待加入૮(˶ᵔ ᵕ ᵔ˶)ა
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇