真实面经题目 · 原创解析

Qwen-VL 如何压缩图片 token,多模态大模型中图像 token 和文本 token 的处理链路有什么差异?

这道题考察多模态大模型里视觉 token 的压缩和图文 token 进入 LLM 前的差异。回答要说清图片先变成连续视觉特征再压缩投影,文本则经过离散 tokenizer 直接得到词向量,两者在融合前的链路不同。

出现于:京东 · 算法

60 秒回答模板

我会先区分两类 token。文本 token 是 tokenizer 把字符串切成离散 id,再查 embedding;图片没有天然词表,需要先切 patch 或用视觉编码器提取 grid feature,得到大量连续视觉特征。Qwen-VL 这类模型通常不会把所有 patch 原样塞进语言模型,而是通过视觉抽象器、Resampler、查询池化或网格合并一类模块,把高分辨率视觉特征压缩成较短的 visual token 序列,再投影到 LLM hidden size。之后这些 visual token 会放到提示词中图片占位符对应的位置,和文本 token 一起被语言模型处理。差异在于:图片 token 更长、更连续、带二维空间结构,需要视觉编码、压缩和投影;文本 token 来自离散词表,顺序位置更直接。图文不是简单谁先理解完,而是各自预处理后在统一序列或跨注意力里融合。压缩的取舍是上下文长度、细节保留和计算成本之间的平衡。

考点 视觉 token
难度 真实面经题
回答目标 讲清原理、实现和边界

深入解析

01

先区分 token 来源

文本 token 来自离散词表,tokenizer 把字符串切成子词或字节片段,再查表得到 embedding。图片 token 没有天然词表,通常要先把图像切成 patch 或 grid,经视觉编码器得到连续向量。两类 token 的生成方式不同,不能把图片理解成“像文字一样分词”。

02

图片先经过视觉编码

图像进入模型后会被 resize、patchify 或按动态分辨率切分,再由 ViT/视觉编码器抽取空间网格特征。原始 patch 数可能很大,尤其高分辨率图片会快速占满上下文长度,所以视觉特征进入语言模型前通常需要压缩。

03

用视觉抽象器压缩 token

Qwen-VL 相关回答可以抓住 Resampler 或视觉抽象器这个核心:用固定数量的可学习 query、池化、合并或跨注意力,把大量 patch/grid feature 汇聚成更少的 visual tokens,并投影到语言模型的 hidden size。压缩不是随意丢弃,而是在保留主要语义和空间线索的同时控制序列长度。

04

文本链路更直接

文本侧通常是 tokenizer、token id、embedding、position encoding,再进入 LLM。它不需要视觉编码器和图像 token 压缩模块,但会受词表切分、上下文长度和 prompt 结构影响。文本 token 的位置是一维序列位置,图片 token 则要尽量保留二维空间来源。

05

融合发生在统一语义空间

多模态输入通常会在 prompt 中放图片占位符,预处理阶段把占位符替换或绑定为压缩后的 visual tokens,再和文本 token 一起进入语言模型,或通过跨注意力参与解码。实际不是“先完全处理图片再处理文本”这么简单,而是图像和文本先各自编码,再在统一隐藏维度里交互。

06

压缩带来效果取舍

视觉 token 越少,计算和上下文压力越小,但细粒度文字、小物体、空间关系可能损失;视觉 token 越多,细节更充分但成本更高。面试回答要补充任务相关取舍:文档 OCR、细粒度定位和复杂图表需要更多视觉细节,普通图像描述可以更强压缩。

易错点

  • 把图片 token 说成普通 BPE 分词结果,混淆图像 patch 特征和文本 token id。
  • 只背 Qwen-VL 名字,不解释视觉编码、压缩、投影和占位符融合链路。
  • 认为压缩只是为了省显存,不讨论上下文长度、细节保留和任务效果取舍。
  • 回答成完整 Qwen-VL 教程,偏离图片 token 压缩和图文 token 差异这个主轴。

面试官追问

为什么不能把所有图像 patch 都送进 LLM?

patch 数会随分辨率快速增加,直接送入会占用大量上下文和算力。压缩能把视觉信息变成更短的序列,让 LLM 有空间处理文本和多轮上下文。

视觉 token 压缩会损失什么?

可能损失小文字、小目标、精确空间关系和局部细节。任务越依赖细粒度视觉信息,压缩比例就越需要谨慎。

图片和文本 token 是谁先处理?

更准确的说法是两边先各自预处理:图片走视觉编码和压缩,文本走 tokenizer 和 embedding。融合通常发生在投影到统一隐藏维度之后。

visual token 和 text token 的最大差异是什么?

visual token 是从连续像素和二维空间特征抽取得到的向量,text token 是离散词表 id 的 embedding。前者需要视觉编码、压缩和空间信息保留,后者更直接按语言序列处理。