🚀 gte-multilingual-reranker-base
gte-multilingual-reranker-base 模型是 GTE 模型家族中的首个重排模型,具备以下关键特性:
- 高性能:在多语言检索任务和多任务表示模型评估中,与同规模的重排模型相比,达到了当前最优(SOTA)的结果。
- 训练架构:采用仅编码器的 Transformer 架构进行训练,模型尺寸更小。与之前基于仅解码器的大语言模型(LLM)架构的模型(如 gte-qwen2 - 1.5b - instruct)不同,该模型推理时对硬件的要求更低,推理速度提升了 10 倍。
- 长上下文支持:支持最长达 8192 个标记的文本长度。
- 多语言能力:支持超过 70 种语言。
✨ 主要特性
- 高性能:在多语言检索任务和多任务表示模型评估中,相较于同规模的重排模型,取得了当前最优的结果。
- 训练架构:采用仅编码器的 Transformer 架构进行训练,模型尺寸更小。与之前基于仅解码器的大语言模型(LLM)架构的模型(如 gte - qwen2 - 1.5b - instruct)不同,该模型推理时对硬件要求更低,推理速度提升 10 倍。
- 长上下文:支持文本长度达 8192 个标记。
- 多语言能力:支持超过 70 种语言。
📦 安装指南
⚠️ 重要提示
建议安装 xformers 并启用无填充(unpadding)以加速,详情请参考 [enable - unpadding - and - xformers](https://huggingface.co/Alibaba - NLP/new - impl#recommendation - enable - unpadding - and - acceleration - with - xformers)。
💡 使用建议
关于如何离线使用该模型,请参考 [new - impl/discussions/2](https://huggingface.co/Alibaba - NLP/new - impl/discussions/2#662b08d04d8c3d0a09c88fa3)。
💻 使用示例
基础用法
import torch
from transformers import AutoModelForSequenceClassification, AutoTokenizer
model_name_or_path = "Alibaba-NLP/gte-multilingual-reranker-base"
tokenizer = AutoTokenizer.from_pretrained(model_name_or_path)
model = AutoModelForSequenceClassification.from_pretrained(
model_name_or_path, trust_remote_code=True,
torch_dtype=torch.float16
)
model.eval()
pairs = [["中国的首都在哪儿","北京"], ["what is the capital of China?", "北京"], ["how to implement quick sort in python?","Introduction of quick sort"]]
with torch.no_grad():
inputs = tokenizer(pairs, padding=True, truncation=True, return_tensors='pt', max_length=512)
scores = model(**inputs, return_dict=True).logits.view(-1, ).float()
print(scores)
高级用法
使用 Infinity:
Infinity 是一个遵循 MIT 许可的推理 REST API 服务器。
docker run --gpus all -v $PWD/data:/app/.cache -p "7997":"7997" \
michaelf34/infinity:0.0.68 \
v2 --model-id Alibaba-NLP/gte-multilingual-reranker-base --revision "main" --dtype bfloat16 --batch-size 32 --device cuda --engine torch --port 7997
📚 详细文档
模型信息
属性 |
详情 |
模型大小 |
3.06 亿参数 |
最大输入标记数 |
8192 |
评估
基于多个文本检索数据集的重排结果:

更详细的实验结果可在 论文 中查看。
云 API 服务
除了开源的 [GTE](https://huggingface.co/collections/Alibaba - NLP/gte - models - 6680f0b13f885cb431e6d469) 系列模型外,GTE 系列模型还在阿里云上提供商业 API 服务。
- [嵌入模型](https://help.aliyun.com/zh/model - studio/developer - reference/general - text - embedding/):提供三种版本的文本嵌入模型:text - embedding - v1/v2/v3,其中 v3 是最新的 API 服务。
- [重排模型](https://help.aliyun.com/zh/model - studio/developer - reference/general - text - sorting - model/):提供 gte - rerank 模型服务。
请注意,商业 API 背后的模型与开源模型并不完全相同。
🔧 技术细节
- 训练架构:采用仅编码器的 Transformer 架构进行训练,模型尺寸更小。与之前基于仅解码器的大语言模型(LLM)架构的模型(如 gte - qwen2 - 1.5b - instruct)不同,该模型推理时对硬件要求更低,推理速度提升 10 倍。
- 长上下文支持:支持最长达 8192 个标记的文本长度。
📄 许可证
本模型采用 Apache 2.0 许可证。
📚 引用
如果您觉得我们的论文或模型有帮助,请考虑引用:
@inproceedings{zhang2024mgte,
title={mGTE: Generalized Long-Context Text Representation and Reranking Models for Multilingual Text Retrieval},
author={Zhang, Xin and Zhang, Yanzhao and Long, Dingkun and Xie, Wen and Dai, Ziqi and Tang, Jialong and Lin, Huan and Yang, Baosong and Xie, Pengjun and Huang, Fei and others},
booktitle={Proceedings of the 2024 Conference on Empirical Methods in Natural Language Processing: Industry Track},
pages={1393--1412},
year={2024}
}