第20课:多模态 LLM 与多模态 RAG
本节目标:理解 CLIP 对比学习原理、掌握 VLM 三模块架构、了解多模态 RAG 四种方案、知道 ColPali 为什么是前沿。
1. 多模态的本质
单模态 LLM:只理解文本。多模态 LLM (VLM):理解文本 + 图片 + 音频 + 视频。
核心问题:如何让"只懂文字"的 LLM 也"看懂图片"?→ 把图片转换成 LLM 能理解的 token。
2. CLIP:图文对齐的开山之作
核心思想
用对比学习把图片和文字映射到同一个向量空间:
Code
图片 → Image Encoder (ViT) → 图像向量
文字 → Text Encoder (Transformer) → 文本向量
↓
对比学习 Loss
拉近匹配对,推远不匹配对
训练数据:4 亿 (image, text) 对
Code
Batch 内计算:
N 张图片 → N 个图像向量
N 段文字 → N 个文本向量
相似度矩阵 S = I · T^T → [N × N]
对角线 = 正例(匹配的图文对)
非对角线 = 负例
CLIP 的 Zero-Shot 分类
不需要任何训练数据!给所有类别生成文本描述 → 文本向量 → 图片向量 → 最相似的类别 = 预测。ImageNet Zero-Shot 达到 76%,接近有监督 ResNet-50。
3. VLM 三模块架构(必背)
几乎所有现代 VLM 都遵循:
Code
┌─────────────────────┐
│ Vision Encoder │ ← ViT / SigLIP
│ (视觉编码器) │ 提取图片特征
└──────────┬──────────┘
│ 图像特征
▼
┌─────────────────────┐
│ Projector / Bridge │ ← MLP / Q-Former
│ (投影/桥接层) │ 对齐视觉与语言空间
└──────────┬──────────┘
│ 视觉 token
▼
┌─────────────────────┐
│ LLM Backbone │ ← Llama / Qwen / GPT
│ (语言模型主干) │ 联合理解与生成
└─────────────────────┘
输入 = [视觉 token] + [文本 token]
LLM 统一处理 → 自回归生成文本
BLIP-2 的关键创新:Q-Former
冻结 ViT + 冻结 LLM,只训练一个轻量 Q-Former(~188M 参数)做桥接。不需要从头训多模态大模型,只需要一个桥接器。
主流 VLM
| 模型 | Vision | Projector | LLM | 特点 |
|---|---|---|---|---|
| LLaVA | CLIP ViT | 简单 MLP | Vicuna/Llama | 开源里程碑 |
| Qwen2.5-VL | ViT 升级 | 2D RoPE | Qwen2 | 开源中文最强 |
| InternVL 2.5 | InternViT-6B | MLP | InternLM2 | 开源综合强 |
| GPT-4o | 未公开 | 原生多模态 | — | 端到端,最快 |
4. 多模态 RAG 四种方案
方案 1:图片转文字 + 传统 RAG
文档(含图)→ OCR/VLM 提取描述 → 文本 chunks → 传统 RAG。简单但丢失视觉信息。
方案 2:多模态 Embedding + 多路召回
Code
文档 → 文本 chunks → Text Embedding → 向量库
→ 图片 → CLIP Embedding → 向量库
检索:Query → 文本向量 + 图像向量 → 多路召回
生成:文本 chunks + 相关图片 → VLM 生成
方案 3:ColPali(2024 前沿 推荐)
不 OCR,不切文本。直接把文档页面当图片,用 VLM 编码。
- 每个页面截图 → PaLI-3 (VLM) → patch 级向量
- 检索用 Late Interaction(类似 ColBERT)
- 天然理解布局、表格、图表
- 效果碾压传统 OCR + 文本检索
方案 4:文档解析 + 分模态处理
完整 Pipeline:文档解析(Unstructured/Docling)→ 分模态处理(文本→BGE,图片→CLIP+VLM描述,表格→结构化)→ 统一向量库 → 多路召回 → VLM 生成。
5. 本项目的多模态拓展方向
Phase 1
Phase 1: 古籍图片 OCR
扫描版古籍 → PaddleOCR + VLM → 数字化
Phase 2: 穴位/药材图检索
用户拍照 → CLIP 检索相关知识 → VLM 回答
Phase 3: 文档级多模态 RAG
ColPali 直接检索古籍页面图
核心要点
- CLIP = 图文对比学习,把图片和文字映射到同一向量空间
- VLM = ViT + Projector + LLM,三模块缺一不可
- BLIP-2 证明:冻结大模型 + 轻量桥接器 = 多模态
- 多模态 RAG 按需升级:OCR → CLIP 检索 → ColPali
- 中文 VLM 首选 Qwen2.5-VL
最后一课:面试通关手册。