先这样答
多模态大模型「看见」图片,靠的是视觉编码器加语言模型的组合:图片先被切成许多小块,每块编码成一个向量,这串向量和你的文字一起拼成序列,送进语言模型统一处理。模型自始至终没有接触像素,它读到的是一串携带图像信息的向量。
具体流程可以拆成三段。视觉编码器(常见的实现是视觉 Transformer)把图片按固定大小切块,把每块的像素压缩成一个向量,一个块对应一个「视觉 Token」,分辨率越高块就越多。连接层负责把这些视觉向量投影到语言模型的词嵌入空间里,让两种来源的信息处在同一套表示下。之后注意力机制平等对待整条序列,模型引用图片内容的方式,和引用前文文字没有本质区别。
最后可以给面试官一句总结:模型不是「看」图,而是读图编码后的向量。图像理解的上限由编码器和切块粒度决定,语言能力由语言模型决定,这句话把架构责任的边界也讲清楚了。
面试官会怎么追问
- 「视觉编码器为什么要把图切块?」 Transformer 天然处理序列,切块之后图片就变成了一条变长序列,方便和文本拼接。切块粒度同时决定细节上限和计算量:块越小细节保留越多,Token 也越多,是精度和成本之间的直接开关。
- 「视觉向量和文字 Token 有什么区别?」 对语言模型来说都是序列里的向量,区别在来源和投影方式。连接层负责把视觉向量翻译到文字嵌入的空间里,这一层训练不好,模型就会「看得见图、答不对题」。
- 「为什么不把像素直接喂进去?」 一张图的像素数量远超上下文长度,而且原始像素没有语义结构。编码器的作用就是把局部像素压缩成语义向量,让信息密度和语言模型的处理方式匹配。
回答的坑
- 说成「模型像人一样看图」。它处理的是向量序列,没有任何类似视觉皮层的机制,「看见」只是工程上的习惯说法。
- 只讲编码器和语言模型,漏掉中间的连接层。没有这一层的投影对齐,两边向量不在一个空间,整个机制链条就断了。
同系列的题
—— 本题完 ——