🚀 引入 ARM-V1 | 阿拉伯語重排模型(版本1)
ARM-V1 是專門為阿拉伯語重排任務設計的模型,能夠精準處理查詢和段落,直接評估問題與文檔之間的相似度並輸出相關性得分,在識別最相關結果方面表現出色。
更多信息請參考此博客:ARM | 阿拉伯語重排模型。
✨ 主要特性
- 專為阿拉伯語重排任務量身定製,能精確處理查詢和段落。
- 與嵌入模型不同,該重排器直接評估問題與文檔的相似度,輸出相關性得分。
- 通過正負查詢 - 段落對組合進行訓練,擅長識別最相關的結果。
- 輸出分數可使用 sigmoid 函數轉換到 [0, 1] 範圍,提供清晰且可解釋的相關性度量。
📚 詳細文檔
阿拉伯語 RAG 流程

💻 使用示例
基礎用法
使用 sentence-transformers
庫調用模型:
pip install sentence-transformers
from sentence_transformers import CrossEncoder
query = "تطبيقات الذكاء الاصطناعي تُستخدم في مختلف المجالات لتحسين الكفاءة."
candidates = [
"الذكاء الاصطناعي يساهم في تحسين الإنتاجية في الصناعات المختلفة.",
"نماذج التعلم الآلي يمكنها التعرف على الأنماط في مجموعات البيانات الكبيرة.",
"الذكاء الاصطناعي يساعد الأطباء في تحليل الصور الطبية بشكل أفضل.",
"تستخدم الحيوانات التمويه كوسيلة للهروب من الحيوانات المفترسة.",
]
query_candidate_pairs = [(query, candidate) for candidate in candidates]
scores = model.predict(query_candidate_pairs)
ranked_candidates = sorted(zip(candidates, scores), key=lambda x: x[1], reverse=True)
print("Ranked candidates based on relevance to the query:")
for i, (candidate, score) in enumerate(ranked_candidates, 1):
print(f"Rank {i}:")
print(f"Candidate: {candidate}")
print(f"Score: {score}\n")
🔧 技術細節
評估
數據集
- 規模:3000 個樣本。
- 結構:
- 查詢:代表用戶問題的字符串。
- 候選文檔:用於回答查詢的候選段落。
- 相關性標籤:二進制標籤(相關為 1,不相關為 0)。
評估過程
- 查詢分組:對查詢進行分組,以評估模型為每個查詢正確排序候選文檔的能力。
- 模型預測:每個模型為與查詢對應的所有候選文檔預測相關性得分。
- 指標計算:計算指標以衡量模型將相關文檔排在不相關文檔之上的能力。
模型 |
MRR |
MAP |
nDCG@10 |
cross-encoder/ms - marco - MiniLM - L - 6 - v2 |
0.631 |
0.6313 |
0.725 |
cross-encoder/ms - marco - MiniLM - L - 12 - v2 |
0.664 |
0.664 |
0.750 |
BAAI/bge - reranker - v2 - m3 |
0.902 |
0.902 |
0.927 |
Omartificial - Intelligence - Space/ARA - Reranker - V1 |
0.934 |
0.9335 |
0.951 |
📄 許可證
本項目採用 Apache 2.0 許可證。
📖 致謝
作者感謝蘇丹王子大學在本項目中提供的寶貴支持。他們的貢獻和資源對這些模型的開發和微調起到了重要作用。
📚 引用
如果您使用了 ARM-V1 模型,請按以下方式引用:
@misc{nacar2025ARM,
title={ARM, Arabic Reranker Model},
author={Omer Nacar},
year={2025},
url={https://huggingface.co/Omartificial-Intelligence-Space/ARA-Reranker-V1},
}