# المصادقة

تتيح مكتبة `huggingface_hub` للمستخدمين إدارة المصادقة على Hub برمجياً. ويشمل ذلك تسجيل الدخول، وتسجيل الخروج، والتبديل بين الرموز، وقائمة الرموز المتاحة.

لمزيد من التفاصيل حول المصادقة، راجع [هذا القسم](../quick-start#authentication).

## تسجيل الدخول[[huggingface_hub.login]]

#### huggingface_hub.login[[huggingface_hub.login]]

```python
huggingface_hub.login(token: str | None = None, add_to_git_credential: bool = False, skip_if_logged_in: bool = True)
```

[المصدر](https://github.com/huggingface/huggingface_hub/blob/v2.4.0/src/huggingface_hub/_login.py#L57)

**المعاملات:**

token (`str`، *اختياري*) : رمز وصول المستخدم لإنشائه من https://huggingface.co/settings/token.

add_to_git_credential (`bool`، القيمة الافتراضية `False`) : إذا كانت `True`، فسيتم تعيين الرمز كاعتمادية git. إذا لم يتم تكوين مساعد اعتمادية git، فسيتم عرض تحذير للمستخدم. يُستخدم فقط عند توفير `token`؛ ويُتجاهل في التدفق القائم على المتصفح.

skip_if_logged_in (`bool`، القيمة الافتراضية `True`) : إذا كانت `True`، فلا تطلب رمز المصادقة إذا كان المستخدم مسجلاً بالفعل. اضبطها على `False` لإجبار تسجيل الدخول من جديد. في سطر الأوامر، استخدم `--force` بدلاً من ذلك.

**يرفع:** ``ValueError`` أو `DeviceCodeError`

- [`ValueError`](https://docs.python.org/3/library/exceptions.html#ValueError) -- إذا تم تمرير رمز منظمة. الرموز الخاصة بالحسابات الشخصية فقط هي الصالحة لتسجيل الدخول.
- [`ValueError`](https://docs.python.org/3/library/exceptions.html#ValueError) -- إذا كان الرمز غير صالح.
- `DeviceCodeError` -- إذا فشل تسجيل الدخول عبر المتصفح (تم رفض التفويض، انتهت صلاحية الرمز، ...).

سجّل الدخول إلى الجهاز للوصول إلى Hub.

يتم حفظ `token` في ذاكرة التخزين المؤقت وإعداده كإذن git. بعد الانتهاء، تكون الآلة مسجّلة الدخول، وسيصبح رمز الوصول متاحًا عبر جميع مكوّنات `huggingface_hub`. إذا لم يتم تقديم `token`، يُستخدم تدفق OAuth القائم على المتصفح للمصادقة: افتح رابط URL، أدخل رمزًا قصيرًا، ثم يتم استرداد الرمز وحفظه. في الطرفية، يمكنك أيضًا اختيار لصق رمز وصول قائم بدلاً من ذلك.

للتسجيل من خارج السكربت، يمكن أيضًا استخدام `hf auth login` وهو أمر سطر أوامر يغلّف [login()](/docs/huggingface_hub/v2.4.0/ar/package_reference/authentication#huggingface_hub.login).

> [!TIP]
> عند عدم تمرير الرمز، سيقوم [login()](/docs/huggingface_hub/v2.4.0/ar/package_reference/authentication#huggingface_hub.login) تلقائيًا بالكشف عما إذا كان السكربت يعمل في دفتر ملاحظات أم لا. ومع ذلك، قد لا يكون هذا الكشف دقيقًا بسبب تنوع دفاتر الملاحظات الموجودة حاليًا. في هذه الحالة، يمكنك دائمًا إجبار الواجهة على استخدام [notebook_login()](/docs/huggingface_hub/v2.4.0/ar/package_reference/authentication#huggingface_hub.notebook_login) أو [interpreter_login()](/docs/huggingface_hub/v2.4.0/ar/package_reference/authentication#huggingface_hub.interpreter_login).

## interpreter_login[[huggingface_hub.interpreter_login]]

#### huggingface_hub.interpreter_login[[huggingface_hub.interpreter_login]]

```python
huggingface_hub.interpreter_login(skip_if_logged_in: bool = True)
```

[المصدر](https://github.com/huggingface/huggingface_hub/blob/v2.4.0/src/huggingface_hub/_login.py#L284)

**المعاملات:**

skip_if_logged_in (`bool`، القيمة الافتراضية `True`) : إذا كانت `True`، فلا تطلب رمز المصادقة إذا كان المستخدم مسجلاً بالفعل. اضبطها على `False` لإجبار تسجيل الدخول من جديد. في سطر الأوامر، استخدم `--force` بدلاً من ذلك.

يعرض مطالبة لتسجيل الدخول إلى موقع HF وحفظ الرمز.

يُعدّ هذا مكافئًا لاستدعاء [login()](/docs/huggingface_hub/v2.4.0/ar/package_reference/authentication#huggingface_hub.login) دون تمرير رمز عند عدم التشغيل في دفتر ملاحظات. يُفيد استخدام [interpreter_login()](/docs/huggingface_hub/v2.4.0/ar/package_reference/authentication#huggingface_hub.interpreter_login) إذا كنت ترغب في فرض استخدام موجه الطرفية بدلاً من تدفق دفتر الملاحظات.

لمزيد من التفاصيل، راجع [login()](/docs/huggingface_hub/v2.4.0/ar/package_reference/authentication#huggingface_hub.login).

## notebook_login[[huggingface_hub.notebook_login]]

#### huggingface_hub.notebook_login[[huggingface_hub.notebook_login]]

```python
huggingface_hub.notebook_login(skip_if_logged_in: bool = True)
```

[المصدر](https://github.com/huggingface/huggingface_hub/blob/v2.4.0/src/huggingface_hub/_login.py#L335)

**المعاملات:**

skip_if_logged_in (`bool`، القيمة الافتراضية `True`) : إذا كانت `True`، فلا تطلب رمز المصادقة إذا كان المستخدم مسجلاً بالفعل. اضبطها على `False` لإجبار تسجيل الدخول من جديد. في سطر الأوامر، استخدم `--force` بدلاً من ذلك.

يعرض مطالبة لتسجيل الدخول إلى موقع HF وحفظ الرمز.

يعادل هذا الأمر [login()](/docs/huggingface_hub/v2.4.0/ar/package_reference/authentication#huggingface_hub.login) دون تمرير رمز عند التشغيل في دفتر ملاحظات. يكون [notebook_login()](/docs/huggingface_hub/v2.4.0/ar/package_reference/authentication#huggingface_hub.notebook_login) مفيداً إذا كنت ترغب في إجبار استخدام تدفق دفتر الملاحظات بدلاً من مطالبة في الطرفية.

لمزيد من التفاصيل، راجع [login()](/docs/huggingface_hub/v2.4.0/ar/package_reference/authentication#huggingface_hub.login).

## تسجيل الخروج[[huggingface_hub.logout]]

#### huggingface_hub.logout[[huggingface_hub.logout]]

```python
huggingface_hub.logout(token_name: str | None = None)
```

[المصدر](https://github.com/huggingface/huggingface_hub/blob/v2.4.0/src/huggingface_hub/_login.py#L120)

**المعاملات:**

token_name (`str`، *اختياري*) : اسم رمز الوصول الذي سيتم تسجيل الخروج منه. إذا كان `None`، فسيتم تسجيل الخروج من جميع رموز الوصول المحفوظة.

**يرفع:** ``ValueError``

- [`ValueError`](https://docs.python.org/3/library/exceptions.html#ValueError) -- إذا لم يتم العثور على اسم رمز الوصول.

سجّل خروج الجهاز من Hub.

يتم حذف الرمز من الجهاز وإزالته من بيانات اعتماد git.

## auth_switch[[huggingface_hub.auth_switch]]

#### huggingface_hub.auth_switch[[huggingface_hub.auth_switch]]

```python
huggingface_hub.auth_switch(token_name: str, add_to_git_credential: bool = False)
```

[المصدر](https://github.com/huggingface/huggingface_hub/blob/v2.4.0/src/huggingface_hub/_login.py#L162)

**المعاملات:**

token_name (`str`) : اسم رمز الوصول الذي سيتم التبديل إليه.

add_to_git_credential (`bool`، القيمة الافتراضية `False`) : إذا كانت `True`، فسيتم تعيين الرمز كاعتمادية git. إذا لم يتم تكوين مساعد اعتمادية git، فسيتم عرض تحذير للمستخدم. إذا كان `token` هو `None`، فسيتم تجاهل قيمة `add_to_git_credential` وسيتم طلب الإدخال من المستخدم النهائي مرة أخرى.

**يرفع:** ``ValueError``

- [`ValueError`](https://docs.python.org/3/library/exceptions.html#ValueError) -- إذا لم يتم العثور على اسم رمز الوصول.

التبديل إلى رمز وصول مختلف.

## auth_list[[huggingface_hub.auth_list]]

#### huggingface_hub.auth_list[[huggingface_hub.auth_list]]

```python
huggingface_hub.auth_list()
```

[المصدر](https://github.com/huggingface/huggingface_hub/blob/v2.4.0/src/huggingface_hub/_login.py#L191)

list_access_tokens

