多模态大模型主流架构介绍:从 LLaVA 到 Qwen3
多模态模型这三年的进化,其实就看懂这一步
2023年初,我兴致勃勃搞多模态大模型,心想:不就是把图片特征塞给语言模型嘛,这还不简单?
结果呢?我拿一张高分辨率海报,问它“左上角是什么”,它给我编了一段画面里根本没有的东西。“一只猫坐在屋顶上”——海报上明明是只狗。
我当时气得差点把显卡砸了。
后来才搞明白:让语言模型真正“看”清图像,而不是“瞟”一眼,里面的水比马里亚纳海沟还深。
你以为多模态这三年在折腾什么?
就一件事——怎么让语言模型真正看懂图像细节。
不是“大概”,不是“可能”,是能精确到像素级。
说到这儿,我把自己踩过的坑、花过的电费、烧过的显卡,全抖出来。从最基础的骨架讲到LLaVA和Qwen3-VL这两条不同的路,你看了应该能少走几个月的弯路。
先记住:所有多模态大模型,拆开就三块
别被那些花哨名字骗了。什么MLLM、视觉大模型、图文理解……扒了皮,核心就三块:
1. 视觉编码器——把图像变成特征序列。早期全是CLIP ViT-L/14,现在SigLIP、InternViT抢地盘,热闹得很。
2. 连接器——把视觉特征“翻译”成语言模型能读懂的embedding。一块MLP、一套Q-Former、一堆交叉注意力层……都行,但差别大了。
3. 大语言模型——负责融合信息并生成文本。
这三块的连接方式,直接决定你的模型能打多少分、钱包能不能扛得住。
反直觉的来了:我踩的第一个坑,是过度关注LLM选型,忽略了连接器。
2023年我在一个OCR项目里,用了两层MLP接LLaMA-7B,结果字体稍微模糊一点就完全认不出。当时我以为是LLM不够强,换更大的模型——没用。后来换成LLaVA-1.5的两层MLP(加了GELU激活),效果好了一大截!我才恍然大悟:连接器不是简单的搬运工,它决定了视觉信息失真多少。
所以你要是做多模态,别只盯着LLM吹牛,先看看连接器有没有拖后腿。
LLaVA路线:简单到令人发指,凭什么赢?
LLaVA 1.0的结构简单到让人怀疑人生——CLIP ViT-L/14 + 单层线性投影 + Vicuna(基于LLaMA微调)。
连非线性激活都不用!我第一反应:这也能叫创新?骗经费的吧?
但人家就是work了,而且非常work。
秘密在哪?不是结构,是数据。
LLaVA用GPT-4生成了15.8万条图文指令数据做微调,模型就像开了天眼,学会了看图对话。你看,这条路给行业指了个明路:你不需要把视觉编码器和LLM搞得复杂,只要对齐得够好、数据够多够准,效果就能上去。
到LLaVA-1.5,连接器升级成两层MLP,效果已经能跟大厂模型掰手腕了。
然后我遇到了最大的坑:分辨率。
标准ViT训练用的分辨率是224×224或336×336。你把一张高清海报直接resize到224,细节全丢!OCR基本报废。
LLaVA NeXT(LLaVA-1.6)想了个办法叫AnyRes:把高清图切成若干小块,每块缩放到ViT能吃的分辨率单独过一遍,再加一张低分辨率全局图,最后全拼在一起送给模型。
理想很丰满,现实很骨感。
我头一次跑AnyRes,一张1080p图片切成4块(每块缩放至336),加上全局图,一共得到5×576=2880个token。数字看着还行?但如果你切9块,计算量直接翻倍,显存爆炸。而且这些token全部塞进LLM输入层,长上下文导致的注意力和KV Cache开销,让我的4090当场哭出声。
LLaVA的解决办法是“先压缩再输入”——把高分辨率特征通过插值压缩到更少的token数。但本质上,还是一次性全灌给LLM的老路子。
LLaVA的贡献在于证明了:输入端优化+高质量数据,可以让一个极简架构杀到第一梯队。但它没有解决的核心矛盾是:要看得细,就必须喂更多token,而LLM的注意力复杂度是O(n²)的。这个问题需要另一条路来破。
Qwen3-VL来了:终于有人不对输入层死磕了
LLaVA一路靠数据堆高的时候,Qwen-VL系列走了另一条路。
2024年的Qwen-VL系列开始在动态分辨率上投入,2025年的Qwen3-VL更是把架构创新推到了极致。
我第一次读Qwen3-VL技术报告时,心里喊了一句:“终于有人想明白了!”
它的核心思想:别把高分辨率特征一次性全塞到输入层,而是分散注入到LLM的不同层。
具体怎么干?
- 先用低分辨率图(336×336)过ViT,得到全局视觉token,送进LLM输入层。
- 高分辨率图提取的精细特征,不送输入层,而是**以相同token数直接注入LLM的中间层**。每隔几层注入一次,三四层就够了。
这个设计的好处很明显:你不需要为了分辨率更高而增加输入token数。精细特征走侧路,占用的计算只发生在注入层,整个LLM不会跟着膨胀。
我拿Qwen3-VL-32B测试了一个很难的OCR场景——一幅海报上的细体灰色字,字号小到LLaVA-1.6完全识别错。Qwen3-VL不仅读对了,还给出了海报背景区域的上下文描述。最关键的是,推理速度比用AnyRes切9块的LLaVA快了将近一倍!
这就是架构创新的魔力。
除了这个分层注入,Qwen3-VL还有两个改动让我印象很深:
MoE(混合专家)。LLM部分是Mixture-of-Experts的,视觉token走视觉专家,文本token走语言专家,跨模态交互走共享专家。这不止节省参数(总参数量固定,推理只激活部分专家),还能让专精的部分做得更深。
MRoPE(多维旋转位置编码)。传统RoPE只给文本token加位置编码,Qwen3-VL沿用了Qwen2-VL开始的MRoPE,把它扩展到了时空维度:图像里每个patch不仅在序列里有个位置,还能保留在原始图片中的坐标关系。MRoPE把行、列、甚至文本位置都编码进来,让LLM在注意力计算时天然理解视觉元素的空间关系。
我最震撼的一个效果:让模型回答“这张图的左上角是什么动物,右下角是什么颜色”。用LLaVA-1.5遇到这种需要精确空间坐标和视觉指代的问题,十次能错三次。而Qwen3-VL几乎次次都对,因为它从底层设计上就把空间信息嵌进了表征里。
两条路到底谁更牛?
坦率说,这问题没有绝对答案。我自己试下来:
如果项目对部署成本和实时性敏感,且任务主要是“看图说话”这种粗粒度场景,LLaVA的极简架构加上高质量微调数据依然能打。它连接器轻、改造成本低,你甚至可以直接拿它当基座做下游任务的视觉指令微调。
但如果场景是高分辨率文档理解、精准GUI导航、长视频问答,Qwen3-VL的架构优势非常明显。它不是拼命塞token,而是改造了整个信息流——既保留全局语义,又通过内部注入保留精细细节,同时计算量可控。
我半年前在一个表格理解项目里同时测试了LLaVA-1.6和Qwen3-VL(当时还是早期版本)。同样的分辨率处理策略,LLaVA因为要等整个高分辨率token序列算完注意力,单卡A100 80G上batch size只能开到4,而Qwen3-VL因为是内部注入,batch能干到12。线上部署时这就是实打实的成本差距。
另一个角度是迭代方向的分野。
LLaVA阵营走的是“输入端降维打击”——升分辨率、提数据质量、强化图层面理解。他们相信,只要给LLM足够多的像素和足够好的对齐,它能自己消化。
Qwen3-VL阵营走的是“信息流重构”——通过DeepStack分层注入细节,用MoE让专家各司其职,加上MRoPE在注意力层原生融入空间语义。他们相信,多模态不能靠后期拼接,而应该在架构内部实现深度融合。
两种路线在2025年已经殊途同归。LLaVA-OneVision学到了分层注入的一些思路,Qwen系列也开始在数据质量上疯狂发力。最终决定胜负的,不是谁更炫,而是谁能在更小的计算开销下提供更准的视觉理解。
下一步的预感
从我这三年多的经验看,未来的方向已经比较清楚:
第一,从“拼接式”往“原生统一”过渡。 现在的MLLM基本还是视觉编码器出token、对齐、拼到LLM前面。未来一定是视觉和语言在底层就共享表征,而不是各搞各的再硬拉在一起。
第二,动态分辨率将成为标配。 别管什么224还是336,未来的模型应该能处理任意分辨率,且计算量不随分辨率爆炸。Qwen3-VL的注入思路已经证明了这条路走得通。
第三,数据质量依然是王炸。 结构再强,没有好的数据训练,模型也是“睁眼瞎”。LLaVA靠数据杀出一条路,未来谁能打造出更高质量的图文指令数据,谁就能占据优势。
第四,推理效率的竞赛才刚刚开始。 谁能在更少的token、更低的算力下给出更准的结果,谁就会在真实场景中胜出。别只顾着吹参数,看看你的模型跑一次推理需要多久、多少钱。
最后一句掏心窝的话:
多模态这场仗,比的不是谁更炫,而是谁用更小的算力给出更准的理解。
你想想,这几年折腾来折腾去,不就是为了让模型真正“看”清图像,而不是“瞟”一眼吗?
最好的模型,不是参数最多的那个,
读者评论 5