EmbeddingGemma 2发布:五种模态共用一个向量空间
Google 的 EmbeddingGemma 2 是一款紧凑、开放权重的多模态嵌入模型,基于 Gemma 4 构建,并采用 Apache 2.0 许可证发布。该模型旨在提高语义搜索和检索增强生成(RAG)的效率,同时针对设备端部署优化性能。 EmbeddingGemma 2 旨在移动设备和笔记本电脑等消费级硬件上运行
Google 的 EmbeddingGemma 2 已推出,这是一个紧凑、开放权重的多模态嵌入模型,构建在
Gemma 4 之上,采用 Apache 2.0 许可证发布。它面向语义搜索和检索增强生成(RAG)的效率提升,并针对设备端部署做了优化,可在移动设备、笔记本电脑等消费级硬件上运行,为设备端搜索、RAG、分类和聚类等应用提供低延迟的语义表示。
多模态能力让 EmbeddingGemma 2 能覆盖范围很广的检索任务:按查询找到相关文档、屏幕截图和录音,用自然语言搜索源代码,或者根据文本描述检索视频内容。Google 表示,该模型的关键特性是在统一的 768 维嵌入空间里表示文本、代码、图像、视频和音频。开发者由此可以搭建跨媒体类型搜索的检索系统,不必为每种媒体单独维护互不兼容的嵌入空间。
这些嵌入虽然来自不同模态,却落在相同的维度空间中,因此能按语义相似度进行比较。
开发者可以只加载应用实际需要的编码器,参数规模从面向文本和代码的 2.7 亿,一直延伸到支持完整多模态能力的 7.4 亿。Google 表示,该模型“在代码搜索和技术内容检索方面显著超越 EmbeddingGemma 1,非常适合本地代码库索引和智能体代码搜索”。
EmbeddingGemma 2 支持套娃表示学习(Matryoshka Representation Learning,MRL),能把嵌入截断成更短的单位长度向量,降低存储需求。按 bfloat16 精度存 100 万个 768 维向量大约要 1.5GB 内存,截断到 128 维后只需 250MB,存储占用减少至六分之一。不过检索质量也要付出代价,所以 Google 建议只在存储空间或搜索速度确有需要时才用截断。在 128 维下,该模型在文本任务上可保留约 90% 的质量,图像、视频和语音检索的表现则会下降到约 75%。
这个模型让人印象深刻的地方,是它能把图像和音频嵌入同一个共享语义空间;不过只看文本任务,提升并不算巨大。
初代 EmbeddingGemma 有两点让作者踩过坑,这些问题很可能依然适用。一是任务前缀不是可选项:索引文档时若用了查询前缀而不是“title: none | text: ”,召回率会明显下降。二是要给 MRL 截断向量,应先切片,再对较短的向量做 L2 归一化;若先在 768 维上归一化再截断,得到的向量范数就不正确。
EmbeddingGemma 于去年推出,重点面向“离线和隐私敏感场景,例如在本地搜索个人文件、使用 Gemma 3n 运行移动端 RAG 流水线,或者构建特定领域的聊天机器人”。EmbeddingGemma 2 已在 Hugging Face 上提供。