多模态模型
🎯 学习目标
- 理解 Multimodal Model(多模态模型)的含义与典型模态组合
- 了解 ViT、CLIP、Diffusion Model 在工程中的角色
- 知道 GPT-4V、Qwen-VL 等视觉语言模型与纯文本 LLM 的 API 差异
- 能列举多模态应用的计费、合规与架构注意事项
引言
纯文本 LLM 无法直接「看见」像素。当你把一张发票照片发给 GPT-4V 或 Qwen-VL,背后是多模态模型把 图像编码成 Token 或与文本对齐的向量,再交给 Transformer 联合推理。多模态(Multimodal) 因此成为产品能力的重要延伸:文档 OCR 问答、UI 截图 debug、电商以图搜图、营销文生图、短视频生成等。
本节介绍三条技术脉络:ViT(Vision Transformer) 如何统一视觉与序列建模;CLIP 如何实现文图对齐检索;Diffusion Model(扩散模型) 如何生成图像。并说明工程上 与纯文本 LLM 分开评估延迟、缓存、版权与审核 的原因——多模态 often 更贵、更慢、合规更敏感。
章节正文
第 1 步:多模态是什么:统一表示与联合生成
多模态模型 能处理两种及以上信号:文本、图像、音频、视频、传感器等。实现路径大致两类:
- 理解/对话型:图像 → 视觉编码器 → 与文本 Token 拼接 → LLM 解码(如 GPT-4V、Gemini、Qwen-VL、LLaVA)
- 生成型:文本 → 生成模型 → 图像/音频/视频(Stable Diffusion、Sora 类、TTS)
与 1.1 节呼应:文生图不是 LLM,但常和 LLM 组合成产品(LLM 写 prompt → 扩散模型画图 → LLM 写文案说明)。
API 形态差异:
- 文本:
messages[].content为 string - 视觉:
content为 数组,含{ type: "text", text: "..." }与{ type: "image_url", image_url: { url: "..." } }
图片常以 URL 或 base64 传入;注意 大小、分辨率、格式 限制与 隐私(base64 增大 payload)。
第 2 步:ViT 与视觉语言模型:图像如何变成 Token
CNN 长期统治图像识别;ViT(Vision Transformer) 把图像切成固定大小 Patch(图块),展平成序列,用标准 Transformer 处理——与文本 Token 序列形式统一,便于 端到端多模态。
视觉语言模型(VLM,Vision-Language Model) 典型结构:
- 视觉塔:ViT 或 ConvNeXt 提取 patch 特征
- 投影层:映射到 LLM 词嵌入空间
- LLM 解码器:自回归回答
你问「图中有几个苹果」,模型实际在看 若干视觉 Token 对应的 patch,而非原始像素矩阵。
工程提示:
- 降分辨率可减 Token、降成本,但小字 OCR 可能变差——按场景 A/B
- 多图对话注意 总 context 与 每张图 Token 开销
- 敏感图(身份证、医疗)走 私有化 VLM 与 审计日志
第 3 步:CLIP:文搜图与零样本分类
CLIP(Contrastive Language-Image Pre-training) 用 对比学习 把匹配的图文对拉近、不匹配推远,得到 共享 Embedding 空间。应用:
- 以文搜图 / 以图搜文(电商、相册、版权素材库)
- 零样本分类:候选标签转成文本 prompt「a photo of a {label}」,算相似度最高者
- 作为 Stable Diffusion 的 文本编码器 理解 prompt 语义
CLIP 本身 不生成 长回答,常与 LLM 分工:CLIP 检索候选图,LLM 生成描述或营销文案。
与 RAG 类比:图文检索 pipeline = CLIP Embedding 向量库 + 用户 query 文本编码 + Top-K;生成 pipeline 则走 VLM 或扩散模型。
第 4 步:扩散模型与音视频:生成侧的多模态
Diffusion Model(扩散模型) 学习逐步去噪:训练时加噪,推理时从噪声 迭代 denoise 得到图像。Stable Diffusion 开源生态(ControlNet、LoRA 风格)推动 AIGC 爆发。
与 LLM 协作典型流:
- LLM 扩写用户短 prompt(英文 tags 往往更稳)
- 扩散模型生成图
- LLM 或 Moderation 审核是否违规
视频/音频:时间维度更长,计费按 秒数、分辨率、帧率;延迟常 分钟级(异步任务 + webhook 回调)。架构上多用 队列 而非同步 HTTP 阻塞。
版权与合规:生成人物、商标、政治敏感内容需 策略过滤 + 人工复核;用户协议明确 商用授权(尤其训练数据含版权图)。
第 5 步:架构与评估:不要把多模态当「加长版 Chat」
分离服务:
chat-text:纯 LLM,低延迟chat-vision:VLM,较高成本image-gen:扩散/async 队列embedding-image:CLIP 类检索
缓存:相同图片重复问时,视觉特征可缓存(hash 图片 bytes → 视觉 Token 或描述)。
Eval 维度:
- OCR 准确率、图表数值是否 hallucinate
- 细粒度识别(型号、缺陷检测)
- 生成图 安全策略 命中率
失败模式:VLM 编造图中不存在的数据(如臆测表格数字)—— 关键数值应 OCR + 规则校验 或 结构化提取 + 人工复核,与文本 LLM 幻觉治理(2.7 节)同源。
多模态是能力放大器,不是免责金牌;关键决策链仍要确定性组件参与。
动手练习
- 设计一个「上传截图问代码 bug」功能的 API 请求结构(文本 + image_url),并列出三条隐私与大小限制。
- 比较同一问题「描述这张发票」走 VLM 与「OCR 服务 + 纯文本 LLM」两种架构的优缺点。
- 写一条 CLIP 检索 pipeline 的步骤清单:入库、query、Top-K、展示。
- 列举三类应拒绝或人工审核的多模态生成请求(版权、Deepfake、违规内容)。
常见问题
Q:VLM 能替代专业 OCR 吗?
简单印刷体常可以,但高合规场景(发票、合同)建议专用 OCR + 结构化解析,VLM 做理解与问答层,避免数值幻觉。
Q:文生图 API 为什么比 Chat 慢很多?
扩散迭代步数多、分辨率高、GPU 占用大;通常异步。产品应展示进度而非同步 spinner 干等。
Q:多模态 Token 怎么算?
各厂商规则不同:常按图片分辨率映射为固定视觉 Token 块数。查阅定价页,并在 usage 日志里单独打点 vision 请求。
本节小结
多模态模型扩展了 LLM 的感知与生成边界:ViT/VLM 让「看图说话」成为 API 能力,CLIP 支撑文图检索,扩散模型驱动 AIGC。工程上应拆分文本与视觉/生成服务,单独评估成本、延迟与合规,并对图中数值类信息保持与文本幻觉同等的校验警惕。