🚀 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}
}