Buckets:

hf-doc-build/doc / diffusers /main /ru /api /loaders /single_file.md
mishig's picture
|
download
raw
18.2 kB
# Одиночные файлы
Метод [from_single_file()](/docs/diffusers/main/ru/api/loaders/single_file#diffusers.loaders.FromSingleFileMixin.from_single_file) позволяет загрузить:
* модель, хранящаяся в одном файле, что удобно при работе с моделями из экосистемы диффузии, например, с Automatic1111, где для хранения и обмена моделями обычно используется структура с одним файлом
* модель, сохраненная в исходном формате распределения, что полезно, если вы работаете с моделями, дообученными с помощью других сервисов, и хотите загрузить ее напрямую в объекты моделей и конвейеры Diffusers
> [!TIP]
> Ознакомьтесь с руководством [Файлы и структура моделей](../../using-diffusers/other-formats), чтобы узнать больше о структуре Diffusers-multifolder по сравнению с однофайловой структурой, а также о том, как загружать модели, хранящиеся в этих разных структурах.
## Поддерживаемые конвейеры
- [StableDiffusionPipeline](/docs/diffusers/main/ru/api/pipelines/stable_diffusion/text2img#diffusers.StableDiffusionPipeline)
- [StableDiffusionImg2ImgPipeline](/docs/diffusers/main/ru/api/pipelines/stable_diffusion/img2img#diffusers.StableDiffusionImg2ImgPipeline)
- [StableDiffusionInpaintPipeline](/docs/diffusers/main/ru/api/pipelines/stable_diffusion/inpaint#diffusers.StableDiffusionInpaintPipeline)
- [StableDiffusionControlNetPipeline](/docs/diffusers/main/ru/api/pipelines/controlnet#diffusers.StableDiffusionControlNetPipeline)
- [StableDiffusionControlNetImg2ImgPipeline](/docs/diffusers/main/ru/api/pipelines/controlnet#diffusers.StableDiffusionControlNetImg2ImgPipeline)
- [StableDiffusionControlNetInpaintPipeline](/docs/diffusers/main/ru/api/pipelines/controlnet#diffusers.StableDiffusionControlNetInpaintPipeline)
- [StableDiffusionUpscalePipeline](/docs/diffusers/main/ru/api/pipelines/stable_diffusion/upscale#diffusers.StableDiffusionUpscalePipeline)
- [StableDiffusionXLPipeline](/docs/diffusers/main/ru/api/pipelines/stable_diffusion/stable_diffusion_xl#diffusers.StableDiffusionXLPipeline)
- [StableDiffusionXLImg2ImgPipeline](/docs/diffusers/main/ru/api/pipelines/stable_diffusion/stable_diffusion_xl#diffusers.StableDiffusionXLImg2ImgPipeline)
- [StableDiffusionXLInpaintPipeline](/docs/diffusers/main/ru/api/pipelines/stable_diffusion/stable_diffusion_xl#diffusers.StableDiffusionXLInpaintPipeline)
- [StableDiffusionXLInstructPix2PixPipeline](/docs/diffusers/main/ru/api/pipelines/pix2pix#diffusers.StableDiffusionXLInstructPix2PixPipeline)
- [StableDiffusionXLControlNetPipeline](/docs/diffusers/main/ru/api/pipelines/controlnet_sdxl#diffusers.StableDiffusionXLControlNetPipeline)
- `StableDiffusionXLKDiffusionPipeline`
- [StableDiffusion3Pipeline](/docs/diffusers/main/ru/api/pipelines/stable_diffusion/stable_diffusion_3#diffusers.StableDiffusion3Pipeline)
- [LatentConsistencyModelPipeline](/docs/diffusers/main/ru/api/pipelines/latent_consistency_models#diffusers.LatentConsistencyModelPipeline)
- [LatentConsistencyModelImg2ImgPipeline](/docs/diffusers/main/ru/api/pipelines/latent_consistency_models#diffusers.LatentConsistencyModelImg2ImgPipeline)
- `StableDiffusionControlNetXSPipeline`
- `StableDiffusionXLControlNetXSPipeline`
- [LEditsPPPipelineStableDiffusion](/docs/diffusers/main/ru/api/pipelines/ledits_pp#diffusers.LEditsPPPipelineStableDiffusion)
- [LEditsPPPipelineStableDiffusionXL](/docs/diffusers/main/ru/api/pipelines/ledits_pp#diffusers.LEditsPPPipelineStableDiffusionXL)
- `PIAPipeline`
## Поддерживаемые модели
- [UNet2DConditionModel](/docs/diffusers/main/ru/api/models/unet2d-cond#diffusers.UNet2DConditionModel)
- `StableCascadeUNet`
- [AutoencoderKL](/docs/diffusers/main/ru/api/models/autoencoderkl#diffusers.AutoencoderKL)
- [ControlNetModel](/docs/diffusers/main/ru/api/models/controlnet#diffusers.ControlNetModel)
- [SD3Transformer2DModel](/docs/diffusers/main/ru/api/models/sd3_transformer2d#diffusers.SD3Transformer2DModel)
- [FluxTransformer2DModel](/docs/diffusers/main/ru/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/ru/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` и загружает модель с другим dtype.
force_download (`bool`, *необязательный*, по умолчанию `False`) : Указывает, следует ли принудительно (пере)скачивать веса модели и файлы конфигурации, заменяя кэшированные версии, если они существуют.
cache_dir (`str | os.PathLike`, *необязательный*) : Путь к каталогу, в котором кэшируется конфигурация загруженной предобученной модели, если стандартный кэш не используется.
proxies (`dict[str, str]`, *необязательный*) : Словарь прокси-серверов для использования по протоколу или конечной точке, например, `{'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', *optional*, по умолчанию 'False') : Отключает ли mmap при загрузке модели Safetensors. Этот параметр может обеспечить лучшую производительность, если модель находится на сетевом диске или жёстком диске.
kwargs (остаточный словарь аргументов с ключами, *необязательный*) : может использоваться для переопределения переменных загрузки и сохранения (компонентов конвейера конкретного класса конвейера). Переопределённые компоненты передаются непосредственно в метод `__init__` конвейера. См. пример ниже для получения дополнительной информации.
Создайте экземпляр [DiffusionPipeline](/docs/diffusers/main/ru/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` и загружает модель с другим dtype.
force_download (`bool`, *необязательный*, по умолчанию `False`) : Указывает, следует ли принудительно (пере)скачивать веса модели и файлы конфигурации, заменяя кэшированные версии, если они существуют.
cache_dir (`str | os.PathLike`, *необязательный*) : Путь к каталогу, в котором кэшируется конфигурация загруженной предобученной модели, если стандартный кэш не используется.
proxies (`dict[str, str]`, *необязательный*) : Словарь прокси-серверов для использования по протоколу или конечной точке, например, `{'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`): Ускоряет загрузку модели, загружая только предобученные веса и не инициализируя их. При этом также обеспечивается, чтобы при загрузке модели в оперативной памяти CPU использовалось не более 1x размера модели (включая пиковое потребление). Поддерживается только для PyTorch >= 1.9.0. Если вы используете более старую версию PyTorch, установка этого аргумента в `True` вызовет ошибку.
disable_mmap ('bool', *optional*, по умолчанию 'False') : Отключает ли использование mmap при загрузке модели Safetensors. Этот параметр может обеспечить лучшую производительность, если модель находится на сетевом диске или жёстком диске, которые могут плохо справляться с частыми операциями перемотки, характерными для 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)
```

Xet Storage Details

Size:
18.2 kB
·
Xet hash:
c922303ab5f9bda92b0e15ba2eb48a3ba2234d6d89849ade20b0f09c51e97bec

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.