# الانتقال إلى huggingface_hub v2.0

`huggingface_hub` الإصدار 2.0 يستبدل تبعيته على HTTP بـ [`httpx2`](https://httpx2.pydantic.dev/) ويحذف واجهات برمجة التطبيقات 1.x التي لم تعد مدعومة. أصبحت عملاء HTTP والاستثناءات تأتي من حزمة منفصلة.

لدعم كل من `huggingface_hub` الإصدار 1.x (بدءًا من الإصدار 1.30.0) والإصدار 2.x، استورد وحدة HTTP من `huggingface_hub.utils`:

```python
from huggingface_hub.utils import get_session, httpx

try:
    response = get_session().get("https://huggingface.co/api/models/gpt2")
    response.raise_for_status()
except httpx.HTTPError:
    ...
```

استخدم هذا الاستيراد نفسه عند إنشاء عملاء مخصصين لـ [set_client_factory()](/docs/huggingface_hub/v2.4.0/ar/package_reference/utilities#huggingface_hub.set_client_factory) أو [set_async_client_factory()](/docs/huggingface_hub/v2.4.0/ar/package_reference/utilities#huggingface_hub.set_async_client_factory). العملاء والاستثناءات من حزمة HTTP القديمة مختلفة عن تلك الموجودة في `httpx2` ولا يمكن استخدامها بالتبادل.

`httpx2` يستخدم مخزن شهادات الثقة الخاص بنظام التشغيل افتراضيًا. لا تزال حزم CA المخصصة المُعدّة عبر `SSL_CERT_FILE` أو `SSL_CERT_DIR` مدعومة. يجب أن يستهدف تكوين التسجيل `httpx2` و`httpcore2` بدلاً من أسماء السجلات القديمة. راجع [دليل الترحيل من المصدر](https://httpx2.pydantic.dev/migration/) للتفاصيل.

يتطلب الإصدار الإضافي `oauth` الآن `authlib>=1.8.0` لدعم `httpx2`.

## تمت إزالة واجهات برمجة التطبيقات غير المدعومة

- استخدم `upload_folder` بدلاً من `upload_large_folder` أو `HfApi.upload_large_folder`.
- استخدم `duplicate_repo` و`set_space_volumes` و`delete_space_volumes` بدلاً من `duplicate_space` و`request_space_storage` و`delete_space_storage`.
- استخدم `parse_hf_uri` بدلاً من `repo_type_and_id_from_hf_id`، و`list_models(search=...)` بدلاً من `model_name=...`.
- استخدم `space_volumes` بدلاً من `space_storage` في `create_repo` و`duplicate_repo`.
- استخدم `InferenceEndpointType.AUTHENTICATED` أو `type="authenticated"` بدلاً من `PROTECTED` أو `type="protected"`.
- استخدم `text_generation(stop=...)` بدلاً من `stop_sequences=...`، ومرر سلسلة رموز أو `None` إلى `InferenceClient` بدلاً من قيمة منطقية.
- استخدم `hf` بدلاً من `huggingface-cli`؛ حيث تم استبدال `hf repo` و`hf repo-files delete` بـ`hf repos` و`hf repos delete-files`.
- استخدم `hf upload` بدلاً من `hf upload-large-folder`؛ واستخدم `--volume` بدلاً من `--storage` لإنشاء المستودعات وتكرارها، و`--status` أو `--label` بدلاً من `hf jobs ps --filter`.
- تمت إزالة الخيار `--claude` الذي لم يعد مدعوماً في `hf skills add` و`hf skills update`. يتم تثبيت المهارات لـ Claude Code تلقائياً.

لمزيد من السياق، راجع مشروع [`httpx2`](https://github.com/pydantic/httpx2)، ووثائق [`httpx2`](https://pydantic.dev/docs/httpx2/)، ودليل الانتقال [من `httpx` إلى `httpx2`](https://httpx2.pydantic.dev/migration/)، وخطة الانتقال الخاصة بـ [`huggingface_hub`](https://github.com/huggingface/huggingface_hub/issues/4802).

