Multimodal · 面试核心

多模态大模型架构(VLM)

「让 LLM 看懂图」的工程范式已经高度收敛:视觉编码器 + 投影器 + 语言模型。面试官常问:图怎么变成 token?不同 VLM 的区别在哪?为什么训练要分两阶段?

01统一范式:ViT + Projector + LLM

几乎所有视觉语言模型(VLM)都遵循同一骨架——把图像编码成一串「视觉 token」,拼到文本 token 后面,交给一个普通 LLM 做自回归生成:

Vision EncoderViT → 图块 token Projector对齐到文本空间 LLM自回归生成 文本回答 图片切块 → 每块一个 token;Projector 把视觉 token 映射到 LLM 的词嵌入空间,使图文可拼在一起算注意力。

02三大组件详解

① 视觉编码器

通常是预训练好的 ViT(如 CLIP / SigLIP 的 image tower),把图切成 patch 序列,输出视觉特征。一般冻结以省算力。

② 投影器 (Projector)

把视觉特征维度对齐到 LLM 词嵌入维度。最简单的 MLP;复杂的有 Q-Former、Resampler(用可学习 query 压缩成固定数 token)。

③ 语言模型

复用现成 LLM(Qwen / LLaMA / ChatGLM)。接收「视觉 token + 文本 token」混合序列,统一做因果注意力。

03CLIP:图文对齐的基石

CLIP 用「对比学习」把图像和文本塞进同一向量空间:同一对 (图, 描述) 的相似度拉高,不同对拉低。训练好之后:

  • 图像编码器可作为 VLM 的视觉 backbone;
  • 文本编码器可为生成模型(Diffusion)提供条件;
  • 「图像 token」与「文字 token」天然处于可对齐的空间。
一句话:CLIP 解决「图怎么和文字说话」的问题,是后续所有 VLM / 文生图的对齐基础。

04代表架构对比

BLIP-2 / Q-Former

用 Q-Former(一组可学习 query)从 ViT 抽取固定数量视觉 token,再喂 LLM。轻量、视觉 token 少。

LLaVA

ViT + 一个线性/MLP Projector + LLM,结构极简。视觉 token 数 = patch 数(较密)。开源社区事实标准。

Qwen-VL

ViT + 交叉注意力 Resampler 压缩视觉 token,支持高分辨率与多图、 grounding(框选定位)。

区别主要在两点:投影器形态(MLP 简单但 token 多 / Q-Former 压缩但多训一层)与视觉 token 数量(影响 LLM 上下文长度与成本)。

05训练两阶段

阶段1 对齐预训练冻 LLM,只训 Projector 阶段2 指令微调解冻 LLM,多模态对话 能力涌现看图问答/推理
  1. 对齐预训练:用海量「图-文对」训练 Projector,让视觉 token 学会「说 LLM 的语言」,此时 LLM 常冻结以保住语言能力。
  2. 多模态指令微调:用图文对话数据(含 reasoning、OCR、 grounding)解冻 LLM 一起训,让模型真正能「基于图对话」。

06VLM 与纯 LLM 的差异

输入变长

一张图动辄几百个视觉 token,极大的上下文与 KV Cache 压力(呼应《推理部署》)。

分辨率权衡

切得越细看越清,但 token 越多越贵;动态分辨率/分块是常见解法。

幻觉更顽固

VLM 易「看见不存在的物体」,因视觉特征与文本生成弱耦合。

评测更杂

除对话外还有 OCR、定位、图表理解、视频时序等多维能力。

07面试速记卡

统一骨架

ViT 编码 → Projector 对齐 → LLM 生成;视觉 token 拼到文本序列后。

CLIP 角色

对比学习对齐图文空间,是 VLM 与文生图的共同底座。

架构差异

主要是投影器(MLP vs Q-Former vs Resampler)与视觉 token 数。

两阶段训练

先对齐 Projector(冻 LLM),再微调(解冻 LLM)做对话。

延伸:图如何被切成 token 的细节见《多模态大模型如何识别图片》;音频/视频模态同理可套此范式。