🚀 Arabic-Retrieval-v1.0
这是一个基于强大的 sentence-transformers 框架构建的高性能阿拉伯语信息检索模型,它具备 顶尖的性能,专为阿拉伯语的丰富性和复杂性量身定制。
🚀 快速开始
安装依赖
首先,你需要安装 Sentence Transformers 库:
pip install -U sentence-transformers
加载模型并推理
安装完成后,你可以加载此模型并进行推理。在检索时,务必按照以下方式为查询和段落添加前缀 <query>:
和 <passage>:
:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("omarelshehy/Arabic-Retrieval-v1.0")
query = "<query>: كيف يمكن للذكاء الاصطناعي تحسين طرق التدريس التقليدية؟"
passages = [
"<passage>: طرق التدريس التقليدية تستفيد من الذكاء الاصطناعي عبر تحسين عملية المتابعة وتخصيص التجربة التعليمية. يقوم الذكاء الاصطناعي بتحليل بيانات الطلاب وتقديم توصيات فعالة للمعلمين حول طرق التدريس الأفضل.",
"<passage>: تطوير التعليم الشخصي يعتمد بشكل كبير على الذكاء الاصطناعي، الذي يقوم بمتابعة تقدم الطلاب بشكل فردي. يقدم الذكاء الاصطناعي حلولاً تعليمية مخصصة لكل طالب بناءً على مستواه وأدائه.",
"<passage>: الدقة في تقييم الطلاب تتزايد بفضل الذكاء الاصطناعي الذي يقارن النتائج مع معايير متقدمة. بالرغم من التحديات التقليدية، الذكاء الاصطناعي يوفر أدوات تحليل تتيح تقييماً أدق لأداء الطلاب."
]
embeddings_query = model.encode(query)
embeddings_passages = model.encode(passages)
similarities = model.similarity(embeddings_query, embeddings_passages)
best_match = passages[similarities.argmax().item()]
print(f"Best matching passage is {best_match}")
✨ 主要特性
- 🔥 卓越性能:可与
e5-multilingual-large
等顶级多语言模型的准确性相媲美。详情见 评估。
- 💡 专注阿拉伯语:专门针对阿拉伯语的细微差别和方言进行设计,确保结果更加准确且具有上下文感知能力。
- 📉 轻量级高效性:所需内存比其他模型 少 25%-50%,非常适合资源有限的环境或边缘部署。
🌍 选择此模型的原因
多语言模型功能强大,但通常体积庞大,且未针对特定语言进行优化。该模型弥补了这一差距,在不牺牲性能和效率的前提下,提供了阿拉伯语原生能力。无论你是在开发搜索引擎、聊天机器人还是大规模 NLP 管道,此模型都能提供 快速、准确且资源高效的解决方案。
📚 详细文档
模型详情
模型描述
属性 |
详情 |
模型类型 |
Sentence Transformer |
最大序列长度 |
512 个词元 |
输出维度 |
768 个词元 |
相似度函数 |
余弦相似度 |
完整模型架构
SentenceTransformer(
(0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: BertModel
(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})
)
评估
该模型使用 3 种不同的数据集和 NDCG@10 指标进行评估:
并与其他高性能模型进行了比较:
模型 |
数据集 1 |
数据集 2 |
数据集 3 |
Arabic-Retrieval-v1.0 |
0.875 |
0.72 |
0.679 |
intfloat/multilingual-e5-large |
0.89 |
0.719 |
0.698 |
intfloat/multilingual-e5-base |
0.87 |
0.69 |
0.686 |
📄 许可证
本项目采用 apache-2.0
许可证。
🔧 技术细节
引用
BibTeX
@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",
}
MultipleNegativesRankingLoss
@misc{henderson2017efficient,
title={Efficient Natural Language Response Suggestion for Smart Reply},
author={Matthew Henderson and Rami Al-Rfou and Brian Strope and Yun-hsuan Sung and Laszlo Lukacs and Ruiqi Guo and Sanjiv Kumar and Balint Miklos and Ray Kurzweil},
year={2017},
eprint={1705.00652},
archivePrefix={arXiv},
primaryClass={cs.CL}
}