图库图片
由 We and AI 与 BBC R&D 发起的非营利组织 Better Images of AI 发现,图库里满是科幻机器人、发光的大脑和蓝色背景。它认为这些图片误导人们对 AI 的理解,也掩盖了构建 AI 的人。
Better Images of AI(在新标签页中打开)Vibe Coding生成式动态2026 年秋
关于 AI 模型内部发生了什么的研究,用代码,按它们运行的数学画出来。
关于当今模型内部机制的动态研究:文本如何变成 token,每个词关注什么,下一个词如何被选出,图像模型如何作画。每幅图都由其机制的一个小型可用版本计算得出。页面打开时,一个分词器和一个语言模型就会在你的浏览器里训练,每项研究都可以上手玩。
研究
动笔之前,我先看了 AI 是如何被描绘的:人们随手找来的图库图片、实验室委托创作的艺术作品,以及少数设计师从系统本身出发做出的图形。
由 We and AI 与 BBC R&D 发起的非营利组织 Better Images of AI 发现,图库里满是科幻机器人、发光的大脑和蓝色背景。它认为这些图片误导人们对 AI 的理解,也掩盖了构建 AI 的人。
Better Images of AI(在新标签页中打开)DeepMind 委托艺术家诠释研究主题,并把作品免费发布在 Unsplash 和 Pexels 上。这些作品美丽而多样,但它们表达的更多是围绕 AI 的想法,而不是模型计算的方式。
Unsplash 上的 Visualising AI(在新标签页中打开)Justin Jay Wang 的图形从系统的行为出发。为 OpenAI 做的,是为每位访客实时生成的渐变;为 Cursor 做的,是线描图:强化学习变成相互咬合的齿轮,代码库索引变成层层叠起的网格。他指挥一个智能体,把每一幅都写成代码里的规则。
用代码做设计(在新标签页中打开)Token
这个分词器从一页关于光、水和绘画的句子里学到了它的合并规则。输入任何内容,它都会切成自己认识的片段;把滑块往回拖,可以看到学到的合并更少时的样子。
10 个 token: the, painter, re, paint, e, d, the, mo, on, light
字节对编码从单个字符开始,统计训练文本中每一对相邻的组合,把出现最频繁的一对合并成新的 token,如此反复。编码时,再按学到的顺序重放这些合并。
常见词会合成一个 token。训练文本里从没出现过的词,会拆成它见过的片段,这就是模型能读懂任意字符串的原因。
每一道拱是一次合并,连接它所合并的两个片段的中心,比它内部的合并高一层。墨色的拱完成一个 token,灰色的是其中的中间步骤。
读数会写出这次合并,以及它在学到的列表中的名次。每个 token 下面的条带写着它的 ID,也就是模型真正收到的数字。
限额和价格都按 token 计算,所以产品在用户书写的地方,也应该按 token 计数,而不是按字符。
拼写类任务,比如数一个词有几个字母,对从没见过这些字母的模型来说很难;产品可以把它们交给代码。主要在英文上训练的分词器,会把其他语言切成更多片段,所以同样一条消息,用中文可能比用英文更贵。
注意力
指向一个词,看看它在看哪里。这个句子是故意重复的:第二遍时,归纳头会找到第一次出现的位置,并预测出紧随其后的那个名字。也可以写一个带重复短语的句子试试。
归纳头给出的下一个词:Vela,复制自第 4 个词。
在 Transformer 的每一层里,每个 token 都会给它前面的 token 打分,再按权重混合它找到的内容。可解释性研究发现,有些注意力头承担着可辨认的工作。
前词头把每个词和它前面的词连起来。归纳头在这条连接上更进一步:它找到当前词更早出现的副本,再关注紧接其后的内容。模型就是这样,把提示词里只出现过一次的模式延续下去的。
线下方的曲线是一个词的注意力,粗细对应权重。上方的拱是前词头。矩阵则一次呈现整个头,每个词一行,看得越多的地方越暗。
这些权重是把每个头已发表的规则应用到你的句子上,并像大模型那样,让一部分权重落在第一个词上。它们不是从训练好的网络里读出来的。
这就是为什么提示词里的示例有用,也是为什么提过一次的名字或格式会反复出现。
它也解释了一种失败:模型可能复制一个谁都没打算设定的模式。让人们能查看、固定、编辑或删除之前的上下文,他们就能掌控什么会被复制。
来源: Vaswani 等,2017, Elhage 等,2021, Olsson 等,2022, Wang 等,2022, Xiao 等,2023
采样
这个小模型在“the light”之后可能写出的每一个句子,都被一次画出来。调整温度,抽一个句子,再指向任意分叉,看看下一个词的概率。
the light 之后的下一个词
语言模型给词表里的每个词一个概率。在 softmax 之前把分数除以温度:温度低于 1,概率分布变得更尖;高于 1,则变得更平。温度为零时,模型总是选概率最高的词,所以同样的提示词总是得到同样的回答。
这里的模型是一个三元组模型,就是香农在 1948 年用手工采样的那种,它在你的浏览器里,用和分词器同一页句子训练而成。
每个分叉是一个可能的下一个词。它的带宽对应概率,最可能的词在中间;路径越不可能,河流的墨色就越淡,直至变灰。
钴蓝色的笔是一次真实的采样。它的随机数设了种子,所以每次访问时,封面画出的都是同样的句子。
“重新生成”之所以存在,是因为回答本身就是采样。产品可以按任务设定温度:提取信息和写代码用低温,头脑风暴和起名用高一点的温度。
当一个问题有好几个好答案时,并排展示几个,比把一次抽样当成唯一答案告诉人们的更多。
扩散
这是我的一幅油画,被埋进噪声,再一步步复原。拖动查看每一步,或者让它自己播放。
扩散模型学习逆转一个过程:用许多步把图像和高斯噪声混在一起。生成,就是从纯噪声开始,每一步去掉一点。
自然图像的大部分能量集中在大的形状上,而噪声均匀分布在各个尺度。所以随着噪声被去掉,大的形状最先清晰,细节最后出现,生成过程往往是从粗到细。
左边是每一步带噪声的输入,采用余弦调度。右边是根据这个输入对画作的最佳线性猜测:逐个频带应用维纳滤波,训练好的模型的猜测大致也是如此。
条带把画面分成多个频带,最大的形状排在最前;某个频带的信号一旦强过噪声,就把它填满。
构图很早就确定了,所以生成过程中就能预览。变体可以按重做多少步来提供:只重做后面几步,布局不变、细节改变;从更早开始,布局也会跟着变。
我画画时,先铺大块面,人物的边缘留到最后。模型最终也是按同样的顺序工作。
来源: Ho、Jain 与 Abbeel,2020, Nichol 与 Dhariwal,2021, Meng 等,2022, Dieleman,2024
绘图规则
合并在线的上方拱起,注意力挂在线的下方,高度表示有多深或有多远。分叉分割概率,频带按尺度分割画面。
墨色是模型已经确定的,钴蓝是它此刻正在做的,灰色是它略过的。东西淡出时变成更浅的实色,所以静止的一帧读起来也像在运动。
每项研究播放一次,从白纸到结果,再回到白纸,让下一项干净地切入。开启“减弱动态效果”时,每项研究改为显示完成后的画面。
来源