纯文本模型只能读文字。多模态模型(Multimodal Model)多了一件事:它还能"看"图片、"听"语音、"看"视频。GPT-4o、Gemini、Claude、豆包,今天叫得出名字的大模型,几乎都是多模态的。
但"能看图"这三个字背后,藏着一套统一而精巧的机制。理解了它,你就能回答一连串看似无关的问题:Claude 到底是怎么读懂截图的?它能直接听语音吗?视频又是怎么"看"的?这些能力是训练时学的,还是用的时候临时拼的?
一切输入,最终都变成同一种东西:Token
先记住一个统一原理,它是整篇文章的地基。
文字进入模型前,会被切成一串 token(词元)。多模态模型做的事情,本质上是把图片、语音、视频也切成 token,然后和文字 token 拼在一起,喂给同一个模型。

所以模型并不真的"看见"图片,也不真的"听见"声音。它看到的永远是一串向量化的 token。不同模态的差别,只在于"怎么把原始信号转成 token"这一步。一旦转成了 token,后面统一交给同一个 Transformer 处理。
这个视角能解释很多现象。比如图片会消耗 token 预算——图越大、分辨率越高,占用的视觉 token 越多,又慢又贵。也能解释视觉幻觉:如果关键细节(小字、小图标)没被编码进视觉 token,模型就只能靠语言知识"脑补"。
VLM 看懂一张图的三步
专门处理"图 + 文"的多模态模型,叫 VLM(Vision-Language Model,视觉语言模型)。几乎所有主流 VLM 都是同一个三段式结构,理解了它就理解了一大半。

第一步,视觉编码器(眼睛)。 把图片切成很多小块(patch,比如 14×14 像素一块),每块当成一个"视觉 token",再用神经网络编码成特征向量。最常用的结构是 ViT(Vision Transformer),常见编码器有 CLIP、SigLIP。它输出的不是人类语言,而是一堆向量。
第二步,对齐模块(翻译官)。 视觉编码器输出的向量,LLM 并不认识,需要一个模块把它翻译成 LLM 能接收的格式。最简单的做法是几层全连接(MLP Projector,LLaVA 用这个),也有更复杂的 Q-Former(BLIP-2)、Cross-Attention(Flamingo)。
第三步,大语言模型(大脑)。 把翻译好的"视觉 token"和你输入的"文字 token"拼在一起,统一推理,输出答案。
所以一句话:VLM ≈ 视觉编码器 + 对齐模块 + LLM。你上传一张截图问问题,走的就是这条链路。
不同模态对齐的秘密:共享语义空间
这里有个更深的问题:凭什么"视觉 token"和"文字 token"能放在一起被理解?一张猫的图片和"a photo of a cat"这串文字,长得毫无关系,模型怎么知道它们说的是同一件事?
答案是共享语义空间,而训练它的经典方法叫对比学习(Contrastive Learning),代表作就是 CLIP。

做法很直白:拿海量"图-文配对"数据,让模型把图片和文字都映射到同一个向量空间里。训练目标是——匹配的图文对(猫的图 ↔ "a cat")在空间里距离拉近,不匹配的(狗的图 ↔ "a car")距离推远。
训练完成后,语义相近的图和字就落在空间里相近的位置。这就是多模态的"地基工程":不是教模型"看图",而是先建立一个图和字能对话的共同语言。后续所有 VLM 能力,都建立在这个对齐之上。
能力从哪来:训练时学进去,还是推理时拼起来
这是最容易混淆、却最值得搞清的一点。一个模型要"懂"某种模态,必须同时满足两个条件:训练时见过这种 token(学会理解它),以及推理时有办法把原始信号转成这种 token。
> 训练时(Training Time):模型发布之前,在 GPU 集群上"读书",不断调整参数。结束后能力就冻结进权重了。
> 推理时(Inference Time):模型训练完、你正在使用它、它给你回复的那一刻。此时权重不再改变,只是调用已学好的能力。
如果训练时真喂过这种模态,叫原生(native);如果训练时没学过,只靠推理时临时调外部工具转成文字再喂进去,叫管线(pipeline)。同一个模型,对不同模态可能落在不同位置。

图片:原生,训练时学的。 这是真正写进权重的能力。推理时只是机械地把图转成 token,不需要外部 OCR 工具,模型自己就能读字、看图、推理。
语音:要看模型。 Claude 本身不直接吃音频——它内部没有"音频 token"。要让 Claude 处理语音,标准做法是推理时先用外部 ASR(如 Whisper)把语音转成文字,再喂给 Claude。这是管线式,语音不是它训练时学的模态。而豆包、GPT-4o 走的是另一条路:训练时真喂了音频数据,模型内部有"音频 token",语音直接进模型,这叫端到端原生。区别很实在——原生语音能听出语气、情绪,能边听边说、被打断;管线式把语音转成文字时,语气信息就丢了。
视频:几乎都是抽帧。 绝大多数模型并不逐帧连续地"看"视频,而是推理时每隔几秒抽一帧,把视频变成一堆静态图片,再复用图像能力处理;音轨另走 ASR 转字幕。所以很多"视频理解"其实是"看了几十张截图 + 读了字幕"。这也带来一个隐患:抽帧间隔会漏信息,两帧之间一闪而过的快速动作可能被错过。
把这三者放一起看:
| 模态 | 怎么处理 | 能力来源 | 是否原生 |
|---|---|---|---|
| 图片 | 直接看图 | 训练时学进模型 | 原生 |
| 语音(Claude) | 外部 ASR 转文字 | 推理时工具拼接 | 管线 |
| 语音(豆包/GPT-4o) | 音频直接进模型 | 训练时学进模型 | 原生 |
| 视频 | 抽帧成图 + 音轨 ASR | 训练时(图像)+ 推理时(抽帧/ASR) | 半原生 |
两座输入桥梁:ASR 和 OCR
上面反复出现 ASR 和 OCR。它们都是"把非文字信号转成文字",但一个处理声音,一个处理图像,是多模态系统在输入端最常用的两座桥。
ASR(自动语音识别) 把声音转文字。难点是把一段连续、带噪、时长不定的音频,对齐成离散的文字。现代 ASR 走端到端神经网络(编码器多用 Conformer),代表模型有 Whisper(开源标杆)、Paraformer(中文很强,在 FunASR 框架里)。核心指标是 WER / CER(词 / 字错误率)。
OCR(光学字符识别) 把图里的字转文字。现代 OCR 通常拆成两步:先文本检测框出文字区域(DBNet),再文本识别认出框里的字(CRNN)。最流行的开源框架是 PaddleOCR。一个有意思的共性:OCR 的识别阶段和 ASR 一样常用 CTC,因为两者本质都是"变长序列对齐"问题。
值得注意的趋势是:VLM 正在把 OCR 升级成"边读边懂"。传统 OCR 只输出文字、不理解含义;而你把图丢给 VLM,它直接读出文字还能回答关于内容的问题。代价是更慢更贵,对超小字、超长文档不如专用 OCR 稳。
别忽略另一半:多模态不只是"看懂",还能"生成"
到这里讲的都是理解——把图/声/视频转成文字。但多模态还有对称的另一半:生成——把文字转成图/声/视频。一个完整的多模态认知,两个方向都要有。

理解侧(输入):图、声、视频 → 模型 → 文字。靠的是视觉编码器、ASR、OCR。
生成侧(输出):文字 → 模型 → 图、声、视频。靠的是另一套技术:
文生图:主流是扩散模型(Diffusion),从一团噪声逐步"去噪"还原出符合提示词的图像。
语音合成(TTS):把文字转成自然语音,是 ASR 的逆过程。
文生视频:扩散模型在时间维度上的扩展,目前最前沿也最难。
很多产品其实是两侧组合。比如一次语音助手交互:你说话(ASR 理解)→ 模型看屏幕(VLM 理解)→ 规划并执行 → 用语音回复你(TTS 生成)。最"全能"的一类模型叫 any-to-any / omni 模型,任意模态进、任意模态出,豆包、GPT-4o 都在往这个方向走。
这套认知能帮你做什么
理解多模态最大的价值,是能把一个笼统的"AI 答错了"拆解成链路上的具体环节。一次语音助手任务失败,可能是 ASR 听错了(管线环节)、VLM 看错了屏幕(视觉能力)、抽帧漏了关键画面(视频工程),或者 LLM 想错了(推理规划)。每一环对应不同的原因和不同的修法。
回到那个统一原理:多模态的本质,是把一切输入都变成 token,对齐到同一个语义空间,交给同一个模型处理。 图片是训练时学进去的原生能力,语音和视频则常常靠推理时的工程拼接。看懂了这条主线,剩下的细节都只是它的变体。
夜雨聆风