原生多模态:从零训练的 DeepSeek-ViT
V4.1 从语言模型预训练的第一天就混入图像数据:自研的 DeepSeek-ViT 把图片变成最多 1024 个 token,和文本一起进主干。这一章讲视觉通路、训练数据、评测,以及 API 里图像怎么传、怎么计费。
V4-Flash 是纯文本模型。8 月 21 日上线的 V4-Flash-Vision-Exp 第一次让 V4 家族“看得见”,但它是在 V4-Flash 架构上加视觉模块、再继续训练得来的实验版本,API 里每张图最多折算 384 个 token [1][2]。
V4.1-Flash 走的是另一条路:多模态数据从语言模型预训练一开始就加入 [3]。官方公告的说法是“具备原生多模态视觉理解能力”[4]。它接收图像和文本,输出文本,不生成图像。
视觉通路
一张图进入主干,要经过三步 [3]:
- 视觉编码器 DeepSeek-ViT 把图片变成一张空间特征网格;
- 3×3 像素重排(pixel-unshuffle)把每个 3×3 的邻域沿通道维拼起来,视觉 token 数量减少到原来的 1/9;
- 两层 MLP 投影器把特征映射到主干的隐藏维度 5120,插入输入序列里对应的图像 token 位置,和文本嵌入一起被主干处理。
DeepSeek-ViT 是从零训练的,基于标准的 Vision Transformer,做了几处面向大语言模型的改动 [3]:
- 用 2D-RoPE 替代绝对位置嵌入,以便处理任意分辨率;
- patch 嵌入层的卷积换成线性投影,好让它也能用 Muon 优化器;
- 归一化用 RMSNorm,激活函数用 SwiGLU。
规格是 32 层、隐藏维度 1024、16 个注意力头、patch 边长 14 [5];按这组数字粗算约 4 亿参数(本专栏估算)。输入分辨率最高约 1344×1344:1344 ÷ 14 = 96,重排后 32 × 32 = 1024 个 token,正好是 config.json 里单图 token 数的上限 [3][5]。
视觉编码器怎么训出来
ViT 先单独训练,分两段 [3]:
| 阶段 | 做法 | 规模 |
|---|---|---|
| 对比学习预训练 | SigLIP 式的 sigmoid 对比损失,图文对来自网页 alt 文本;输入最大 224×224 | 约 470 亿个图文对 |
| 自回归微调 | 接上一个 4B 的 MoE 语言模型,用下一个 token 预测训练,数据含图片描述、alt 文本、图表与 OCR;分辨率 544×544 到 1344×1344 | 2,360 亿 token |
微调完就把那个 4B 语言模型扔掉,只留下编码器。报告说,对比学习阶段用更高分辨率虽然有明显收益,但对最终模型帮助不大,因为高分辨率的外推交给了自回归阶段 [3]。
接进主干的预训练后,ViT 先冻结,只训练它最后的归一化层和投影器;到学习率衰减阶段再解冻,以较小的学习率与语言模型一起训 [3]。
数据:少合成,多清洗
报告对多模态数据的态度很明确:网页数据本身就蕴含丰富的多模态知识,所以没有做大规模数据合成,重点放在清洗和按原样利用 [3]。
- 来源:图文对、图文交错数据(主要来自网页和 PDF)、领域数据(视觉定位与指点、OCR、长尾知识),以及大量的图像-代码对和电脑操作轨迹,后两类针对多模态 Agent。
- 一个坦白的细节:最初的爬虫偏向以文字为主的网页,他们从 Common Crawl 重新起步,以提高多模态来源的覆盖。
- 筛选:图文相关度阈值、按图像语义去重;交错数据分几道越来越贵的工序处理,最后用 SmolVLM 做严格的质量打分。
- 配比:和纯文本数据合并、去重后,纯文本与多模态的 token 比例是 7:1。
让图像 token 和文本 token 不抢专家
图像 token 和文本 token 的表示分布不同,偏好的专家也不同。V4.1 给两种模态各维护一套负载均衡偏置,详见 MoE 那一章。训练系统上,视觉编码器放在语言模型参数树之外单独复制执行;部署时采用“编码—预填充—解码”三段分离(EPD),视觉编码、预填充和解码可以各自扩缩 [3]。
评测:官方口径
基座模型的多模态分数(没有前代可比,V4-Flash 与 V4-Pro 的基座都是纯文本)[3]:
| 基准 | V4.1-Flash-Base |
|---|---|
| MMMU-Pro | 56.5 |
| CVBench | 77.9 |
| DocVQA | 95.6 |
| RefCOCO 平均([email protected]) | 86.0 |
指令模型在视觉 Agent 基准上的对比(均为 DeepSeek 报告里的数字,最高推理强度,使用 Claude Code 脚手架、512K 上下文)[3]:
| 基准 | Opus-5 | GPT-5.6 Sol | Kimi K3 | V4.1-Flash |
|---|---|---|---|---|
| Chartography(带工具) | 84.0 | 79.9 | 68.1 | 78.9 |
| BabyVision(带工具) | 94.1 | 88.9 | 85.7 | 89.6 |
| ZeroBench-main(带工具,Pass@5) | 52.0 | 53.0 | 41.0 | 49.0 |
报告自己的评价是:在视觉推理和专业图表理解上超过 Kimi K3,在前端开发、办公自动化这类可以截图自查的视觉 Agent 流程里有实用价值,但与大型闭源系统相比“仍有明显的整体差距”[3]。
在 API 里怎么用
官方“图像理解”文档(9 月 19 日查阅)[6]:
- 模型名:
deepseek-flash。旧名deepseek-v4-flash-vision-exp仍可调用,由最新的 Flash 模型承接。 - 格式:JPEG、PNG、GIF、WebP,按文件实际内容判断格式。
- 三种传法:base64 内联、外部 URL、Files API 的
file_id;OpenAI 兼容接口、Anthropic 兼容接口和 Responses API 都支持。图片只能放在 user 消息里。 - 细节级别:
detail取low时先缩放到 512×512,更快更省;high、original保留原图;auto目前等同于original。 - 计费:图片按尺寸折算成 token,与文本一起按输入计费。小于约 544×544 的图会被放大,更大的图缩小到总像素约相当于 1300×1300,所以单图最多 1024 个 token。
- 限制:单个请求最多 600 张图,请求体最大 48 MiB;单边最长 8192 像素,一个请求里有 15 张及以上图片时降到 4096 像素。
按高峰时段缓存未命中的输入价 $0.3 / 百万 token 算,一张满额 1024 个 token 的图约合 $0.0003(本专栏按价格页推算)。
下一章讲另一处变化:“想多少”从三种模式变成了一个 1 到 100 的旋钮。👉 推理强度:从三档模式到 1–100
参考文献
- [1] DeepSeek. “DeepSeek-V4-Flash-Vision-Exp Release.” 2026-08-21. api-docs.deepseek.com/news/news260821 —— 实验性多模态模型、每图最多 384 个 token。
- [2] Hugging Face 模型卡:deepseek-ai/DeepSeek-V4-Flash-Vision-Exp —— “在 V4-Flash 架构上加入视觉模块并继续训练”。
- [3] DeepSeek-AI. “DeepSeek-V4.1-Flash: Pushing the Limits of KV Cache Compression.” 2026-09. arXiv:2609.19969 —— 第 2.1.1 节(视觉通路与 DeepSeek-ViT)、第 3.1.1 与 3.2 节(训练与部署系统)、第 4.1 节(多模态数据)、第 4.2.2 节(ViT 训练)、表 1 与表 3(多模态评测)、第 1 节与第 5.3.2 节(官方自评)。
- [4] DeepSeek. “DeepSeek-V4.1-Flash 发布.” 2026-09-10. api-docs.deepseek.com/zh-cn/news/news260910 —— “原生多模态视觉理解能力”。
- [5] Hugging Face:deepseek-ai/DeepSeek-V4.1-Flash 的 config.json ——
vision_config各字段。 - [6] DeepSeek API 文档. “图像理解.” 2026-09-19 查阅. api-docs.deepseek.com/zh-cn/guides/vision —— 传图方式、细节级别、token 折算规则与各项限制。