# ملفات مفردة

تتيح لك الطريقة [from_single_file()](/docs/diffusers/main/ar/api/loaders/single_file#diffusers.loaders.FromSingleFileMixin.from_single_file) تحميل:

* نموذج مخزّن في ملف واحد، وهو مفيد إذا كنت تعمل مع نماذج من نظام بيئي الانتشار، مثل Automatic1111، وتعتمد بشكل شائع على تخطيط الملف الواحد لتخزين النماذج ومشاركتها
* نموذج مخزّن في تخطيطه الأصلي الموزّع، وهو مفيد إذا كنت تعمل مع نماذج مُعدّلة باستخدام خدمات أخرى، وتريد تحميله مباشرةً في كائنات خطوط أنابيب نماذج Diffusers

> [!TIP]
> اقرأ دليل [ملفات النماذج والتخطيطات](../../using-diffusers/other-formats) لمعرفة المزيد حول تخطيط Diffusers متعدد المجلدات مقارنةً بتخطيط الملف الواحد، وكيفية تحميل النماذج المخزنة في هذه التخطيطات المختلفة.

## خطوط الأنابيب المدعومة

- [StableDiffusionPipeline](/docs/diffusers/main/ar/api/pipelines/stable_diffusion/text2img#diffusers.StableDiffusionPipeline)
- [StableDiffusionImg2ImgPipeline](/docs/diffusers/main/ar/api/pipelines/stable_diffusion/img2img#diffusers.StableDiffusionImg2ImgPipeline)
- [StableDiffusionInpaintPipeline](/docs/diffusers/main/ar/api/pipelines/stable_diffusion/inpaint#diffusers.StableDiffusionInpaintPipeline)
- [StableDiffusionControlNetPipeline](/docs/diffusers/main/ar/api/pipelines/controlnet#diffusers.StableDiffusionControlNetPipeline)
- [StableDiffusionControlNetImg2ImgPipeline](/docs/diffusers/main/ar/api/pipelines/controlnet#diffusers.StableDiffusionControlNetImg2ImgPipeline)
- [StableDiffusionControlNetInpaintPipeline](/docs/diffusers/main/ar/api/pipelines/controlnet#diffusers.StableDiffusionControlNetInpaintPipeline)
- [StableDiffusionUpscalePipeline](/docs/diffusers/main/ar/api/pipelines/stable_diffusion/upscale#diffusers.StableDiffusionUpscalePipeline)
- [StableDiffusionXLPipeline](/docs/diffusers/main/ar/api/pipelines/stable_diffusion/stable_diffusion_xl#diffusers.StableDiffusionXLPipeline)
- [StableDiffusionXLImg2ImgPipeline](/docs/diffusers/main/ar/api/pipelines/stable_diffusion/stable_diffusion_xl#diffusers.StableDiffusionXLImg2ImgPipeline)
- [StableDiffusionXLInpaintPipeline](/docs/diffusers/main/ar/api/pipelines/stable_diffusion/stable_diffusion_xl#diffusers.StableDiffusionXLInpaintPipeline)
- [StableDiffusionXLInstructPix2PixPipeline](/docs/diffusers/main/ar/api/pipelines/pix2pix#diffusers.StableDiffusionXLInstructPix2PixPipeline)
- [StableDiffusionXLControlNetPipeline](/docs/diffusers/main/ar/api/pipelines/controlnet_sdxl#diffusers.StableDiffusionXLControlNetPipeline)
- `StableDiffusionXLKDiffusionPipeline`
- [StableDiffusion3Pipeline](/docs/diffusers/main/ar/api/pipelines/stable_diffusion/stable_diffusion_3#diffusers.StableDiffusion3Pipeline)
- [LatentConsistencyModelPipeline](/docs/diffusers/main/ar/api/pipelines/latent_consistency_models#diffusers.LatentConsistencyModelPipeline)
- [LatentConsistencyModelImg2ImgPipeline](/docs/diffusers/main/ar/api/pipelines/latent_consistency_models#diffusers.LatentConsistencyModelImg2ImgPipeline)
- `StableDiffusionControlNetXSPipeline`
- `StableDiffusionXLControlNetXSPipeline`
- [LEditsPPPipelineStableDiffusion](/docs/diffusers/main/ar/api/pipelines/ledits_pp#diffusers.LEditsPPPipelineStableDiffusion)
- [LEditsPPPipelineStableDiffusionXL](/docs/diffusers/main/ar/api/pipelines/ledits_pp#diffusers.LEditsPPPipelineStableDiffusionXL)
- `PIAPipeline`

## النماذج المدعومة

- [UNet2DConditionModel](/docs/diffusers/main/ar/api/models/unet2d-cond#diffusers.UNet2DConditionModel)
- `StableCascadeUNet`
- [AutoencoderKL](/docs/diffusers/main/ar/api/models/autoencoderkl#diffusers.AutoencoderKL)
- [ControlNetModel](/docs/diffusers/main/ar/api/models/controlnet#diffusers.ControlNetModel)
- [SD3Transformer2DModel](/docs/diffusers/main/ar/api/models/sd3_transformer2d#diffusers.SD3Transformer2DModel)
- [FluxTransformer2DModel](/docs/diffusers/main/ar/api/models/flux_transformer#diffusers.FluxTransformer2DModel)

## FromSingleFileMixin[[diffusers.loaders.FromSingleFileMixin]]

#### diffusers.loaders.FromSingleFileMixin[[diffusers.loaders.FromSingleFileMixin]]

```python
diffusers.loaders.FromSingleFileMixin()
```

[المصدر](https://github.com/huggingface/diffusers/blob/main/src/diffusers/loaders/single_file.py#L243)

حمّل أوزان النموذج المحفوظة بتنسيق `.ckpt` في [DiffusionPipeline](/docs/diffusers/main/ar/api/pipelines/overview#diffusers.DiffusionPipeline).

#### from_single_file[[diffusers.loaders.FromSingleFileMixin.from_single_file]]

```python
from_single_file(pretrained_model_link_or_path, **kwargs)
```

[المصدر](https://github.com/huggingface/diffusers/blob/main/src/diffusers/loaders/single_file.py#L248)

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

pretrained_model_link_or_path (`str` أو `os.PathLike`، *اختياري*) : يمكن أن يكون أحد ما يلي: - رابط إلى ملف `.ckpt` (على سبيل المثال `"https://huggingface.co/<repo_id>/blob/main/<path_to_file>.ckpt"`) على Hub. - مسار إلى *ملف* يحتوي على جميع أوزان خط المعالجة.

dtype (`str` أو `torch.dtype`، *اختياري*) : تجاوز `torch.dtype` الافتراضي وتحميل النموذج بنوع بيانات آخر.

force_download (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان يجب إجبار إعادة تنزيل أوزان النموذج وملفات الإعداد، مع تجاوز النسخ المخزنة مؤقتًا إذا كانت موجودة.

cache_dir (`str | os.PathLike`، *اختياري*) : مسار إلى مجلد حيث تُخزَّن مؤقتًا إعدادات النموذج المُسبق التحميل المُحمَّل إذا لم يُستخدم التخزين المؤقت القياسي.

proxies (`dict[str, str]`، *اختياري*) : قاموس لخوادم الوكيل (proxy servers) للاستخدام حسب البروتوكول أو نقطة النهاية، على سبيل المثال، `{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}`. تُستخدم هذه الوكلاء في كل طلب.

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

token (`str` أو *bool*، *اختياري*) : الرمز الذي يُستخدم كتوكن مصادقة HTTP bearer للملفات البعيدة. إذا كان `True`، يُستخدم التوكن المولّد من `diffusers-cli login` (المخزَّن في `~/.huggingface`).

revision (`str`، *اختياري*، القيمة الافتراضية `"main"`) : إصدار النموذج المحدد الذي سيتم استخدامه. يمكن أن يكون اسم فرع، أو اسم وسم، أو معرف التزامن، أو أي معرّف مسموح به بواسطة Git.

original_config_file (`str`، *اختياري*) : المسار إلى ملف الإعداد الأصلي الذي تم استخدامه لتدريب النموذج. إذا لم يُقدَّم، فسيتم استنتاج ملف الإعداد من ملف نقطة التفتيش.

config (`str`, *اختياري*) : يمكن أن يكون أحد ما يلي: - نص، وهو *repo id* (على سبيل المثال `CompVis/ldm-text2im-large-256`) لخط أنابيب مُدرَّب مسبقًا مستضاف على Hub. - مسار إلى *مجلد* (على سبيل المثال `./my_pipeline_directory/`) يحتوي على تكوينات مكوّنات خط الأنابيب بصيغة Diffusers.

disable_mmap ('bool', *اختياري*, القيمة الافتراضية هي 'False') : ما إذا كان سيتم تعطيل mmap عند تحميل نموذج Safetensors. يمكن أن يؤدي هذا الخيار إلى أداء أفضل عندما يكون النموذج على وحدة تخزين شبكية أو قرص صلب.

kwargs (باقي قاموس من معاملات الكلمات المفتاحية، *اختياري*) : يمكن استخدامه لتجاوز متغيرات التحميل والحفظ (مكونات خط الأنابيب الخاصة بفئة خط الأنابيب المحددة). تُمرَّر المكونات المُتجاوزة مباشرةً إلى طريقة `__init__` لخط الأنابيب. راجع المثال أدناه لمزيد من المعلومات.

أنشئ كائن [DiffusionPipeline](/docs/diffusers/main/ar/api/pipelines/overview#diffusers.DiffusionPipeline) من أوزان خط الأنابيب المُسبقة التدريب المحفوظة بصيغة `.ckpt` أو `.safetensors`. يتم ضبط خط الأنابيب في وضع التقييم (`model.eval()`) افتراضيًا.

أمثلة:

```py
>>> from diffusers import StableDiffusionPipeline

>>> # Download pipeline from huggingface.co and cache.
>>> pipeline = StableDiffusionPipeline.from_single_file(
...     "https://huggingface.co/WarriorMama777/OrangeMixs/blob/main/Models/AbyssOrangeMix/AbyssOrangeMix.safetensors"
... )

>>> # Download pipeline from local file
>>> # file is downloaded under ./v1-5-pruned-emaonly.ckpt
>>> pipeline = StableDiffusionPipeline.from_single_file("./v1-5-pruned-emaonly.ckpt")

>>> # Enable float16 and move to GPU
>>> pipeline = StableDiffusionPipeline.from_single_file(
...     "https://huggingface.co/stable-diffusion-v1-5/stable-diffusion-v1-5/blob/main/v1-5-pruned-emaonly.ckpt",
...     torch_dtype=torch.float16,
... )
>>> pipeline.to("cuda")
```

## FromOriginalModelMixin[[diffusers.loaders.FromOriginalModelMixin]]

#### diffusers.loaders.FromOriginalModelMixin[[diffusers.loaders.FromOriginalModelMixin]]

```python
diffusers.loaders.FromOriginalModelMixin()
```

[المصدر](https://github.com/huggingface/diffusers/blob/main/src/diffusers/loaders/single_file_model.py#L276)

حمّل الأوزان المُسبقة التدريب المحفوظة بصيغة `.ckpt` أو `.safetensors` في نموذج.

#### from_single_file[[diffusers.loaders.FromOriginalModelMixin.from_single_file]]

```python
from_single_file(pretrained_model_link_or_path_or_dict: str | None = None, **kwargs)
```

[المصدر](https://github.com/huggingface/diffusers/blob/main/src/diffusers/loaders/single_file_model.py#L281)

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

pretrained_model_link_or_path_or_dict (`str`, *اختياري*) : يمكن أن يكون أحد ما يلي: - رابط إلى ملف `.safetensors` أو `.ckpt` (على سبيل المثال `"https://huggingface.co/<repo_id>/blob/main/<path_to_file>.safetensors"`) على Hub. - مسار إلى *ملف* محلي يحتوي على أوزان النموذج المكوّن. - قاموس حالة (state dict) يحتوي على أوزان النموذج المكوّن.

config (`str`, *اختياري*) : - نص، وهو *repo id* (على سبيل المثال `CompVis/ldm-text2im-large-256`) لخط أنابيب مُدرَّب مسبقًا مستضاف على Hub. - مسار إلى *مجلد* (على سبيل المثال `./my_pipeline_directory/`) يحتوي على تكوينات مكونات خط الأنابيب بصيغة Diffusers.

subfolder (`str`، *اختياري*، القيمة الافتراضية `""`) : موقع المجلد الفرعي لملف النموذج داخل مستودع نموذج أكبر على Hub أو محليًا.

original_config (`str`، *اختياري*) : قاموس أو مسار إلى ملف yaml يحتوي على إعدادات النموذج بصيغته الأصلية. إذا تم تقديم قاموس، فسيُستخدم لتهيئة إعدادات النموذج.

dtype (`torch.dtype`، *اختياري*) : تجاوز `torch.dtype` الافتراضي وتحميل النموذج بنوع بيانات آخر.

force_download (`bool`، *اختياري*، القيمة الافتراضية `False`) : ما إذا كان يجب إجبار إعادة تنزيل أوزان النموذج وملفات الإعداد، مع تجاوز النسخ المخزنة مؤقتًا إذا كانت موجودة.

cache_dir (`str | os.PathLike`، *اختياري*) : مسار إلى مجلد حيث تُخزَّن مؤقتًا إعدادات النموذج المُسبق التحميل المُحمَّل إذا لم يُستخدم التخزين المؤقت القياسي.

proxies (`dict[str, str]`، *اختياري*) : قاموس لخوادم الوكيل (proxy servers) للاستخدام حسب البروتوكول أو نقطة النهاية، على سبيل المثال، `{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}`. تُستخدم هذه الوكلاء في كل طلب.

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

token (`str` أو *bool*، *اختياري*) : الرمز الذي يُستخدم كتوكن مصادقة HTTP bearer للملفات البعيدة. إذا كان `True`، يُستخدم التوكن المولّد من `diffusers-cli login` (المخزَّن في `~/.huggingface`).

revision (`str`، *اختياري*، القيمة الافتراضية `"main"`) : إصدار النموذج المحدد الذي سيتم استخدامه. يمكن أن يكون اسم فرع، أو اسم وسم، أو معرف التزامن، أو أي معرّف مسموح به بواسطة Git.

low_cpu_mem_usage (`bool`، *اختياري*، القيمة الافتراضية هي `True` إذا كانت إصدار torch >= 1.9.0 و : is_accelerate_available() وإلا `False`): تسريع تحميل النموذج من خلال تحميل الأوزان المُسبقة التدريب فقط دون تهيئة الأوزان. كما يحاول هذا الخيار عدم استخدام أكثر من 1x حجم النموذج في ذاكرة المعالج المركزي (بما في ذلك الذروة) أثناء تحميل النموذج. مدعوم فقط لـ PyTorch >= 1.9.0. إذا كنت تستخدم إصدارًا أقدم من PyTorch، فإن تعيين هذا الحجة إلى `True` سيؤدي إلى رفع خطأ.

disable_mmap ('bool', *اختياري*، القيمة الافتراضية هي 'False') : ما إذا كان سيتم تعطيل mmap عند تحميل نموذج Safetensors. يمكن أن يؤدي هذا الخيار إلى أداء أفضل عندما يكون النموذج على وحدة تخزين شبكية أو قرص صلب، حيث قد لا تتعامل هذه الوسائط بشكل جيد مع طبيعة عمليات البحث (seek) التي يتطلبها mmap.

kwargs (باقي قاموس من معاملات الكلمات المفتاحية، *اختياري*) : يمكن استخدامه لتجاوز متغيرات التحميل والحفظ (على سبيل المثال، مكونات خط الأنابيب الخاصة بفئة خط الأنابيب المحددة). تُمرَّر المكونات المُتجاوزة مباشرةً إلى طريقة `__init__` لخطوط الأنابيب. راجع المثال أدناه لمزيد من المعلومات.

أنشئ نموذجًا من الأوزان المُسبقة التدريب المحفوظة في الصيغة الأصلية `.ckpt` أو `.safetensors`. يُضبط النموذج في وضع التقييم (`model.eval()`) افتراضيًا.

```py
>>> from diffusers import StableCascadeUNet

>>> ckpt_path = "https://huggingface.co/stabilityai/stable-cascade/blob/main/stage_b_lite.safetensors"
>>> model = StableCascadeUNet.from_single_file(ckpt_path)
```

