Granite Embedding Multilingual R2:开源Apache 2.0多语言嵌入模型,32K上下文,子1亿参数中检索质量最佳
IBM发布Granite Embedding Multilingual R2系列,包含97M和311M参数两个多语言嵌入模型,均基于ModernBERT架构,支持32K令牌上下文,覆盖200+语言,并在MTEB多语言检索基准上取得领先成绩。97M模型在子1亿参数模型中排名第一,311M模型在5亿参数以下模型中排名第二。
文章情报
要点
- 97M参数模型在MTEB多语言检索中得分为60.3,子1亿参数模型中最佳;311M模型得分为65.2,5亿参数以下模型中排名第二。
- 支持32K令牌上下文,比前代R1提升64倍;覆盖200+语言,其中52种语言和9种编程语言经过专门检索训练。
- 基于ModernBERT架构,采用旋转位置编码和Flash Attention 2.0,支持Matryoshka嵌入维度裁剪。
- 开源Apache 2.0许可,兼容sentence-transformers、LangChain等框架,支持ONNX和OpenVINO推理。
为什么重要
这条新闻值得关注,因为97M参数模型在MTEB多语言检索中得分为60.3,子1亿参数模型中最佳;311M模型得分为65.2,5亿参数以下模型中排名第二。
技术影响
可能影响模型选型、推理成本、产品能力和评测基准。
IBM近日发布了Granite Embedding Multilingual R2系列多语言嵌入模型,包含granite-embedding-311m-multilingual-r2(311M参数)和granite-embedding-97m-multilingual-r2(97M参数)两个版本。这两个模型均基于ModernBERT架构构建,支持长达32,768个令牌的上下文窗口(相比前代R1的512令牌提升64倍),并采用Apache 2.0开源许可证发布。
在基准测试方面,97M模型在MTEB多语言检索基准(涵盖18种语言)上取得了60.3分的成绩,在所有开源子1亿参数模型中排名第一,相比前代R1提升了12.2分。311M模型则取得了65.2分,在5亿参数以下开源模型中排名第二,相比R1提升了13.0分。在LongEmbed长文档检索基准上,97M和311M模型分别比R1提升了31.3分和34.0分,这直接得益于32K上下文窗口的扩展。
两个模型均支持200多种语言,其中52种语言(包括中文、日语、阿拉伯语等)和9种编程语言(Python、Go、Java、JavaScript、PHP、Ruby、SQL、C、C++)经过专门的检索训练。模型还支持双语和跨语言代码检索。训练数据经过IBM严格的治理流程,避免使用MS-MARCO等非商业许可数据集,并采用GneissWeb等IBM策划的数据集,确保企业级部署的合规性。
在技术实现上,R2系列从XLM-RoBERTa转向ModernBERT,采用交替注意力机制减少长序列计算量,旋转位置编码支持原生32K上下文,并集成Flash Attention 2.0加速。311M模型使用262K令牌的Gemma 3分词器,97M模型则从GPT-OSS分词器裁剪为紧凑的180K令牌词汇表,在保持多语言覆盖的同时减少参数占用。分词器效率至关重要——32K上下文窗口看似惊人,但如果分词器效率低下,可能一半的令牌都用于编码单个泰语段落。
训练流程包括知识蒸馏(从Granite 3.3 Instruct和Mistral v0.2 Instruct等多个教师模型学习)、对比微调(使用多语言检索对和难负样本)、模型合并以及Matryoshka表示学习(768维嵌入可裁剪至512/384/256/128维而质量损失极小)。97M模型还通过词汇选择与知识蒸馏相结合的方式训练:先裁剪词汇表,再从Granite 4.1 8B等教师模型蒸馏,最终在保持多语言覆盖的同时将参数减少约3倍,检索质量仅略低于311M模型。
在更广泛的竞争格局中,harrier-oss-v1-270m在MTEB多语言检索(66.4)和RaR-b(32.9)上领先,但Granite R2模型在LongEmbed上以71.7分排名第一,在代码检索上也表现优异。97M R2模型在平均得分上超越了multilingual-e5-base和gte-multilingual-base(约300M参数模型),尽管体积小3倍。广泛用作框架默认的paraphrase-multilingual-MiniLM-L12-v2得分为36.6,比97M R2低23.7分,而后者参数更少(97M vs 110M)且输出维度相同(384)。
这两个模型可直接作为sentence-transformers、LangChain、LlamaIndex、Haystack和Milvus等框架的即插即用替代品,仅需一行代码更改模型名称。同时提供ONNX和OpenVINO权重以支持CPU优化推理。对于当前仅使用英文默认模型的框架,这一行更改即可为所有用户提供200+语言支持,无需API变更、新依赖或代码修改。