🚀 Ara - EuroBERT:针对阿拉伯语优化的句子转换器
Ara - EuroBERT是一个基于sentence - transformers的模型,它从[EuroBERT/EuroBERT - 210m](https://huggingface.co/EuroBERT/EuroBERT - 210m)微调而来,专门针对阿拉伯语语义文本嵌入进行了优化。该模型能将句子和段落映射到一个768维的密集向量空间,并且最大序列长度可达8192个标记。
论文链接:
你可以在https://huggingface.co/EuroBERT/EuroBERT - 210m找到关于基础模型的更多信息。

与基础模型相比,我们微调后的模型有显著改进。与基础的EuroBERT - 210M相比,在STS17上实现了73.5%的相对提升,在STS22.v2上实现了21.6%的相对提升。
✨ 主要特性
- 语义文本嵌入:专门为阿拉伯语语义文本嵌入进行优化,能将句子和段落映射到768维的密集向量空间。
- 长序列处理:最大序列长度可达8192个标记,可处理较长的文本。
- 灵活的嵌入维度:采用Matryoshka表示学习进行训练,无需重新训练即可灵活调整嵌入维度。
- 性能提升:与基础模型相比,在STS17和STS22.v2上有显著的相对提升。
📦 安装指南
pip install -U sentence-transformers
💻 使用示例
基础用法
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("Omartificial-Intelligence-Space/AraEuroBert-210M")
sentences = [
'التقدم العلمي في مجال الذكاء الاصطناعي يتسارع بشكل ملحوظ في السنوات الأخيرة',
'تطوير نماذج لغوية متقدمة يساهم في تحسين فهم اللغة العربية آليًا',
'أصبحت تقنيات معالجة اللغات الطبيعية جزءًا أساسيًا من التطبيقات الحديثة',
'يعاني الشرق الأوسط من تحديات مناخية متزايدة تهدد الأمن المائي والغذائي',
'تراث الأدب العربي غني بالقصائد والروايات التي تعكس تاريخ وثقافة المنطقة',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
from sentence_transformers import util
similarities = util.cos_sim(embeddings, embeddings)
print(similarities)
高级用法
embeddings_768 = model.encode(sentences)
embeddings_256 = model.encode(sentences, truncate_dim=256)
embeddings_64 = model.encode(sentences, truncate_dim=64)
📚 详细文档
模型详情
属性 |
详情 |
模型类型 |
带有Matryoshka嵌入的句子转换器 |
基础模型 |
[EuroBERT/EuroBERT - 210m](https://huggingface.co/EuroBERT/EuroBERT - 210m) |
最大序列长度 |
8192个标记 |
输出维度 |
维度为[768, 512, 256, 128, 64]的Matryoshka嵌入 |
相似度函数 |
余弦相似度 |
语言 |
针对阿拉伯语进行优化 |
许可证 |
与EuroBERT相同(MIT) |
Matryoshka嵌入
该模型采用Matryoshka表示学习进行训练,允许在不重新训练的情况下灵活调整嵌入维度。你可以为了提高效率使用较小的维度(64、128、256、512),或者为了获得最佳性能使用完整的768维。即使在降低维度的情况下,模型仍能保持较强的性能:
维度 |
Spearman相关性(STS Dev) |
768 |
0.8101 |
512 |
0.8088 |
256 |
0.8081 |
128 |
0.8055 |
64 |
0.7976 |
完整模型架构
SentenceTransformer(
(0): Transformer({'max_seq_length': 8192, 'do_lower_case': False}) with Transformer model: EuroBertModel
(1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
)
用例
该模型在各种阿拉伯语NLP任务中表现出色:
- 语义文本相似度
- 语义搜索和信息检索
- 文档聚类和分类
- 问答系统
- 释义检测
- 零样本分类
训练方法
- 损失函数:带有MultipleNegativesRankingLoss的MatryoshkaLoss
- Matryoshka维度:[768, 512, 256, 128, 64]
- 批量大小:32
- 轮数:1(带有提前停止机制)
- 优化器:AdamW
- 学习率:5e - 05,采用线性调度器和10%的热身
- 硬件:多个NVIDIA GPU,采用混合精度(fp16)
基础模型:EuroBERT
EuroBERT是一个新的多语言编码器模型家族,专门为欧洲和广泛使用的全球语言设计。与传统的多语言编码器相比,它具有以下优势:
- 广泛的多语言覆盖:在包含15种语言的5万亿标记数据集上进行训练。
- 先进的架构:使用分组查询注意力、旋转位置嵌入和RMS归一化。
- 长上下文支持:原生支持处理多达8192个标记。
- 专业知识:包含数学和编程语言数据,以提高推理能力。
局限性和建议
⚠️ 重要提示
- 该模型主要针对阿拉伯语文本进行优化,在其他语言上的性能可能不佳。
- 对于训练数据中未充分体现的专业领域,性能可能会有所不同。
💡 使用建议
- 对于短文本(<5个单词),考虑添加上下文以获得更好的表示。
- 对于极长的文档,考虑在编码之前将其拆分为有意义的块。
引用
如果您在研究中使用了该模型,请引用以下作品:
@misc{boizard2025eurobertscalingmultilingualencoders,
title={EuroBERT: Scaling Multilingual Encoders for European Languages},
author={Nicolas Boizard and Hippolyte Gisserot-Boukhlef and Duarte M. Alves and André Martins and Ayoub Hammal and Caio Corro and Céline Hudelot and Emmanuel Malherbe and Etienne Malaboeuf and Fanny Jourdan and Gabriel Hautreux and João Alves and Kevin El-Haddad and Manuel Faysse and Maxime Peyrard and Nuno M. Guerreiro and Patrick Fernandes and Ricardo Rei and Pierre Colombo},
year={2025},
eprint={2503.05500},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2503.05500},
}
@inproceedings{reimers-2019-sentence-bert,
title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
author = "Reimers, Nils and Gurevych, Iryna",
booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
month = "11",
year = "2019",
publisher = "Association for Computational Linguistics",
url = "https://arxiv.org/abs/1908.10084",
}
@misc{kusupati2024matryoshka,
title={Matryoshka Representation Learning},
author={Aditya Kusupati and Gantavya Bhatt and Aniket Rege and Matthew Wallingford and Aditya Sinha and Vivek Ramanujan and William Howard-Snyder and Kaifeng Chen and Sham Kakade and Prateek Jain and Ali Farhadi},
year={2024},
eprint={2205.13147},
archivePrefix={arXiv},
primaryClass={cs.LG}
}
模型索引
名称 |
任务类型 |
数据集 |
指标 |
值 |
SentenceTransformer based on EuroBERT/EuroBERT - 210m |
语义相似度 |
sts dev 768 |
Pearson Cosine |
0.8111988062913815 |
SentenceTransformer based on EuroBERT/EuroBERT - 210m |
语义相似度 |
sts dev 768 |
Spearman Cosine |
0.8100586279907306 |
SentenceTransformer based on EuroBERT/EuroBERT - 210m |
语义相似度 |
sts dev 512 |
Pearson Cosine |
0.8092891955563192 |
SentenceTransformer based on EuroBERT/EuroBERT - 210m |
语义相似度 |
sts dev 512 |
Spearman Cosine |
0.8087644228771842 |
SentenceTransformer based on EuroBERT/EuroBERT - 210m |
语义相似度 |
sts dev 256 |
Pearson Cosine |
0.8076510620939634 |
SentenceTransformer based on EuroBERT/EuroBERT - 210m |
语义相似度 |
sts dev 256 |
Spearman Cosine |
0.8080588277305082 |
SentenceTransformer based on EuroBERT/EuroBERT - 210m |
语义相似度 |
sts dev 128 |
Pearson Cosine |
0.8028710019029521 |
SentenceTransformer based on EuroBERT/EuroBERT - 210m |
语义相似度 |
sts dev 128 |
Spearman Cosine |
0.8054855987917489 |
SentenceTransformer based on EuroBERT/EuroBERT - 210m |
语义相似度 |
sts dev 64 |
Pearson Cosine |
0.7923252906438638 |
SentenceTransformer based on EuroBERT/EuroBERT - 210m |
语义相似度 |
sts dev 64 |
Spearman Cosine |
0.7975941111911333 |
小部件示例
源句子 |
对比句子 |
امرأة شقراء تطل على مشهد (سياتل سبيس نيدل) |
1. رجل يستمتع بمناظر جسر البوابة الذهبية 2. فتاة بالخارج تلعب في الثلج 3. شخص ما يأخذ في نظرة إبرة الفضاء. |
سوق الشرق الأوسط |
1. مسرح أمريكي 2. متجر في الشرق الأوسط 3. البالغون صغار |
رجلين يتنافسان في ملابس فنون الدفاع عن النفس |
1. هناك العديد من الناس الحاضرين. 2. الكلب الأبيض على الشاطئ 3. هناك شخص واحد فقط موجود. |
مجموعة من الناس تمشي بجانب شاحنة. |
1. الناس يقفون 2. بعض الناس بالخارج 3. بعض الرجال يقودون على الطريق |
لاعبة كرة ناعمة ترمي الكرة إلى زميلتها في الفريق |
1. شخصان يلعبان كرة البيسبول 2. الرجل ينظف 3. لاعبين لكرة البيسبول يجلسان على مقعد |
许可证
本模型使用的许可证与EuroBERT相同,为MIT许可证。