万物皆可 Token:图像、声音、动作的统一语言
当 GPT-4o 能看图、听声音、生成图片时,它用的不是三个不同的模型——而是把一切都变成了 token。图片是 token,音频是 token,甚至机器人抓杯子的动作也是 token。这是 AI 正在经历的「大统一」。
一个疯狂的想法:如果一切都是 token?
Transformer 的成功建立在一个简单的框架上:给定一个 token 序列,预测下一个 token。 这个框架在文本上证明了自己——那为什么要局限于文本?
如果我们能把图像、音频、视频、机器人动作、甚至 DNA 都变成「token 序列」,那么同一个 Transformer 架构就能处理一切。不需要为每种模态设计专门的网络——统一的 next-token prediction 就够了。
这不是科幻。这正在发生。
图像:从像素到视觉词汇
问题:像素太多、太连续
一张 256×256 的图片有 65,536 个像素,每个像素 3 个通道。如果把每个像素当作一个「token」,序列长度就是 196,608——Transformer 处理不了这么长的序列。
而且像素值是连续的(0-255),不是离散的。Transformer 的 embedding 层需要有限的词表。
我们需要一种方法:把图片压缩成短序列,并且离散化为有限词汇表中的索引。
VQ-VAE:学习「视觉单词」
2017 年,VQ-VAE(Vector Quantized Variational Autoencoder)提出了一个优雅的方案:
核心直觉: 就像文本由有限的词汇组成,图像也可以由有限的「视觉单词」拼贴而成。
具体做法:
- 编码器把图片压缩成小的特征图(比如 32×32)
- 每个位置的特征向量,在一个「码本」(codebook)中找最近邻
- 用码本索引替代原始向量——离散化完成
- 解码器从码本索引重建图片
DALL-E 1 正是用这个思路工作的:先用 dVAE(discrete VAE)把图片变成 1024 个视觉 token,然后用一个 Transformer 联合建模「文本 token + 视觉 token」——预测下一个 token 就能生成图片。
进化:VQGAN → MAGVIT-v2
VQ-VAE 的图片质量有限。后续改进沿着两个方向:
VQGAN(2021): 加入 GAN 对抗训练,让重建图片更清晰、更真实。不再只优化像素级误差,而是让判别器检查「这看起来像真图吗?」
MAGVIT-v2(2024): 一篇标题就很直白的论文——“Language Model Beats Diffusion — Tokenizer is Key”。核心创新是 Lookup-Free Quantization(LFQ),把码本大小推到了 2¹⁸ = 262,144。更大的视觉词汇表 = 更精细的图像描述 = 更高质量的生成。
结论:Token-based 生成(LM 方法)已经能匹配甚至超越 Diffusion 模型——关键在于足够好的图像 tokenizer。
音频:声音的离散密码
问题:声音是高维时序信号
一秒 24kHz 的音频有 24,000 个采样点。直接当 token 序列?太长了。而且音频有层次结构:音色、节奏、旋律分别在不同的时间尺度上运作。
EnCodec & SoundStream:神经音频编解码器
Meta 的 EnCodec 和 Google 的 SoundStream 用了一个巧妙的层级方案——残差向量量化(Residual Vector Quantization, RVQ):
- 编码器把音频压缩成低帧率表示(~75 帧/秒)
- 第一个量化器捕获最重要的信息(粗结构)
- 第二个量化器处理残差(细节)
- 第三个量化器处理剩余残差(更细的细节)
- …最多 32 层
每一层都有自己的 1024 大小码本。最终,1 秒音频 = 75 × N 个 token(N = 使用的层数)。
类比: 这就像画一幅肖像:第一层是大色块和轮廓,第二层加细节,第三层加纹理。每层都是独立的「描述序列」。
从 Token 到音乐生成
有了音频 token,音乐生成就变成了语言模型的任务:
- MusicGen(Meta, 2023): 文本描述 → 音频 codec token 序列。发明了「delay pattern」解决多层 RVQ 的联合生成问题。
- AudioLM(Google, 2023): 先生成语义 token(粗粒度),再生成声学 token(细粒度)——两级 token 对应不同抽象层次。
- VALL-E(Microsoft, 2023): 3 秒语音 → 提取说话人的 codec token 特征 → 生成任意文本的语音 token。
↑ 点击左侧模态切换 | 观察不同信号如何统一为 token 序列
机器人:动作也能变 Token
从连续控制到离散预测
机器人的动作是连续的:手臂在三维空间中的位置 (x, y, z)、旋转角度 (roll, pitch, yaw)、夹爪开合——共 7-8 个连续维度。
怎么变成 token?
RT-2(Google, 2023)的方法简单粗暴:
- 每个维度独立用 256 个 bin 离散化
- x = 0.37 → 映射到 bin 94
- 把 bin 号当作 token 输出
- 模型自回归预测:先预测 x 的 bin,再预测 y 的 bin…
这让 Google 的机器人能直接复用视觉-语言预训练的知识来控制机械臂。同一个 Transformer 既能理解图片、回答问题,又能输出机器人动作。
FAST:频率域压缩
但简单 binning 对快速精细动作不够用。Physical Intelligence 在 2025 年提出 FAST(Frequency-space Action Sequence Tokenization):
- 不是逐帧离散化,而是对一段动作序列做 DCT 变换(离散余弦变换)
- 在频率域上量化——低频分量(大动作)用少量 token,高频分量(细微抖动)可选择性保留
- 压缩率高,且保留动作的连续性
结论: 从 RT-2 的朴素 binning 到 FAST 的频域压缩,再到 OAT(2026)的学习型有序 token——动作 tokenization 正在快速进化。
DNA:生命的语言,也是 Token
基因组作为字符序列
DNA 由四种碱基组成:A、C、G、T。最简单的做法:每个碱基 = 一个 token。但人类基因组有 30 亿个碱基——这个序列长度太恐怖了。
k-mer 方法(DNABERT):把每 k 个碱基当作一个「词」。6-mer 就相当于有 4⁶ = 4096 个「DNA 单词」。
BPE 方法(DNABERT-2):直接把 NLP 的 BPE 搬到 DNA 上。让算法自动发现频繁出现的碱基组合——这些往往对应有生物学意义的 motif(转录因子结合位、基因调控元件等)。
HyenaDNA: 回到字符级,但用超长上下文(100 万 token)+ 次二次复杂度的 Hyena 架构来处理整条染色体。
蛋白质? ESM(Meta)把 20 种氨基酸作为 token,在 2.5 亿蛋白质序列上做 masked language modeling——居然能预测蛋白质 3D 结构。
结构化数据:JSON 也要优化 Token
不只是感官模态。结构化数据(JSON、表格、SQL)也面临 tokenization 效率问题。
标准 BPE 会把 JSON 的 {, }, : 等语法符号和值内容一起切分,浪费 token。TOON 格式(Token-Oriented Object Notation)通过重新设计序列化格式,在保持 JSON 语义的前提下减少 40% token 消耗。
Google 的 TaPas 把表格展平成 token 序列,加上行/列位置编码——让模型能「看到」表格结构。
大统一的里程碑:Emu3
2024 年,百度的 Emu3 发表在 Nature 上,展示了真正的统一:
- 文本、图像、视频 全部用同一个词表的 token 表示
- 训练目标只有一个:next-token prediction
- 没有 diffusion,没有专门的视觉模块
- 性能匹配各自领域的专用模型
他们还发现了一个有趣的现象:跨模态的信息传递集中在单个 [EOI](End of Image)token 上——这一个 token 充当了「模态桥梁」。
这意味着什么
「万物皆可 token」不只是工程技巧——它背后是一个深刻的认知:
- 通用接口:Token 序列成了所有模态的通用表示层。任何信号只要能离散化为 token,就能接入 Transformer 的生态系统
- 涌现能力:当不同模态的 token 在同一个模型中训练时,跨模态的迁移学习会自然涌现(RT-2 用网络知识帮助机器人理解指令)
- Tokenizer 决定上限:正如 MAGVIT-v2 的标题所言——tokenizer 才是视觉生成的关键瓶颈,不是模型大小
但也有根本性的局限:离散化必然有损。 你不能用有限词汇完美描述连续信号。这引出了下一篇的主题——如果连 tokenizer 本身都是问题,我们能不能干脆扔掉它?
下一篇预告
Byte Latent Transformer 说:不需要 tokenizer。MEGABYTE 说:直接处理原始字节。动态 patching 说:让模型自己决定在哪里「切词」。最后一篇,我们来看 tokenizer 的终结——或者说,它的进化。