# استخدام Sentence Transformers في Hugging Face

`sentence-transformers` هي مكتبة توفر طرقًا سهلة لحساب التضمينات (تمثيلات متجهات كثيفة) للجمل والفقرات والصور. يتم تضمين النصوص في فضاء متجهي بحيث تكون النصوص المتشابهة قريبة من بعضها، مما يتيح تطبيقات مثل البحث الدلالي، والتجميع، والاسترجاع.

## استكشاف sentence-transformers في Hub

يمكنك العثور على أكثر من 500 نموذج `sentence-transformer` من خلال التصفية على يسار [صفحة النماذج](https://huggingface.co/models?library=sentence-transformers&sort=downloads). تدعم معظم هذه النماذج مهام مختلفة، مثل إجراء [`feature-extraction`](https://huggingface.co/models?library=sentence-transformers&pipeline_tag=feature-extraction&sort=downloads) لتوليد التضمين، و [`sentence-similarity`](https://huggingface.co/models?library=sentence-transformers&pipeline_tag=sentence-similarity&sort=downloads) كطريقة لتحديد مدى تشابه جملة معينة مع أخرى. كما يمكنك العثور على نظرة عامة على النماذج المُدرَّبة مسبقًا الرسمية في [التوثيق الرسمي](https://www.sbert.net/docs/pretrained_models.html).

تأتي جميع النماذج على Hub مع ميزات:
1. بطاقة نموذج مُولَّدة تلقائيًا تتضمن وصفًا، ومقاطع أكواد أمثلة، ونظرة عامة على البنية المعمارية، والمزيد.
2. وسوم البيانات الوصفية التي تساعد في إمكانية الاكتشاف وتحتوي على معلومات مثل الترخيص.
3. مكوّن تفاعلي يمكنك استخدامه للتجربة مع النموذج مباشرةً في المتصفح.
4. مكوّن مزوّدي الاستدلال الذي يتيح إرسال طلبات الاستدلال.

## استخدام نماذج موجودة

يمكن تحميل النماذج المُدرَّبة مسبقًا على Hub بسطر واحد من الكود

```py
from sentence_transformers import SentenceTransformer
model = SentenceTransformer('model_name')
```

فيما يلي مثال يرمّز الجمل ثم يحسب المسافة بينها لأداء البحث الدلالي.

```py
from sentence_transformers import SentenceTransformer, util
model = SentenceTransformer('multi-qa-MiniLM-L6-cos-v1')

query_embedding = model.encode('How big is London')
passage_embedding = model.encode(['London has 9,787,426 inhabitants at the 2011 census',
                                  'London is known for its financial district'])

print("Similarity:", util.dot_score(query_embedding, passage_embedding))
```

إذا كنت ترغب في معرفة كيفية تحميل نموذج محدد، يمكنك النقر على `Use in sentence-transformers` وستحصل على مقتطف برمجي جاهز للتشغيل يمكنك من خلاله تحميل النموذج!

## مشاركة نماذجك

يمكنك مشاركة نماذج Sentence Transformers الخاصة بك باستخدام طريقة `save_to_hub` من نموذج مدرَّب.

```py
from sentence_transformers import SentenceTransformer

# Load or train a model
model.save_to_hub("my_new_model")
```

ينشئ هذا الأمر مستودعًا مع بطاقة نموذج مُولَّدة تلقائيًا، ومكوّن استنتاج، ومقاطع أكواد أمثلة، والمزيد! [هنا](https://huggingface.co/osanseviero/my_new_model) مثال.

## موارد إضافية

* مكتبة [Sentence Transformers](https://github.com/UKPLab/sentence-transformers).
* توثيقات [Sentence Transformers](https://www.sbert.net/).
* التكامل مع [إعلان](https://huggingface.co/blog/sentence-transformers-in-the-hub) Hub.

