一句话定位
VILA-U 是一个把视频/图像/语言的「理解 + 生成」统一进单一自回归 next-token 框架的基座模型——不挂任何外部 diffusion,靠一个同时学会文本对齐(contrastive)与图像重建(VQ)的统一视觉塔把视觉离散 token 既能”看懂”又能”画出”。在 LLaMA-2-7B 上,理解侧 VQAv2 79.4 / POPE 85.8 逼近连续 token 的主流 VLM,生成侧 MJHQ-30K FID 7.69(384 分辨率,仅 15M 训练图)超越所有自回归同行并比肩 SD-2.1/SD-XL。ICLR 2025 接收。
背景与定位
统一多模态此前有两条路,各有硬伤:
- 路线 A(VQGAN 离散 token,如 show-o、LWM、CM3Leon):用纯重建目标训练的 VQGAN tokenizer 把图像变离散 token,LLM 直接 next-token 预测即可生成,工程上和语言建模完全同构、好部署;但这些 token 只编码低层外观、缺语义,下游理解任务严重掉点。
- 路线 B(量化 CLIP 特征,如 SEED-LLaMA、LaViT、AnyGPT):对预训练 CLIP/ViT 特征做 codebook 量化,因为 CLIP 特征语义丰富,理解强;但这类 tokenizer 没有解码能力,生成时必须外接一个 diffusion 模型把 token 当条件去渲染,等于又维护一套 diffusion 栈,基础设施复杂。
VILA-U 的判断是两个原则:(1) 端到端自回归 VLM 理解差,根因是 VQGAN token 只用重建损失训、没和文本对齐——必须在 VQ 视觉塔预训练阶段引入文本对齐;(2) 只要数据质量够高、规模够大,自回归图像生成能达到 diffusion 同级质量。据此它造了一个「既像 CLIP 又像 VQGAN」的统一视觉塔:用 contrastive loss 拿语义、用 VQ 重建 loss 拿可解码性,再用 residual quantization 扩容特征空间。最终全程 next-token,砍掉外部 diffusion,让训练/部署完全复用已高度优化的语言建模 pipeline。它继承自 liquid-unified 之外的 NVIDIA VILA 系列,是 2024 下半年「纯自回归统一基座」方向的代表作,与 chameleon、emu3、show-o、janus 同处一条技术脉络。
模型架构
三大件:统一视觉塔 + LLM backbone + depth transformer。
统一基础视觉塔(Unified Foundation Vision Tower)——核心创新
- vision encoder:用 SigLIP 初始化——256 分辨率版用 SigLIP-Large-patch16-256,384 分辨率版用 SigLIP-SO400M-patch14-384。
- residual quantizer(RQ):沿用 RQ-VAE 的残差向量量化。对一个特征向量 z 不止给 1 个 code,而是递归地用 D 个深度的 code 去逐层逼近残差(每层选一个 code 把量化误差 r_{d-1} 减小),量化向量是各深度 codebook embedding 之和。这样在「扩大特征容量」与「控制 LLM 要预测的 token 数」之间取平衡。codebook size = 16384。
- 256 版:每图编码成 16×16×4 的 code(空间 16×16,残差深度 D=4)。
- 384 版:每图编码成 27×27×16 的 code(残差深度 D=16)。
- vision decoder:架构取自 RQ-VAE,可直接把离散 token 解码回像素——这是它区别于路线 B(CLIP 量化)的关键,不需外接 diffusion。
- text encoder:CLIP/SigLIP 的文本塔,预训练后冻结,只用于提供对比学习的文本特征。
视觉塔训练时双路:离散视觉特征一路进 decoder 算重建 loss,一路与文本特征算 image-text contrastive loss,两个 loss **加权和(w_contra=1, w_recon=1)**联合更新。
LLM backbone:LLaMA-2-7B。
多模态序列拼接:vision encoder 把视觉输入展成 1D token 序列,与文本 token 拼成多模态序列;用特殊 token 划界——<image_start>/<image_end>、<video_start>/<video_end>;视频 token 就是多帧图像 token 的直接拼接。
depth transformer:因残差量化在每个视觉位置 j 有 D 层堆叠的 code,LLM 只产出该位置的 code embedding h_j,再由一个 depth transformer 以 h_j 为初始输入自回归地依次产出 D 个残差 token(depth d 的输入是前 d-1 层 code embedding 之和)。这样 LLM 序列长度只按空间位置算、不被 D 撑爆,残差展开的延迟很小。depth transformer 权重在多模态预训练中随机初始化、与 LLM 一起更新。
分辨率策略:两档——256×256(D=4)/ 384×384(D=16)。生成用 classifier-free guidance,CFG=3。
数据
按「视觉塔预训练」「多模态生成式预训练」「SFT」三段分别配数据,全部规模都远小于 diffusion 同行(diffusion baseline 多在 20 亿图量级):
视觉塔预训练:在 COYO-700M 上训练,ImageNet 上评 zero-shot 分类与重建 rFID。
多模态生成式预训练:
- 理解侧:ShareGPT4V 的 1M [image, text] 数据 + MMC4 的 6M 交错图文 数据(交错形式只对文本加监督损失以增强理解)。
- 生成侧:15M 高质量 [text, image]——来自团队内部数据集(curated internal dataset),论文未披露其具体来源/清洗细节;+ OpenVid 的 1M [text, video]。
- 数据拼接形式:用
[image, text]、[text, image]、[text, video]三种,监督损失只加在 pair 中后一个模态上(避免无条件生成、促进模态对齐);交错图文形式只监督文本。出于效率预训练阶段不用[video, text]形式,而是把视频理解能力放到 SFT 阶段补(被证明同样能拿到优秀视频理解)。
安全/美学过滤:论文未披露专门的美学评分或安全过滤流程;只强调生成数据是”高质量”内部数据。
训练方法
统一目标 = next-token prediction,文本与视觉 token 都离散,因此都能用语言建模的 NLL loss;唯一差别是视觉 token 因残差量化要走 depth transformer:
- 文本 token:标准 NLL。
- 视觉 token:在每个视觉位置对 D 个残差 code 做 NLL(depth transformer 给出 P(k_{jd} | k_{j,<d}))。
视觉塔的「先对齐后重建」训练配方(关键 trick):从零同时学 contrastive + reconstruction 会因「高层语义 vs 低层外观」目标冲突而崩——作者实测从头训只有 5% ImageNet top-1。解决方案:
- 用预训练 CLIP 权重初始化 vision encoder 和 text encoder(先天具备文本对齐);
- 冻结 text encoder,其余视觉组件全可训,同时上 contrastive + reconstruction loss——contrastive 维持对齐、reconstruction 长出重建能力。
- 这套配方收敛快、效果好。附录 C 列了 4 个失败配方:只往 text encoder 灌 CLIP 权重 / 只灌 RQ-VAE 权重 / 冻结 vision encoder / 放开 text encoder——分别因「vision encoder 没 CLIP 先验、从头训 CLIP 要超大 batch(如 32k)而 VQ 重建只能用小 batch(如 512)」「冻结 encoder 学不到低层特征、重建全压给 decoder 不可行」「初期量化特征混乱、contrastive 会破坏 text encoder 权重」而失败。
- 这条配方让模型能用小 batch(512)同时保持 vision encoder 可训,是低成本拿到「语义+重建」双能力的核心。
多模态训练流程:Pretrain → SFT 两阶段(README 中训练脚本即 pretrain.sh + sft.sh,各跑 8 节点)。视频理解能力在 SFT 阶段引入 [video, text] 数据补齐。
未用的方法:论文没有 RLHF / DPO / reward model 等偏好对齐;没有 consistency/LCM/ADD 等步数蒸馏(自回归路线本身无 diffusion 采样步概念);加速依赖 residual quantization 控 token 数 + depth transformer。
Infra(训练 / 推理工程)
- 并行/算力:README 训练脚本用 Slurm,pretrain 与 sft 均申请 8 节点 × 8 GPU/节点(共 64 GPU)、4 小时时限的作业;论文正文未披露总 GPU-hours、并行策略细节、混合精度配置。
- 视觉塔 batch:VQ 重建段用小 global batch(约 512)(对比从零训 CLIP 需 ~32k),这是「先对齐后重建」配方得以省算力的工程前提。
- 统一栈优势:全程 next-token,可直接复用语言建模已优化的训练/部署系统,避免为 diffusion 另起一套基础设施(这是论文反复强调的工程动机)。
- 推理:CFG=3 生成;residual quantization + depth transformer 把「每空间位置 D 个 code」压成短序列控延迟。具体吞吐/量化部署数字未披露。提供 Gradio demo(vila-u.hanlab.ai)与 CLI。
评测 benchmark(把效果讲清楚)
视觉塔(ImageNet,Table 1):
- 256 版(SigLIP-Large,16×16×4):rFID 1.80,zero-shot top-1 73.3%。
- 384 版(SigLIP-SO400M,27×27×16):rFID 1.25,zero-shot top-1 78.0%。
- 对比:VQ-GAN rFID 4.98;RQ-VAE(16×16×4)rFID 1.30。即 VILA-U 重建显著优于 VQ-GAN,略逊于同 code shape 的纯 RQ-VAE(因加了 contrastive 牺牲一点重建),但换来强文本对齐。
图像理解(Table 2,LLaMA-2-7B,离散 token):
| VQAv2 | GQA | TextVQA | POPE | MME | SEED | MM-Vet | |
|---|---|---|---|---|---|---|---|
| Ours 256 | 75.3* | 58.3* | 48.3 | 83.9 | 1336.2 | 56.3 | 27.7 |
| Ours 384 | 79.4* | 60.8* | 60.8 | 85.8 | 1401.8 | 59.0 | 33.5 |
| 参考 LLaVA-1.5 | 78.5* | 62.0* | 58.2 | 85.9 | 1510.7 | 58.6 | 30.5 |
| 参考 VILA | 79.9* | 62.3* | 64.4 | 85.5 | 1533.0 | 61.1 | 34.9 |
| 同为离散的 Show-o | 59.3* | 48.7* | – | 73.8 | 948.4 | – | 9.6 |
→ VILA-U 384 把离散 token VLM 与连续 token 主流 VLM 的理解差距大幅收窄,POPE 85.8 已与 LLaVA-1.5 持平,VQAv2 79.4 逼近 VILA,并把同为离散的 Show-o(MME 948、MM-Vet 9.6)远远甩开。(* 表示该数据集训练 split 在 VLM 训练中见过。)
视频理解(Table 3):Ours 384 — MSVD-QA 75.3 / MSRVTT-QA 60.0 / TGIF-QA 51.9 / ActivityNet-QA 52.7,超过同为离散的 SEED-LLaMA、LWM,接近 Video-LLaVA 等连续 token SOTA。
图像生成(MJHQ-30K FID,Table 4):
- Ours 256:FID 12.81(15M 图);Ours 384:FID 7.69(15M 图)。
- 自回归同行:LWM 17.77、Show-o 15.18(36M 图)——VILA-U 全面更优。
- diffusion 对比:SD-2.1 26.96、SD-XL 9.55(20 亿图)、PixArt 6.14、Playground-v2.5 4.48——VILA-U 384 用少两个数量级的数据就比肩 SD-XL、超过 SD-2.1。
GenAI-Bench(VQAScore,Table 5):
- basic prompts overall:Ours 256 0.76 / 384 0.73;超过 LWM 0.63、Show-o 0.70,接近 SD-XL 0.83。
- advanced prompts overall:Ours 256 0.64 / 384 0.61;同样优于自回归同行,与 diffusion 的差距收窄(DALL-E 3 0.70、SD-XL 0.63)。
视频生成(VBench,Table 6):Ours 256 — Total 74.01 / Quality 76.26 / Semantic 65.04;优于 CogVideo(67.01),与 Open-Sora(75.91)相当,落后 cogvideox(81.61)。
关键消融:
- contrastive loss 对理解(Table 7):同 25M 数据,纯重建 vs 重建+对比——VQAv2 57.7→68.0、MME 937.7→1219、MM-Vet 15.3→20.8,文本对齐是理解强的关键;再把视觉塔数据 25M→700M,VQAv2 升到 75.3、top-1 升到 73.3,说明大规模学对齐还能继续涨。
- contrastive loss 对生成(Table 8,为省算力此消融用 Sheared-LLaMA-1.3B 且只跑 t2i 预训练,故绝对 FID 与正文 12.81 不同源):用统一塔(rFID 1.80)vs 纯 RQ-VAE(rFID 1.30),MJHQ-30K FID 13.2 vs 12.0——加对比使重建略降、生成 FID 略升,是「语义/重建」trade-off 的代价。
- CFG(Table 9):FID 在 CFG=1/2/3/5 为 14.1/13.0/12.8/13.2,CFG=3 最优。
创新点与影响
核心贡献:
- 统一基础视觉塔:首次把「CLIP 式文本对齐(contrastive)」与「VQGAN 式可解码重建(VQ)」装进同一个视觉 tokenizer,并配「先对齐后重建 + CLIP 初始化 + 冻结文本塔」的训练配方解决两目标冲突——这是 VILA-U 让端到端自回归 VLM 理解不掉点的根本。
- 残差量化 + depth transformer:扩大离散视觉特征容量的同时把 LLM 序列长度控在每空间位置 1 个、延迟可控。
- 纯自回归统一基座:理解+图像+视频生成全程 next-token,砍掉外部 diffusion,复用语言建模基础设施;并实证「高质量小数据下自回归生成可逼近 diffusion」(15M 图比肩 SD-XL)。
影响:作为 2024 下半年「无 diffusion 纯自回归统一基座」的代表(与 chameleon/emu3/show-o/janus 同列),它最有说服力地证明了「统一离散视觉 tokenizer」既能保住理解、又能直接生成,为后续统一多模态指出了「把语义对齐前置进 tokenizer 训练」这条具体可行的路径。ICLR 2025 接收。
已知局限(作者自述):
- contrastive loss 损害视觉塔重建能力,「语义 vs 重建」如何在统一塔内平衡仍是开放难题。
- 理解与生成之间未观察到显著的协同/互相增强——统一只是”装进一个框架”,尚未让两任务互相促进,作者将其列为未来方向。
- 生成绝对质量仍逊于在十亿级数据上训练的顶级 diffusion(GenAI-Bench advanced 仍落后 DALL-E 3)。
原始链接
- arxiv_abs: https://arxiv.org/abs/2409.04429
- arxiv_pdf: https://arxiv.org/pdf/2409.04429
- github: https://github.com/mit-han-lab/vila-u
- project: https://hanlab.mit.edu/projects/vila-u
- hf_collection: https://huggingface.co/collections/mit-han-lab/vila-u-7b-6716f7dd5331e4bdf944ffa6
- hf_model: https://huggingface.co/mit-han-lab/vila-u-7b-256
- demo: https://vila-u.hanlab.ai
一手源存档(sources/)
- arxiv-2409.04429.pdf (arXiv 原文 PDF,不入 git)
- arxiv-2409.04429.txt
- readme.md
- hf-modelcard.md