Wiki Foundations3 Concepts and Frameworks of AI

3.6 Tokenization

吴双, 黄菲 Updated 20 min read 简体中文

在上一章,我们把视角落在模型的内部世界——潜空间(Latent Space)。在那里,相似的样本彼此靠近,不同的类别自然分离,某些语义关系甚至会被转化为几何上的方向与距离。

Latent Space 就像一套由模型自己“长”出来的世界坐标系,它用大量向量的排列,组织起对外部世界的理解。

但在讨论 Latent Space 的形状和结构时,有一个更基础的问题被轻轻略过:这些高维向量本身从何而来?

一段文本、一张图片、一个声音片段,最初并不是向量;它们是符号、是像素、是时间上的信号。

那么,它们如何进入这套内部坐标系?又是谁在决定它们以什么样的方式被“放进去”?

或许,要理解模型为何会在“聪明”与“愚蠢”之间摇摆,我们需要从源头追问:从数据进入模型的那一刻;从它决定“以何种最小单元来组织世界”——这就是本章即将探索的概念,Tokenization。

Token:AI 眼中的最小信息单元#

要让一段文本、一张图像在模型的内部世界里占据一个位置,总得先有某种记录方式。即,模型得先决定:用什么样的单元来记录它们的存在。

这一点在人类身上也并不陌生,回想一下自己小时候学汉字的过程:

一开始,老师会教你认单个字:“山、水、人、日”;很快你会发现,一个字往往不够用,于是出现“山水、行人、日出”这样的词;再往后,老师要求你用这些词造句、写段落,还要会组织结构,如开篇明义、承上启下,最后写成一篇完整的文章。

在这个过程中,“笔画 → 偏旁 → 汉字 → 词语 → 句子 → 段落”,是一条层层封装的链条:越往上,语义越完整;越往下,颗粒越细。

我们可以做个小测试:

大多数人都会卡壳一下。

但把它们放进词里:犄角旮旯、邯郸、深圳、奢侈,你大概就能顺畅读出来了。

这个原因很简单:人脑更习惯在“成块”的语义单元上运作,而不是在完全孤立的字形上。

这条直觉,在大语言模型身上同样成立,只是它使用的“块”叫做 Token。

从文本到 Token,再到编号#

当我们把一句话喂给模型,例如:

小明在犄角旮旯里邯郸学步,而小红在深圳过着奢侈的生活。

在屏幕上,你看到的是熟悉的汉字序列,一眼就能理解其中大致的意思;但对模型来说,这并不是一件容易的事。

模型想要理解语义,就需要先把这串字符切成一个个的 Token。

这一步由 Tokenizer(中文翻译为“分词器”,但实际上切分出来的未必是词,也可以是标点符号、数字或者某个单词的一部分)完成。

它会按照自己的一套规则,把原始文本拆开,比如:

  • 有的模型会把“犄角旮旯”当成几个罕见字的组合。
  • 有的模型会把“小明”和“小红”当成整体。
  • 有的模型会把“在深圳”视作一个高频片段,把“奢侈”拆成两个子词。
不同语言模型的Tokenization结果对比
同一句话,在经过 Qwen、DeepSeek 和 GPT 的 Tokenization 之后,呈现出三条完全不同的 Token 序列,Token 数量从20到30不等;这些差异会在后续的 Latent Space 里留下不同的分布、不同的相似性模式,也会导致模型在面对同一句话时走向略有差别的理解路径。图中的分词结果来源于 TikTokenizer,读者可自行体验。

上图所呈现的那些五颜六色的色块,就是 Token。

但到目前为止,它们还没有任何语义,只是被切出来的单元。

接下来,需要给每个 Token 分配一个唯一的编号,就像给每块乐高积木贴上编号:

  • “小”可能对应 ID 5327。
  • “深圳”可能对应 ID 19483。
  • “侈”可能对应 ID 87654。

在模型的输入里,真正流动的并不是“汉字”,而是一串串整数 ID。

这也是为什么调用 LLM API 时,计费单位不是字数,而是 Token 数量——因为从底层算力的角度看,模型关心的是处理了多少个编号,而不是你写了多少个字。

把原始文本切分成这些离散单元,并为它们分配编号的整个过程,就叫做 Tokenization。

编号背后的向量:Embedding 如何“长出”语义#

如果 Token 只是整数编号,那模型是怎么“理解”它们的呢?

关键是第三步:Embedding(嵌入表示)。

可以把模型想象成一本极厚的词典:每个 Token ID 都会在一张“查表”里,找到一行高维向量:

  • ID 5327 → 一个长为4096的向量。
  • ID 19483 → 另一个4096维向量。

这些向量就是 Embedding,是模型真正能够计算的对象。

它们一开始是随机初始化的,在训练过程中会不断被调整:出现在相似上下文中的 Token(比如“深圳”和“广州”),其向量会被拉得更近;语义相反的词(比如“高”和“低”),在某些维度上会呈现出相反的方向;同一个 Token 在不同上下文中承担的搭配关系,也会在向量的不同维度上被编码。

于是,原本毫无意义的整数 ID,通过 Embedding 这一步,被映射到了一个连续的语义空间。

在这个空间里,“距离”“方向”“角度”等几何关系,开始承载语义上的相似、对立与组合能力。

从这一步开始,模型才真正进入我们在 Transformer 章节中描述过的那条流程:

换句话说,模型并不会“在字上思考”,而是在高维向量上做几何运算。

而这些向量又完全依赖于前一步:我们是如何把语言切成一个个 Token,并赋予它有意义的 Embedding。

不同的切法,看到不同的结构#

我们再回头看刚才那句例子:

小明在犄角旮旯里邯郸学步,而小红在深圳过着奢侈的生活。

在你眼中,它是一整句话,是一个完整的场景;在模型眼中,它能够理解这句话的语义很大程度上取决于分词器的“刀法”:

  • 如果一个模型把“小明”“小红”以及“在深圳”视作整体 Token,它更容易捕捉到“人物 + 地点”的结构模式。
  • 如果另一个模型把“奢侈”拆成“奢”和“侈”两个 Token,那它学习到的可能更多是部件之间的统计关联,而不是词语作为整体的情绪色彩。
  • 如果某些生僻成语被拆得七零八落,它就更难在 Embedding 空间里为这些词找到稳定的位置。

同一句话,在不同模型内部,会对应到不同的 Token 序列、不同的 Embedding 分布。

可以说,每一种 Tokenization 方法,都在回答一个问题:

我打算用怎样的单位,来描述这段语言中的结构?

这就是模型理解语言时的第一道栅栏:数据被切成什么样的单元,模型就在这样的单元上去发现关系、建构结构。

Tokenization 的尺度:“粗”与“细”的拉扯#

我们已经看到,模型理解文本的第一步,是把连续的文本转换为一串 Token,再由这些 Token 进入 Embedding 空间。

于是会自然冒出一个问题:以语言为例,我们应该把它切成多大的单元?

一词、一字,或是偏旁部首?

这个问题看似简单,实则困扰自然语言处理(NLP)领域二十多年,也没有一个完美答案。

原因很朴素:语言本身是灵活的,而 Tokenization 总要做出某种固定的选择。

最早的直觉是:既然“词”是语言中最直观的语义单位,那每个词就应该是一个 Token。

这种方法对英语来说看上去很合理,因为空格天然标记了词边界。所以在20世纪末期的 NLP 模型里,“one token = one word”是很常见的设定。

但问题也接踵而至:

  1. 词形变化太多。 run / runs / running / ran 或是 dog / dogs / dog’s / dogs’,每种变化都需要一个新 Token,词表很快膨胀到不可收拾。
  2. 语言差异极大,无法通用。 中文没有空格,日语中汉字假名混写,土耳其语、芬兰语等黏着语,一个词可以包含多个语法功能。
  3. 未登录词(OOV)成灾。 新名字、新词汇、拼写错误……任何没见过的词都变成一个黑洞:“我不认识这个”。

词级 Tokenization 就像是试图给天空中形状不断变化的云都贴上标签——看上去语义完整,但工程上却无法维持。

为了摆脱词表爆炸的问题,有人提出最极端的方案:把所有文本切成一个个字符就好了!

这样做的优点确实非常诱人:词表极小(英文只需不到256个字符),不会再有 OOV 问题;任意新词、外来词、网络语都能被完美覆盖;对多语言友好,所有字符都能以同样方式处理。

但代价同样巨大:

  1. 序列长度变得极长。 比如,“strawberry”从一个 Token 变成10个字符 Token [s, t, r, a, w, b, e, r, r, y]。情况越复杂,序列越膨胀,模型计算成本也随之增加。
  2. 语义碎裂,学习困难。 模型必须从 s、t、r 重新推演出“str”这个音段、再推到“straw”的概念,最后才可能逼近“草莓”。对模型而言,这更像是在处理噪声组合,而不是现成的语言单元。
  3. 长距离依赖变难。 一个句子被拆成几百个字符后,模型很难在注意力机制(Attention)中维持整体结构。

子词(Subword):折中之策#

在词级太粗、字符级太细的两极之间,研究者提出了一条折中路线:把语言切成“可以复用的片段”,就像用积木可以搭出风格各异的城堡。

这就是子词(Subword)方法。

现代大模型的主流分词器,都属于子词派,只是各家刀法不同。

下面我们不讨论算法公式,而是从“它们偏好怎样切”来理解它们的差异。

1. 字节对编码(BPE / Byte-level BPE):高频优先的统计派

BPE 的逻辑非常简单:先从所有字符开始 → 找出语料中最常相邻出现的两个符号 → 把它们合并成新的 Token → 不断重复……

最终高频词会逐渐变成更大的 Token,低频词则保持较细的颗粒度。

Byte-Level BPE(如 GPT-2、DeepSeek 等)更进一步:直接在0~255的字节序列上操作,不依赖 Unicode、空格或任何语言规则,从而在跨语言上具备高度稳健性。

但它的问题也很明显:高频构词单元会被捕捉到,但频率与语言学语义并非总是完全一致,例如把“unbelievable”拆成“un + believ + able”还算合理。

但在中文中,字符的共现频率并不稳定对应语义结构。

例如“的人”因出现频率极高(“很多的人”“所有的人”),往往会被直接合并成一个 Token,而“研究生”却可能被拆成“研究”与“生”。

从频率角度看这种切法合理,但与语义边界并不一致。

2. WordPiece:让语料更自然的概率派

WordPiece(用于 BERT)反其道而行:它不问“出现次数多不多”,而问“把这两个合起来,会不会让整个语料更像自然语言”。

它的目标是最大化语言模型的整体似然,因此更接近词根、前后缀等传统语言学结构。

其缺点是:强依赖空格预分词 → 对中文不友好;词表对不同语言的偏好很明显。

3. SentencePiece:去语言假设的极简派

SentencePiece 进一步往“通用”方向走:把文本当成原始字符流,不假设空格、词边界,空格也只是一个可学习的符号。

它的 Unigram 模型从一个巨大的候选集合开始,不断删除“贡献最小的子词”,最终留下统计意义上最稳健的词表。

这使它成为跨语言模型(如 T5、mBART)的常用选择。

“错误回答”背后的真相#

在理解了这些分词方法之后,我们可以重新回到那些人类可以轻易答对,但 LLM 却回答错误的例子:

为什么有些模型认为 9.11 比 9.9 大?

原因之一在于,它并没有把“9.11”当作一个整体的数值,而是当作一串 Token。

在大多数模型中,9.11 会被切成 [9] [.] [11],而 9.9 被切成 [9] [.] [9]。

于是 Embedding 层看到的是:

  • “11”是一个 Token,有独立向量。
  • “9”是一个 Token,有独立向量。

在训练语料中,“11”常出现在“更大”的场景里,从而影响模型的判断。

当你把问题换成:“从数值角度看,9.11 和 9.9 谁更大?”模型往往又能答对。

因为这种问法触发了更明确的语义轨道,让模型召回“数学类上下文”的模式。

这个例子直观地反映出:模型的判断方式,与它“如何将输入拆解为 Token,并在何种语境下使用这些 Embedding”密切相关。

大语言模型数字比较和字符计数问题
在2024年,“9.11 和 9.9 谁大”和“strawberry 里有几个 r”这两类问题暴露了 LLM 的“智力缺陷”——这些题在人类看来几乎不需要思考,但大模型却会时而答对、时而答错,这也引起了大家对 LLM 工作原理的热议。从图右可以发现,当你向模型提问时,这些问题在进入模型的第一步就已经变了形:不论是数字还是单词,在进入模型前都会被转化为 Token,模型后续的处理都只能基于这些 Token 形成的嵌入向量继续往下走。

类似地,当我们让模型去数 strawberry 里有几个 r 时,它看到的往往也不是一串整齐的字母,而是已经被切好的子词片段:例如 ["straw", "berry"],或更细一些的 ["str", "aw", "berry"]。

模型学习的单位从一开始就是这些 Token:它知道“straw”常与“berry”同时出现,也知道“berry”在食品语境里出现得更频繁;但它并不会像人一样沿着字母逐个扫描。

于是,“数 r”和“比较 9.11 与 9.8”虽然表面上属于完全不同的题型,一个是数数,一个是算术,但在模型内部,它们其实落在同一个层面:

都要求模型绕过 Token,直接在更细的符号层面(字符、数位)上精确操作,而这恰恰不是它平时最常练习的模式。

到此读者大概可以看出:Tokenization 并不只是“把文本切开”,它更像是在规定模型能够观察和操作的单位的尺度与边界。

一旦确定,模型所能观察到的结构、能够形成的经验、甚至会犯的错误,也随之被固定下来。

粒度太粗,信息被压成大块;粒度太细,信息又被打成碎片;子词方法试图折中,但每一种折中都隐含着不同的偏好。

而这些偏好最终沉入模型内部,变成它的 Embedding 分布、语义结构与可能的误差模式,以及最重要的——基于数据建立的“世界观”。

视觉 Token:当图像被转译成序列#

在语言中,Token 是天然离散的:字母、汉字、词语,本身就是人类发明的符号单元。

但图像不是。一张照片是连续的光强分布,是流动而密集的纹理细节。

然而 Transformer 这类架构的前提,是接收向量序列。

这意味着,当我们希望用类似的架构去处理图像时,需要先回答一个问题:

一幅图像,应该被拆成什么样的“序列单元”,才能交给模型去处理?

视觉 Tokenization 便是在这个问题下逐步形成的一套做法。

为什么图像也需要 Tokenization?#

可以先做一个简单的数量级估算。

如果我们把一张 224×224 的图像直接展平成像素序列,就会得到 50,176 个位置(若考虑 RGB 通道,还会更多)。

在自注意力机制中,需要处理的是一个接近 50k × 50k 的相关性矩阵,这在计算上很难直接承受。

于是,研究者提出了一个非常工程化、同时也非常暴力的决定:把图像切成若干小块,每块视为一个 Token。

这就像把一幅画切成16×16的拼图块。每一个拼图块,成为模型的一个输入单位。

这便是 Vision Transformer(ViT)提出的经典做法:如果 Patch 大小为16×16,一张 224×224 的图像会被切成:

14 \times 14 = 196

个 Patch Token。

196 个 Token——与语言中的几十个 Token 数量级相近,Transformer 终于能消化这样的序列了。

那么,Patch Token 能让模型“看到”什么?

切成 Patch 之后,每个 Token 对应的是图像中的一个局部区域:一个 Patch 可能是苹果的一部分;或是桌子的一小块纹理、桌布的一角。

这些 Patch 一开始并没有语义标签,只是局部视觉信息的载体。

模型需要在多层 Attention 与前馈网络的作用下,逐渐从这些局部中抽取出对象、边界与场景结构。

与文本 Token 相比,有一个明显区别:文本 Token 往往直接对应一个符号单元,其边界通常与语义边界接近;图像 Patch 的边界则与物体边界未必一致,更像是一个规则网格在连续场上的投影。

连续 vs. 离散#

这种粗暴的 Patch 化切法带来三重结构性问题:

1. 信息密度不均

一个16×16的 Patch 里,可能包含水果的某个部位,或者变化复杂的纹理。

但这些 Patch 在模型内部都只有一样的“权重”。

模型需要通过注意力才能判断哪些 Patch 重要、哪些不重要。

这造成视觉理解的一个常见现象:模型对细节的把握经常不足,对整体结构的重建也不稳定。

2. 语义边界不对齐

语言的 Token 边界大多与语义边界相对一致:“水果”和“桌子”这种词天然是语义单位。

但对图像来说,一块规则的网格不会因为看到“苹果”或“香蕉”而改变形状,它只按照固定步长切割。

于是,一个完整的果实往往被拆成数块:颜色落在不同格子里,轮廓被切断,纹理跨越 Patch。

模型接收到的,不是一整个“东西”,而是被网格分散后的若干片段,它需要在更高层的表示里重新把这些片段组织成连贯的对象。

3. Token 太少 → 模型看世界的“像素”太粗

196 个 Patch Token 装载的信息远不足一张百万像素的图像。

这意味着模型必须“压缩式理解”:积木块少(Token 少),每个积木块很大,世界只能被粗略分辨。

这就造成:视觉 Token 是一种低分辨率的世界。文本 Token 是一种高分辨率的世界。

这也解释了为什么在多模态模型中,语言 Token 经常在注意力中“盖过”视觉 Token:

文本 Token 的语义信息密度更高、表达更明确、边界更清晰。

除了 ViT 这种基于 Patch 的做法,在视觉生成领域还出现了另一条路线:先把图像压缩到一个低维的潜空间(Latent Space),再用一个有限大小的“码本”(Codebook)把每个 Latent Block 映射成离散的索引 Token。

在 VQ-VAE、VQ-GAN、RQ-VAE 等模型中,一张高分辨率图像会被编码成一个较小的 Latent 特征图,特征图的每个位置会被量化到码本中的某个向量,对应一个离散编号。

这样,一张图像就可以用一串有限词表中的 Token 来描述,便于用 Transformer 等模型进行自回归生成。

与 Patch Token 相比,这一类表示更强调:

  • 压缩能力: 用尽可能少的 Token 表示尽可能多的信息。
  • 生成友好: 方便作为“视觉词序列”被语言模型风格的架构处理。

尽管两条路线在形式上不同:一种偏向连续特征,一种偏向离散索引;它们都在尝试回答同一个问题:

如何在可接受的计算量下,为模型提供足够丰富、又便于操作的视觉结构单元?

三种视觉Tokenization方式的比较
图中的三幅图对应了三种不同的视觉 Tokenization 方式。左图是最常见的 ViT 式规则网格:整张图被均匀切成很多 Patch,每个 Patch 只是局部纹理和颜色的载体,优点是覆盖完整、结构简单。中间的图只在少数区域上划出 Patch,更接近早期视觉模型里的 Region Feature——计算集中在“可能有东西”的地方,背景被有意淡化。右图则把完整物体当作一个 Token,粒度更大,却和我们日常说“一个苹果、一只盘子”的描述方式更接近。从左到右,视觉 Token 的基本单元从规则网格,走向“候选区域”,再走向对象本身;覆盖范围、计算成本和语义完整性也随之发生变化。而这背后反映的是,视觉 Tokenization 打算把图像拆成怎样的信息单元,模型在这些单元之间能学习怎样的关系。

Tokenization 之后:结构、模态与世界模型#

到此,读者或许已经明白,不论是语言、图片或是由静态图片衍生出的动态视频,Tokenization 都会经历类似的两步:

  1. 把数据转化为一组基本单元,即 Token。
  2. 再为每个单元赋予一个向量表示,即 Embedding。

在这个意义上,Tokenization 为每种模态选择了“模型将以何种视角去解构与理解数据”:

语言强调符号之间的组合关系,图像强调空间邻域与局部纹理,视频与行为则包含时间结构与因果约束。

而在人类的感知与理解中,多模态并非是分离的:我们不会把“看见的猫”和“听见的猫叫”“说出的‘猫’这个词”视作独立对象,它们自然地指向同一个概念。

李飞飞在《AI’s Next Frontier》中也提到,真正的世界模型必然是多模态的——因为世界本身就是通过多种感官被感知和刻画的。

回顾 ImageNet 的构建,或许是一个有趣的启发。

李飞飞团队当年并未从图像本身出发,而是从 WordNet 这座语言系统的结构性出发:词语之间的上下位关系、类别层级、语义网络,被用作组织图像世界的框架。

这些语言结构为图像提供了“放置位置”,再由人工标注填入视觉内容。

ImageNet 背后体现的正是一种多模态对齐的直觉:在日常生活中,我们使用图像,却总是借助语言来命名、分类、解释。

图像并不是孤立存在的,而是以语言的概念体系为坐标,在一张更大的结构网络上占据位置。

而构建这样的数据集,本质上是在寻找一种结构,使这些异质的模态可以在其中相互落位。

ImageNet与WordNet的视觉语言概念结构
要构建一个百万级的视觉分类数据集,最先遇到的难点并不是“要收集多少张图”,而是一个更基础的问题:怎样界定一个视觉概念?“狗”是否够作一个类?如果细分,哈士奇、金毛、吉娃娃之间又是什么关系?当类别数量成百上千,这已经不是简单罗列,而必须是一套自洽、可扩展的概念结构。李飞飞的启发来源于 WordNet——将人类所使用的词汇描述排列在相连的空间里,但并不是像词典中按照字母顺序排列,而是根据它们之间的意义联系进行连接。李飞飞认为类别是视觉(我们看到的事物)和语言(我们描述事物的方式)的交叉点,因此 ImageNet 的宗旨就是用视觉来阐述 WordNet 包含的每一个概念,视觉与语言第一次在同一张结构图中对齐。这在她看来,也是迈向真正机器智能的一步:让模型在多模态之间拥有共享的概念结构。

在这样的例子旁观之下,多模态 Tokenization 的意义愈发清晰:它既将不同模态转成模型可读的形式,也为每种模态选定了可被对齐的表达方式。

语言的名称、图像的形状、轨迹的路径各不相同,却常常在关系模式上隐隐相合。

正因如此,不同模态才有机会在同一模型中并置,并让我们得以追问:

在这些表面形式背后,是否存在一种更普遍的组织方式,使它们能被纳入同一个坐标框架?

这个问题不必急着回答。

它只是提示我们:在 Token 与 Embedding 之上,或许还存在一层更抽象、更稳定的表达空间。

不同模态的具体表示会继续演化,但它们透露出的结构性线索似乎始终指向某种共同形态。

也正因如此,近年来也出现了另一条探索路线——弱化离散 Token 的角色,直接在连续的潜空间中刻画对象、场景与动态关系1,让对齐发生在更接近结构本身的层面。

这两种方向未必对立,更像是在同一问题上,从不同侧面摸索“结构应该长成什么样”。

最后,如果把视线轻轻移到更大的尺度,会发现:地理空间本身就是一种关系载体,通过位置、距离、邻接与流动等关系,把城市与活动织成结构清晰的网络。

空间的意义从来不是某个点本身,而是这个点在关系之网中的位置——它与谁相连、与谁接近、在哪些路径上被不断经过。

沿着这种视角往回看 Geospatial Tokenization,一个真正成熟的模型,迟早需要在内部形成一种能够同时容纳语义、时间与空间约束的关系骨架。

沿着这个方向继续追问,一个自然的问题浮现出来——

在这样一张骨架上,AI 将以怎样的方式安放它所“读取”的语言、图像以及人类行为?


作者信息与参考来源#

作者吴双
吴双
深圳大学城市空间信息工程系,2023级地理信息与智慧城市专业硕士研究生。
研究方向:产业园区空间配置、时空知识图谱。
作者黄菲
黄菲
深圳大学城市空间信息工程系,2022级博士研究生。
研究方向:GeoAI、Geospatial Tokenization、Human Mobility Generation、Geospatial Data Representation Learning。

本章节由吴双、黄菲负责编写,含 AI 工具辅助(ChatGPT、Gemini),文中所用插图部分来源于网络。

封面图由即梦 AI 合成,prompt 为:积木散落,漂浮,机器人俯身搭建积木,微观积木拼凑成城邦,远景,镜头从机器人身后俯拍,机器人背影,机器人盘腿而坐,机器人搭建积木,远景,上帝视角,宇宙背景;肌理纹理;积木漂浮,积木拼凑;上帝视角,机器人背影,地球上布满由积木搭建的城市,树木,城邦,高低错落,积木在空中漂浮。

参考来源#

  1. 《我看见的世界——李飞飞自传》

  2. 大模型智障检测+1:Strawberry有几个r纷纷数不清

  3. 找出9.9<9.11的真正原因:《圣经》!神经元干预可免重训练修复

  4. From Words to Worlds: Spatial Intelligence is AI’s Next Frontier

校稿:黄菲


  1. 近几年,不同研究路线开始尝试在更连续的潜空间中组织表征。例如,V-JEPA 模型尝试让系统直接预测潜空间中局部与整体的关系,让结构从像素和 Patch 的离散边界里抽离出来;Genie-3 将视频先压缩到一个时空潜空间,再在其中预测动态的延续;Sora-2 则把潜空间进一步量化为 Codebook Token,让模型在更高层次的块结构上学习场景的一致性与物理约束。这些方向的共同意图在于指出,表达结构这件事,并不一定要完全依赖离散的单元;连续的潜空间或许能够更好地承载模式、关系与约束。或许在未来的模型中,离散 Token 与连续潜空间会一起构成一套更完整的表达体系:前者提供离散的入口,后者承担更大的结构跨度。 ↩