引言: 超越纯文本

想象一下,在数百页的财务报告中寻找一张特定的图表,或者尝试用一张图片和一段简短描述在一个庞大的数字目录中定位某个产品。
在当今日益多媒体化的世界里,文档不仅仅是文字——它们是文字、图像、布局、图表和表格组成的丰富生态系统。传统的纯文本搜索引擎常常无法捕捉到这些视觉元素中的信息,从而错失关键的上下文。

视觉文档检索旨在弥合这一差距——构建能够同时理解文本和视觉信号的搜索系统。近来,该领域已将目光投向大型视觉语言模型 (VLM) ——正是这些模型为令人印象深刻的图像字幕生成和问答系统提供了动力——并将它们重新用于检索任务。其逻辑看似简单: 如果一个模型能够描述一张图片,那么它肯定也足够理解这张图片,从而能够检索到它。

虽然这种方法在一定程度上有效,但也存在显著缺点。这些被改造的 VLM 通常体积庞大运行缓慢计算成本高。更关键的是,它们的架构——尤其是**因果注意力 **(token 只能关注序列中其前方的内容) ——是为生成任务设计的,而不是用于构建精确、上下文丰富的检索嵌入。

一篇新论文《ModernVBERT: 迈向更小的视觉文档检索器》挑战了“越大越好”的假设。作者们系统地审视了检索任务中最关键的设计抉择,并将其提炼为一套有原则的方案。

他们的关键贡献是:** ModernVBERT**,一个紧凑的 2.5 亿参数模型,专为检索而构建,而不仅仅是从生成模型改造而来。尽管其规模不大,该模型的性能可与比它大 10 倍以上的模型相媲美 (有时甚至更优) 。

在本文中,我们将探讨他们的方法和发现:

  • 模型的注意力类型是否重要?
  • 图像分辨率有多关键?
  • 能否用更少——或不同——的数据训练出更好的模型?

背景: 两种多模态模型范式

在深入探讨 ModernVBERT 的创新之前,先了解视觉语言模型的两大主流范式:

  1. 双编码器
    以 CLIP 为例。它们为图像和文本分别使用独立的“塔” (tower) ,各自生成单一向量嵌入。在训练中,模型学习在共享的嵌入空间中对齐匹配的图文对向量。
    这种方法在检索上快速高效,但将所有信息压缩到单一向量可能会丢失细粒度的匹配信息。

  2. 早期融合编码器
    这类模型将视觉 patch 和文本 token 合并到单一的 transformer中,实现深度的、token 级跨模态交互。
    这种架构擅长捕捉复杂关系,但通常用于具有因果注意力大型生成式 VLM,在检索任务上并非最优。

注意力机制是关键:
多数生成式 VLM 是因果解码器,每个 token 仅依赖前面的 token 进行预测;而双向编码器 (如 BERT) 使用掩码语言建模 (MLM) ,依靠上下文中前后信息来预测被掩盖的 token。对于检索任务而言,全上下文表示至关重要,因此双向方法更具优势。

最后,看看检索机制本身:

  • 单向量检索: 每个查询和文档只有一个嵌入进行比较。
  • **后期交互 **(由 ColBERT 推广) : 比较查询与文档之间的 token 级嵌入,并聚合最强匹配。这保留了细粒度细节,但需要嵌入具备全局上下文——这是双向编码器的天然优势。

ModernVBERT 方法: 打造更优检索器的配方

作者们设计了受控实验,将各个因素单独剥离观察其影响。

模型架构

ModernVBERT 采用早期融合设计 (图 2) :

  1. 视觉塔 – 使用预训练的视觉 Transformer (siglip2-base-16b-512) 将图像分割成小块并对每个块进行嵌入。
  2. 语言模型 – 使用 1.5 亿至 2.1 亿参数的预训练语言模型处理文本 token。
    图像块嵌入被投影到与文本嵌入相同的空间,然后与文本嵌入拼接。统一的序列被送入语言模型进行联合处理

ModernVBERT 的早期融合架构。一个视觉编码器处理图像块,这些图像块与文本 token 一同输入语言模型。模型以掩码语言建模 (MLM) 目标进行训练,非常适合构建丰富的双向表示。

图 2: 基于 MLM 的早期融合架构。视觉编码器生成图像块表示,传递至双向语言模型,并通过掩码语言建模训练——理想用于构建序列和 token 级表示。

两阶段训练

阶段 1: 模态对齐
通过语言建模目标,让语言模型学会理解视觉特征。

  • 解码器:
    因果语言建模 (CLM) ,预测下一个 token:
    \[ \mathcal{L}_{\text{CLM}} = -\sum_{t=1}^{T} \log P_{\theta}(x_t \mid x_{
  • 编码器:
    掩码语言建模 (MLM) ,利用全上下文预测被掩盖的 token:
    \[ \mathcal{L}_{\text{MLM}} = -\sum_{t \in \mathcal{M}} \log P_{\theta}(x_t \mid x_{\setminus \mathcal{M}}) \]

训练数据包括来自网页、书籍、学术论文等文档丰富来源的数十亿 token。

阶段 2: 对比式后训练
采用 InfoNCE 损失在正负样本对上训练,使模型专注于检索:

\[ \mathcal{L}_{\text{InfoNCE}}(\mathbf{q}, \mathbf{d}^+) = -\log \frac{\Phi(\mathbf{q}, \mathbf{d}^+)}{\Phi(\mathbf{q}, \mathbf{d}^+) + \sum_{\mathbf{d}^- \in \mathcal{N}_q} \Phi(\mathbf{q}, \mathbf{d}^-)} \]

其中,\(\Phi\) 为嵌入相似度度量。


卓越视觉检索器的关键要素: 核心发现

1. 模态对齐提升文档检索,但不利于自然图像检索

作者比较了早期融合编码器 (编码器/解码器变体) 与独立的 SigLIP 视觉塔。

条形图比较编码器 (enc) 、解码器 (dec) 和独立 SigLIP 在文档检索、图像/字幕检索、图像分类上的表现。Enc 和 dec 在文档任务上表现出色,SigLIP 在自然图像任务中占优。

图 3: 与独立 SigLIP 相比,早期融合语言模型显著提升了文档检索,但降低了通用图像任务的表现。

文档任务中,融合带来 +10.9 nDCG@5 的提升。然而自然图像任务表现下降——说明模态对齐有助于细粒度文档理解,但对简单图像任务则可能过度复杂化。

2. 更多对齐数据有效——但仅限于文档

扩大对齐数据规模可持续提升文档检索性能 (图 4) ,并超过独立视觉模型。自然图像任务性能则很早就达到瓶颈。

折线图显示: 文档检索性能持续提升;图像/字幕检索和分类在低于 SigLIP 基线时停滞。

图 4: 文档检索持续受益于大规模对齐;自然图像在约 10 亿 token 后收益递减。

3. 双向注意力在后期交互中优势显著

采用单向量检索时,编码器与解码器性能接近;但在多向量后期交互中,双向编码器可比因果解码器高约 20 分。

堆叠条形图显示 ViDoRe nDCG@5 得分。双向编码器在后期交互中表现优异;因果模型无显著提升。

图 5: 双向编码器充分发挥后期交互的优势。因果解码器未能丰富早期 token 的嵌入,限制了性能提升。

即使在训练末期移除解码器的因果掩码,差距依旧存在——原生双向设计至关重要。

4. 对文档任务而言,高分辨率更优

在更高分辨率 (如 2048px) 下训练,可显著提升文档检索性能,但会略微降低自然图像任务表现。

表格显示高分辨率提升文档任务;非文档任务表现下降。

表 1: 高分辨率图像为文档任务带来显著收益。

5. 使用文本数据进行跨模态迁移

在视觉对比训练中引入大量纯文本文档-查询对,可提升视觉检索效果。

表格显示纯文本对提升文档检索;自然图像-字幕对提升分类性能。

表 2: 合理混合训练数据可同时增强多个领域表现。


ModernVBERT: 将洞察落地实施

最终配方如下:

  • 文本编码器: 1.5 亿参数双向编码器
  • 视觉编码器: 1 亿参数 SigLIP 塔
  • 对齐:100 亿 token 进行 MLM 训练
  • 分辨率冷却阶段: 2048px 高分辨率
  • 对比训练: 大规模混合视觉与纯文本文档-查询对,并引入难负例

使用后期交互的版本称为 ColModernVBERT——精简的 2.5 亿参数模型。

散点图显示模型大小与 ViDoRe 得分关系。ColModernVBERT 位于左上角: 小规模,高分数。

图 1: ColModernVBERT 在相同规模下效率顶尖——表现超越更大模型。

性能对比 (表 3) 显示,ColModernVBERT 在小于 10 亿参数模型中性能最佳,并与大十倍的模型相当,同时适用于 CPU 部署

ViDoRe 排行榜,ColModernVBERT 在同规模中性能与延迟领先。

表 3: ColModernVBERT 在性能-规模平衡上最佳,并在 CPU 延迟方面表现出色。


结论: 设计胜于规模

ModernVBERT 的研究为构建高效的视觉文档检索器提供了清晰蓝图:

  1. 双向注意力不可或缺——尤其在后期交互检索中。
  2. 任务定制设计至关重要——文档检索依赖于早期融合、高分辨率输入、token 级交互。
  3. 跨模态数据可缓解视觉语料稀缺问题。
  4. 紧凑模型若遵循正确原则,可媲美巨型模型。

这项工作证明了巧妙设计优于盲目扩展。通过开源模型与代码,作者邀请业界部署强大高效的检索系统,并探索下一代多模态架构。

ModernVBERT 证明,在检索领域,关键不是你的模型有多大,而是你的设计有多聪明