1. 问题与动机
现有多模态嵌入模型(CLIP、ALIGN、SigLIP 等)走的是「后融合 (late-fusion)」范式:每个模态有独立编码器,再通过成对的跨模态对比学习对齐两个空间。这一设计带来两个核心缺陷:第一,对「交错输入」(一段对话里既有图、又有文字、还有音频片段)支持差,因为单模态编码器无法吸收其它模态的语境;第二,跨模态交互只发生在向量空间最后一步,损失了模态间深层语义关联。论文指出,目前已经成熟的多模态 LLM(MLLM)通过在生成阶段就做深度跨模态融合,给出了一条新路径——直接用 MLLM 主干生成嵌入,跳过 ASR、image captioning 这类中间转换,能保留模态原生的全部信息。在企业场景下(视频推荐、跨模态 RAG、文档搜索),统一表示空间也意味着可以省掉「先 ASR 再向量化」这种级联管道,从根本上消除误差传播。论文给出的实证支撑是:在 MSEB 音频 benchmark 上,原生音频 retrieval 比「ASR→文本检索」高 3.6–5.0 点 mrr@10,验证 cascade 范式真的会丢信息。
2. 方法详解
整体架构以 Gemini 主干为初始化,分三阶段训练。
编码器结构。 原始图像/视频/音频/文本由 Gemini 原生 tokenizer 转成 token 序列,过双向 attention transformer 得到 T_embed ∈ ℝ^(L×d_M)。这里把 Gemini 的因果 attention 换成双向 attention 是关键设计——causal LLM 只能看到前文,不适合做 encoding。再做 mean pooling 得到 P_embed,最后一个线性投影层产出 d=3072 维向量。模型同时通过 Matryoshka Representation Learning(MRL)在 768、1536、3072 三个截断维度上同时优化损失,使一个模型在线就能根据 cost 灵活降维。
损失函数。 标准的 NCE 对比损失,每个 batch 中查询 q_i 与正样本 p_i+ 配对,分母同时包含:(a) 该查询的难负样本 p_i-,(b) batch 内其它样本的正样本 p_j+(mask 后),公式为 L = -log(exp(sim(q_i,p_i+)/τ) / (exp(sim(q_i,p_i+)/τ) + exp(sim(q_i,p_i-)/τ) + Σ_j mask(i,j)·exp(sim(q_i,p_j+)/τ))),相似度走 cosine。论文额外加了「task string random drop」——训练时随机丢掉任务前缀,使模型对模态输入鲁棒。
三阶段训练。 Stage 1 Pre-Fine-Tuning(PFT)只在文本、图像、代码三类高量噪声 pair 上跑大 batch,目的是把 Gemini 的自回归参数迁移到 encoding 模式;Stage 2 Fine-Tuning(FT)引入完整模态集(文本/代码/文档/图像/音频/视频),每个任务调 batch size,并用 (query, target, hard negative) 三元组训练,强调跨模态对齐;Stage 3 Model Soup 把多次 FT run 的参数做加权平均(论文表 6 显示 base:ft 2:1 加权平均使 Vatex 从 79.5 降到 74.5 但综合更稳)。
训练数据。 大规模合成 + 真实数据混合,其中合成代码数据由 Gemini 本身生成;表 5 ablation 显示去掉合成数据后代码任务平均掉 13.3 分(86.3→73.0),CodeFeedbackMT 任务直接掉 34.4 分。这点反过来证明 self-bootstrap 合成数据是这一代多模态嵌入的关键养料。
3. 核心技术贡献
第一个,把 MLLM 主干「转身」为 encoder:双向 attention + mean pooling + 线性投影,让原本生成式的模型直接产出能用 cosine 相似度比较的向量,这条范式可以直接复用到任何带 MLLM 主干(Qwen-VL、InternVL、Llava)的开源体系。其工作原理是 bidirectional attention 让每个 token 都能看到双向上下文,避免 causal mask 下后向信息丢失,从而产出真正「上下文敏感」的嵌入。
第二个,原生音频嵌入证伪 ASR cascade:MSEB 上 Native vs. ASR 比较显示 PassageCrossLang 高 5.01 点 mrr@10,作者解释为「ASR 误识别会改变下游 query 语义」,而向量编码保留了声学层面的歧义。这对当前主流的「先 ASR 后检索」管道是颠覆性结论,意味着语音搜索/语音 RAG 的工程路线需要重新评估。
第三个,多任务 multi-stage 训练+Model Soup 的稳定化手段。FT 中加入 MSR-VTT、Vatex 视频 pair 让 MSR-VTT 涨 7.9 点 NDCG@10,但 YouCook2 掉 0.6——这种「按下葫芦浮起瓢」是多任务学习的经典痛点。论文用 1:1 base/ft 参数平均 (model soup) 拉回平衡:MSR-VTT 73.7、Vatex 76.8。Model soup 在嵌入模型上有效是个新的实证发现。
第四个,跨域零样本泛化能力。表 4 中显微镜 MicroVQA R@5 79.3 比 ALIGN 48.1 高 31 个点,天文 AstroLLaVA 64.4 比 CLIP-Giant 31.6 翻倍。说明「大底座 + 多任务 contrastive 训练」能涌现出垂直域泛化能力。
4. 实验结果分析
多模态 retrieval 主表(Table 1): 总分 77.2,全面超越 Voyage-3.5-multimodal 与 Amazon Nova MME。具体来说 MSCOCO 文搜图 R@1 62.9 vs Voyage 58.1;MSCOCO 图搜文 R@1 78.8 vs 74.5;Vatex 文搜视频 NDCG@10 68.8 vs 55.2(+13.6 点是巨大差距)。长描述基准 DOCCI 上 93.4 vs 83.8(+9.6)—显示模型对复杂语义描述的对齐能力。
MTEB 文本/代码(Table 2): MTEB Multilingual Mean Task 69.9,比 Voyage-3.5 的 58.5 高 11.4 点,是当前公开模型最高。代码任务 MTEB Code 84.0、CoIR 82.3,超过专门做代码的 voyage-code-3 的 78.5(CoIR),意味着不再需要专门的代码 embedding 模型。
音频(Table 3 MSEB): Native 平均 mrr@10 73.99 vs ASR 70.40,PassageCrossLang 任务 native 72.56 vs ASR 67.55——跨语言场景下 ASR 误差被放大。
消融实验关键发现:
- 合成数据对代码任务平均贡献 +13.3 分(CodeFeedbackMT 单任务 +34.4)。
- PFT 到 FT 阶段文本/图像任务收益「适度」,视频收益最大——因为视频在 PFT 阶段被排除。
- Model Soup:单纯加视频数据让 YouCook2 略降 (55.9→55.3),1:1 souping 后恢复到 56.7 且其它视频任务也提升。
特化领域(Table 4): 显微镜 +64%、天文 +2x、餐饮 Recipe1M Ingredients R@5 90.2 vs SigLIP2-Giant 81.2 (+11%)。竞品在垂直域出现剧烈波动而 Gemini Embedding 2 保持稳定。
5. 局限与未来方向
作者明确指出的局限:(a) 长文档处理没有专门设计,document retrieval 64.9 略低于 Voyage 的 65.5,仅依赖 chunking;(b) 多模态多任务训练对采样率、batch size 等超参数敏感,平衡难调;(c) 论文没披露推理延迟、显存占用等部署关键数据;(d) 「交错输入」评测主要还是图+文 pair,真正的 video-audio-text 三模态交错评测缺位。
未提及但显而易见的限制:3072 维 + 双向 attention + 多模态 token 化的推理成本可能远高于 BGE/E5 等纯文本模型,工业部署成本未量化;闭源 weights,无法私有部署;论文未给 OOD 鲁棒性的细致分析(如对抗样本、长尾域)。
6. 工业实践意义
对社区 UGC 搜索(帖子+图+音频/视频)的直接借鉴:第一,抛弃 ASR cascade。当前大部分公司语音帖检索还在走「ASR 转文本 + 文本 embedding」管道,论文证明这条路径在跨语言/口音场景下系统性丢分。如果资源允许,应实验直接用原生音频嵌入;最低限度,对 ASR 置信度低的 case 做兜底向量召回。第二,统一 encoder 替代多个专用 encoder。当前业界做法是文字用 BGE/E5、图像用 CLIP、代码用 voyage-code-3——三套独立 index,跨模态融合靠 score 加权。Gemini Embedding 2 证明一个 encoder 就能同时拿下 MTEB 69.9、MTEB Code 84.0、MSCOCO 62.9,意味着工程上可以收敛成一个 index(同维度同空间),架构大幅简化。第三,Matryoshka 维度切换是工业部署的福音:召回阶段用 768 维降低 ANN 内存与延迟,精排阶段切到 3072 维拿全分。第四,Model Soup 作为多任务稳定化手段。社区搜索通常有多种 query intent(话题/商家/人/POI),多任务训练时一个任务涨另一个掉是常态,Model Soup 参数平均提供了一条比 loss balancing 简单得多的解法。部署考量:3072 维向量内存占用大(FP16 单条 6KB),需要配套 PQ/SQ 量化;论文未披露 latency,企业评估时需自行 benchmark;目前只通过 API 提供,私有部署需等价用开源替代(如 Qwen3-Embedding、bge-m3)做能力对齐。最值得抢先借鉴的:合成数据 self-bootstrap——表 5 显示合成数据对代码 embedding 涨 13 分以上,社区搜索同样有大量长尾 query 缺乏标注,可以用 LLM 生成 (query, positive, hard-negative) 三元组扩充训练集。