Buckets:

hf-doc-build/doc / diffusers /main /ru /api /pipelines /auto_pipeline.md
mishig's picture
|
download
raw
55.6 kB

AutoPipeline

AutoPipeline предназначен для упрощения загрузки контрольной точки для задачи без необходимости знать конкретный класс пайплайна. На основе задачи AutoPipeline автоматически извлекает правильный класс пайплайна из файла model_index.json контрольной точки.

Ознакомьтесь с учебником по AutoPipeline, чтобы узнать, как использовать этот API!

AutoPipelineForText2Image[[diffusers.AutoPipelineForText2Image]]

diffusers.AutoPipelineForText2Image[[diffusers.AutoPipelineForText2Image]]

diffusers.AutoPipelineForText2Image(*args, **kwargs)

Источник

AutoPipelineForText2Image is a generic pipeline class that instantiates a text-to-image pipeline class. The specific underlying pipeline class is automatically selected from either the from_pretrained() or from_pipe() methods.

Этот класс нельзя создать с помощью __init__() (выбрасывает ошибку).

Атрибуты класса:

  • config_name (str) -- Имя файла конфигурации, в котором хранятся имена классов и модулей всех компонентов диффузионного конвейера.

from_pretrained[[diffusers.AutoPipelineForText2Image.from_pretrained]]

from_pretrained(pretrained_model_or_path, **kwargs)

Источник

Параметры:

pretrained_model_or_path (str или os.PathLike, необязательный) : Может быть одним из: - строка, repo id (например, CompVis/ldm-text2im-large-256) предобученного пайплайна, размещенного на Hub. - путь к каталогу (например, ./my_pipeline_directory/), содержащему веса пайплайна, сохраненные с помощью save_pretrained().

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'}. Прокси используются при каждом запросе.

output_loading_info(bool, необязательный, по умолчанию False) : Нужно ли также возвращать словарь, содержащий отсутствующие ключи, неожиданные ключи и сообщения об ошибках.

local_files_only (bool, необязательный, по умолчанию False) : Загружать только локальные веса модели и файлы конфигурации или нет. Если установлено в True, модель не будет скачана с Hub.

token (str или bool, необязательный) : Токен, используемый в качестве HTTP bearer-авторизации для удалённых файлов. Если True, используется токен, сгенерированный командой diffusers-cli login (сохранённый в ~/.huggingface).

revision (str, необязательный, по умолчанию "main") : Конкретная версия модели, которую следует использовать. Может быть именем ветки, именем тега, идентификатором коммита или любым другим идентификатором, поддерживаемым Git.

custom_revision (str, optional, по умолчанию "main") : Конкретная версия модели, которую следует использовать. Это может быть имя ветки, имя тега или идентификатор коммита, аналогично revision при загрузке пользовательского конвейера из Hub. Это может быть версия 🤗 Diffusers при загрузке пользовательского конвейера из GitHub, в противном случае по умолчанию используется "main" при загрузке из Hub.

mirror (str, необязательный) : Зеркальный источник для решения проблем с доступностью при загрузке модели в Китае. Мы не гарантируем актуальность или безопасность источника, поэтому за дополнительной информацией обращайтесь на сайт зеркала.

device_map (str или dict[str, int | str | torch.device], необязательный) : Карта, указывающая, на какое устройство следует поместить каждый подмодуль. Её не обязательно задавать для каждого имени параметра/буфера; как только имя модуля указано в карте, все его подмодули будут отправлены на то же устройство. Установите device_map="auto", чтобы 🤗 Accelerate автоматически вычислила наиболее оптимизированную device_map. Подробнее о каждом варианте см. проектирование карты устройств.

max_memory (Dict, необязательный) : Словарь идентификаторов устройств для максимальной памяти. Если не задано, по умолчанию используется максимальная доступная память для каждого GPU и доступная оперативная память CPU.

offload_folder (str или os.PathLike, необязательный) : Путь для выгрузки весов, если device_map содержит значение "disk".

offload_state_dict (bool, необязательный) : Если True, состояние CPU state dict временно выгружается на диск, чтобы избежать нехватки оперативной памяти CPU, если вес CPU state dict и крупнейший фрагмент контрольной точки не помещаются в неё. По умолчанию True, если используется выгрузка на диск.

low_cpu_mem_usage (bool, необязательный, по умолчанию True, если версия torch >= 1.9.0, иначе False) : Ускоряет загрузку модели, загружая только предобученные веса и не инициализируя их. Также это позволяет не использовать больше 1x размера модели в оперативной памяти (включая пиковое потребление) при загрузке модели. Поддерживается только для PyTorch >= 1.9.0. Если вы используете более старую версию PyTorch, установка этого аргумента в True вызовет ошибку.

use_safetensors (bool, необязательный, по умолчанию None) : Если установлено в None, веса safetensors загружаются, если они доступны и если библиотека safetensors установлена. Если установлено в True, модель принудительно загружается из весов safetensors. Если установлено в False, веса safetensors не загружаются.

kwargs (остаточный словарь аргументов с ключами, необязательный) : может использоваться для переопределения переменных загрузки и сохранения (компонентов конвейера конкретного класса конвейера). Переопределённые компоненты передаются непосредственно в метод __init__ конвейера. См. пример ниже для получения дополнительной информации.

variant (str, необязательный) : Загружает веса из файла с указанным вариантом имени, например "fp16" или "ema".

Создаёт пайплайн диффузии Pytorch для генерации изображений по тексту из предобученных весов пайплайна.

Метод from_pretrained() обеспечивает возврат экземпляра правильного класса конвейера, выполняя следующие действия:

  1. Определить класс конвейера для pretrained_model_or_path на основе свойства _class_name объекта его конфигурации
  2. Найдите пайплайн text-to-image, связанный с классом пайплайна, используя сопоставление по имени класса пайплайна.

Если передан аргумент controlnet, будет создан объект StableDiffusionControlNetPipeline.

По умолчанию пайплайн устанавливается в режим оценки (model.eval()).

Если вы получаете сообщение об ошибке, приведённое ниже, вам необходимо дообучить веса для вашей целевой задачи:

Some weights of UNet2DConditionModel were not initialized from the model checkpoint at stable-diffusion-v1-5/stable-diffusion-v1-5 and are newly initialized because the shapes did not match:
- conv_in.weight: found shape torch.Size([320, 4, 3, 3]) in the checkpoint and torch.Size([320, 9, 3, 3]) in the model instantiated
You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference.

> Для использования частных или gated моделей выполните вход с помощью hf > auth login.

Примеры:

>>> from diffusers import AutoPipelineForText2Image

>>> pipeline = AutoPipelineForText2Image.from_pretrained("stable-diffusion-v1-5/stable-diffusion-v1-5")
>>> image = pipeline(prompt).images[0]

from_pipe[[diffusers.AutoPipelineForText2Image.from_pipe]]

from_pipe(pipeline, **kwargs)

Источник

Параметры:

pipeline (DiffusionPipeline) : объект DiffusionPipeline, созданный с помощью конструктора

Создаёт пайплайн Pytorch для генерации изображений по тексту на основе другого уже инициализированного класса пайплайна диффузии.

Метод from_pipe() обеспечивает возврат экземпляра правильного класса пайплайна, находя пайплайн text-to-image, связанный с классом пайплайна, с помощью сопоставления по имени класса пайплайна.

Все модули, содержащиеся в конвейере, будут использованы для инициализации нового конвейера без выделения дополнительной памяти.

По умолчанию пайплайн устанавливается в режим оценки (model.eval()).

>>> from diffusers import AutoPipelineForText2Image, AutoPipelineForImage2Image

>>> pipe_i2i = AutoPipelineForImage2Image.from_pretrained(
...     "stable-diffusion-v1-5/stable-diffusion-v1-5", requires_safety_checker=False
... )

>>> pipe_t2i = AutoPipelineForText2Image.from_pipe(pipe_i2i)
>>> image = pipe_t2i(prompt).images[0]

AutoPipelineForImage2Image[[diffusers.AutoPipelineForImage2Image]]

diffusers.AutoPipelineForImage2Image[[diffusers.AutoPipelineForImage2Image]]

diffusers.AutoPipelineForImage2Image(*args, **kwargs)

Источник

AutoPipelineForImage2Image is a generic pipeline class that instantiates an image-to-image pipeline class. The specific underlying pipeline class is automatically selected from either the from_pretrained() or from_pipe() methods.

Этот класс нельзя создать с помощью __init__() (выбрасывает ошибку).

Атрибуты класса:

  • config_name (str) -- Имя файла конфигурации, в котором хранятся имена классов и модулей всех компонентов диффузионного конвейера.

from_pretrained[[diffusers.AutoPipelineForImage2Image.from_pretrained]]

from_pretrained(pretrained_model_or_path, **kwargs)

Источник

Параметры:

pretrained_model_or_path (str или os.PathLike, необязательный) : Может быть одним из: - строка, repo id (например, CompVis/ldm-text2im-large-256) предобученного пайплайна, размещенного на Hub. - путь к каталогу (например, ./my_pipeline_directory/), содержащему веса пайплайна, сохраненные с помощью save_pretrained().

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'}. Прокси используются при каждом запросе.

output_loading_info(bool, необязательный, по умолчанию False) : Нужно ли также возвращать словарь, содержащий отсутствующие ключи, неожиданные ключи и сообщения об ошибках.

local_files_only (bool, необязательный, по умолчанию False) : Загружать только локальные веса модели и файлы конфигурации или нет. Если установлено в True, модель не будет скачана с Hub.

token (str или bool, необязательный) : Токен, используемый в качестве HTTP bearer-авторизации для удалённых файлов. Если True, используется токен, сгенерированный командой diffusers-cli login (сохранённый в ~/.huggingface).

revision (str, необязательный, по умолчанию "main") : Конкретная версия модели, которую следует использовать. Может быть именем ветки, именем тега, идентификатором коммита или любым другим идентификатором, поддерживаемым Git.

custom_revision (str, optional, по умолчанию "main") : Конкретная версия модели, которую следует использовать. Это может быть имя ветки, имя тега или идентификатор коммита, аналогично revision при загрузке пользовательского конвейера из Hub. Это может быть версия 🤗 Diffusers при загрузке пользовательского конвейера из GitHub, в противном случае по умолчанию используется "main" при загрузке из Hub.

mirror (str, необязательный) : Зеркальный источник для решения проблем с доступностью при загрузке модели в Китае. Мы не гарантируем актуальность или безопасность источника, поэтому за дополнительной информацией обращайтесь на сайт зеркала.

device_map (str или dict[str, int | str | torch.device], необязательный) : Карта, указывающая, на какое устройство следует поместить каждый подмодуль. Её не обязательно задавать для каждого имени параметра/буфера; как только имя модуля указано в карте, все его подмодули будут отправлены на то же устройство. Установите device_map="auto", чтобы 🤗 Accelerate автоматически вычислила наиболее оптимизированную device_map. Подробнее о каждом варианте см. проектирование карты устройств.

max_memory (Dict, необязательный) : Словарь идентификаторов устройств для максимальной памяти. Если не задано, по умолчанию используется максимальная доступная память для каждого GPU и доступная оперативная память CPU.

offload_folder (str или os.PathLike, необязательный) : Путь для выгрузки весов, если device_map содержит значение "disk".

offload_state_dict (bool, необязательный) : Если True, состояние CPU state dict временно выгружается на диск, чтобы избежать нехватки оперативной памяти CPU, если вес CPU state dict и крупнейший фрагмент контрольной точки не помещаются в неё. По умолчанию True, если используется выгрузка на диск.

low_cpu_mem_usage (bool, необязательный, по умолчанию True, если версия torch >= 1.9.0, иначе False) : Ускоряет загрузку модели, загружая только предобученные веса и не инициализируя их. Также это позволяет не использовать больше 1x размера модели в оперативной памяти (включая пиковое потребление) при загрузке модели. Поддерживается только для PyTorch >= 1.9.0. Если вы используете более старую версию PyTorch, установка этого аргумента в True вызовет ошибку.

use_safetensors (bool, необязательный, по умолчанию None) : Если установлено в None, веса safetensors загружаются, если они доступны и если библиотека safetensors установлена. Если установлено в True, модель принудительно загружается из весов safetensors. Если установлено в False, веса safetensors не загружаются.

kwargs (остаточный словарь аргументов с ключами, необязательный) : может использоваться для переопределения переменных загрузки и сохранения (компонентов конвейера конкретного класса конвейера). Переопределённые компоненты передаются непосредственно в метод __init__ конвейера. См. пример ниже для получения дополнительной информации.

variant (str, необязательный) : Загружает веса из файла с указанным вариантом имени, например "fp16" или "ema".

Создаёт пайплайн Pytorch для генерации изображений по изображению (image-to-image) на основе предобученных весов пайплайна.

Метод from_pretrained() обеспечивает возврат экземпляра правильного класса конвейера, выполняя следующие действия:

  1. Определить класс конвейера для pretrained_model_or_path на основе свойства _class_name объекта его конфигурации
  2. Найдите конвейер image-to-image, связанный с классом pipeline, используя сопоставление по имени класса pipeline.

Если передан аргумент controlnet, будет создан объект StableDiffusionControlNetImg2ImgPipeline.

По умолчанию пайплайн устанавливается в режим оценки (model.eval()).

Если вы получаете сообщение об ошибке, приведённое ниже, вам необходимо дообучить веса для вашей целевой задачи:

Some weights of UNet2DConditionModel were not initialized from the model checkpoint at stable-diffusion-v1-5/stable-diffusion-v1-5 and are newly initialized because the shapes did not match:
- conv_in.weight: found shape torch.Size([320, 4, 3, 3]) in the checkpoint and torch.Size([320, 9, 3, 3]) in the model instantiated
You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference.

> Для использования частных или gated моделей выполните вход с помощью hf > auth login.

Примеры:

>>> from diffusers import AutoPipelineForImage2Image

>>> pipeline = AutoPipelineForImage2Image.from_pretrained("stable-diffusion-v1-5/stable-diffusion-v1-5")
>>> image = pipeline(prompt, image).images[0]

from_pipe[[diffusers.AutoPipelineForImage2Image.from_pipe]]

from_pipe(pipeline, **kwargs)

Источник

Параметры:

pipeline (DiffusionPipeline) : объект DiffusionPipeline, созданный с помощью конструктора

Создаёт пайплайн Pytorch для генерации изображений по изображению из другого уже созданного класса пайплайна диффузии.

Метод from_pipe() обеспечивает возврат экземпляра правильного класса конвейера, находя конвейер «изображение в изображение», связанный с классом конвейера, с помощью сопоставления по имени класса конвейера.

Все модули, содержащиеся в конвейере, будут использованы для инициализации нового конвейера без выделения дополнительной памяти.

По умолчанию пайплайн устанавливается в режим оценки (model.eval()).

Примеры:

>>> from diffusers import AutoPipelineForText2Image, AutoPipelineForImage2Image

>>> pipe_t2i = AutoPipelineForText2Image.from_pretrained(
...     "stable-diffusion-v1-5/stable-diffusion-v1-5", requires_safety_checker=False
... )

>>> pipe_i2i = AutoPipelineForImage2Image.from_pipe(pipe_t2i)
>>> image = pipe_i2i(prompt, image).images[0]

AutoPipelineForInpainting[[diffusers.AutoPipelineForInpainting]]

diffusers.AutoPipelineForInpainting[[diffusers.AutoPipelineForInpainting]]

diffusers.AutoPipelineForInpainting(*args, **kwargs)

Источник

AutoPipelineForInpainting — это универсальный класс пайплайна, который создаёт экземпляр класса пайплайна для инпейнтинга. Конкретный базовый класс пайплайна выбирается автоматически из методов from_pretrained() или from_pipe().

Этот класс нельзя создать с помощью __init__() (выбрасывает ошибку).

Атрибуты класса:

  • config_name (str) -- Имя файла конфигурации, в котором хранятся имена классов и модулей всех компонентов диффузионного конвейера.

from_pretrained[[diffusers.AutoPipelineForInpainting.from_pretrained]]

from_pretrained(pretrained_model_or_path, **kwargs)

Источник

Параметры:

pretrained_model_or_path (str или os.PathLike, необязательный) : Может быть одним из: - строка, repo id (например, CompVis/ldm-text2im-large-256) предобученного пайплайна, размещенного на Hub. - путь к каталогу (например, ./my_pipeline_directory/), содержащему веса пайплайна, сохраненные с помощью save_pretrained().

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'}. Прокси используются при каждом запросе.

output_loading_info(bool, необязательный, по умолчанию False) : Нужно ли также возвращать словарь, содержащий отсутствующие ключи, неожиданные ключи и сообщения об ошибках.

local_files_only (bool, необязательный, по умолчанию False) : Загружать только локальные веса модели и файлы конфигурации или нет. Если установлено в True, модель не будет скачана с Hub.

token (str или bool, необязательный) : Токен, используемый в качестве HTTP bearer-авторизации для удалённых файлов. Если True, используется токен, сгенерированный командой diffusers-cli login (сохранённый в ~/.huggingface).

revision (str, необязательный, по умолчанию "main") : Конкретная версия модели, которую следует использовать. Может быть именем ветки, именем тега, идентификатором коммита или любым другим идентификатором, поддерживаемым Git.

custom_revision (str, optional, по умолчанию "main") : Конкретная версия модели, которую следует использовать. Это может быть имя ветки, имя тега или идентификатор коммита, аналогично revision при загрузке пользовательского конвейера из Hub. Это может быть версия 🤗 Diffusers при загрузке пользовательского конвейера из GitHub, в противном случае по умолчанию используется "main" при загрузке из Hub.

mirror (str, необязательный) : Зеркальный источник для решения проблем с доступностью при загрузке модели в Китае. Мы не гарантируем актуальность или безопасность источника, поэтому за дополнительной информацией обращайтесь на сайт зеркала.

device_map (str или dict[str, int | str | torch.device], необязательный) : Карта, указывающая, на какое устройство следует поместить каждый подмодуль. Её не обязательно задавать для каждого имени параметра/буфера; как только имя модуля указано в карте, все его подмодули будут отправлены на то же устройство. Установите device_map="auto", чтобы 🤗 Accelerate автоматически вычислила наиболее оптимизированную device_map. Подробнее о каждом варианте см. проектирование карты устройств.

max_memory (Dict, необязательный) : Словарь идентификаторов устройств для максимальной памяти. Если не задано, по умолчанию используется максимальная доступная память для каждого GPU и доступная оперативная память CPU.

offload_folder (str или os.PathLike, необязательный) : Путь для выгрузки весов, если device_map содержит значение "disk".

offload_state_dict (bool, необязательный) : Если True, состояние CPU state dict временно выгружается на диск, чтобы избежать нехватки оперативной памяти CPU, если вес CPU state dict и крупнейший фрагмент контрольной точки не помещаются в неё. По умолчанию True, если используется выгрузка на диск.

low_cpu_mem_usage (bool, необязательный, по умолчанию True, если версия torch >= 1.9.0, иначе False) : Ускоряет загрузку модели, загружая только предобученные веса и не инициализируя их. Также это позволяет не использовать больше 1x размера модели в оперативной памяти (включая пиковое потребление) при загрузке модели. Поддерживается только для PyTorch >= 1.9.0. Если вы используете более старую версию PyTorch, установка этого аргумента в True вызовет ошибку.

use_safetensors (bool, необязательный, по умолчанию None) : Если установлено в None, веса safetensors загружаются, если они доступны и если библиотека safetensors установлена. Если установлено в True, модель принудительно загружается из весов safetensors. Если установлено в False, веса safetensors не загружаются.

kwargs (остаточный словарь аргументов с ключами, необязательный) : может использоваться для переопределения переменных загрузки и сохранения (компонентов конвейера конкретного класса конвейера). Переопределённые компоненты передаются непосредственно в метод __init__ конвейера. См. пример ниже для получения дополнительной информации.

variant (str, необязательный) : Загружает веса из файла с указанным вариантом имени, например "fp16" или "ema".

Создаёт пайплайн диффузии PyTorch для inpainting из предобученных весов пайплайна.

Метод from_pretrained() обеспечивает возврат экземпляра правильного класса конвейера, выполняя следующие действия:

  1. Определить класс конвейера для pretrained_model_or_path на основе свойства _class_name объекта его конфигурации
  2. Найдите конвейер inpainting, связанный с классом конвейера, с помощью сопоставления по имени класса конвейера.

Если передан аргумент controlnet, будет создан объект StableDiffusionControlNetInpaintPipeline.

По умолчанию пайплайн устанавливается в режим оценки (model.eval()).

Если вы получаете сообщение об ошибке, приведённое ниже, вам необходимо дообучить веса для вашей целевой задачи:

Some weights of UNet2DConditionModel were not initialized from the model checkpoint at stable-diffusion-v1-5/stable-diffusion-v1-5 and are newly initialized because the shapes did not match:
- conv_in.weight: found shape torch.Size([320, 4, 3, 3]) in the checkpoint and torch.Size([320, 9, 3, 3]) in the model instantiated
You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference.

> Для использования частных или gated моделей выполните вход с помощью hf > auth login.

Примеры:

>>> from diffusers import AutoPipelineForInpainting

>>> pipeline = AutoPipelineForInpainting.from_pretrained("stable-diffusion-v1-5/stable-diffusion-v1-5")
>>> image = pipeline(prompt, image=init_image, mask_image=mask_image).images[0]

from_pipe[[diffusers.AutoPipelineForInpainting.from_pipe]]

from_pipe(pipeline, **kwargs)

Источник

Параметры:

pipeline (DiffusionPipeline) : объект DiffusionPipeline, созданный с помощью конструктора

Создаёт пайплайн диффузии PyTorch для инпейнтинга на основе уже инициализированного класса пайплайна диффузии.

Метод from_pipe() обеспечивает возврат экземпляра правильного класса пайплайна, находя пайплайн инпейнтинга, связанный с классом пайплайна, с помощью сопоставления по имени класса пайплайна.

Все модули, содержащиеся в классе pipeline, будут использованы для инициализации нового pipeline без выделения дополнительной памяти.

По умолчанию пайплайн устанавливается в режим оценки (model.eval()).

Примеры:

>>> from diffusers import AutoPipelineForText2Image, AutoPipelineForInpainting

>>> pipe_t2i = AutoPipelineForText2Image.from_pretrained(
...     "DeepFloyd/IF-I-XL-v1.0", requires_safety_checker=False
... )

>>> pipe_inpaint = AutoPipelineForInpainting.from_pipe(pipe_t2i)
>>> image = pipe_inpaint(prompt, image=init_image, mask_image=mask_image).images[0]

AutoPipelineForText2Audio[[diffusers.AutoPipelineForText2Audio]]

diffusers.AutoPipelineForText2Audio[[diffusers.AutoPipelineForText2Audio]]

diffusers.AutoPipelineForText2Audio(*args, **kwargs)

Источник

AutoPipelineForText2Audio is a generic pipeline class that instantiates a text-to-audio pipeline class. The specific underlying pipeline class is automatically selected from either the from_pretrained() or from_pipe() methods.

Этот класс нельзя создать с помощью __init__() (выбрасывает ошибку).

Атрибуты класса:

  • config_name (str) -- Имя файла конфигурации, в котором хранятся имена классов и модулей всех компонентов диффузионного конвейера.

from_pretrained[[diffusers.AutoPipelineForText2Audio.from_pretrained]]

from_pretrained(pretrained_model_or_path, **kwargs)

Источник

Параметры:

pretrained_model_or_path (str или os.PathLike, необязательный) : Может быть одним из: - строка, repo id (например, stabilityai/stable-audio-open-1.0) предобученного пайплайна, размещенного на Hub. - путь к каталогу (например, ./my_pipeline_directory/), содержащему веса пайплайна, сохраненные с помощью save_pretrained().

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'}. Прокси используются при каждом запросе.

output_loading_info(bool, необязательный, по умолчанию False) : Нужно ли также возвращать словарь, содержащий отсутствующие ключи, неожиданные ключи и сообщения об ошибках.

local_files_only (bool, необязательный, по умолчанию False) : Загружать только локальные веса модели и файлы конфигурации или нет. Если установлено в True, модель не будет скачана с Hub.

token (str или bool, необязательный) : Токен, используемый в качестве HTTP bearer-авторизации для удалённых файлов. Если True, используется токен, сгенерированный командой diffusers-cli login (сохранённый в ~/.huggingface).

revision (str, необязательный, по умолчанию "main") : Конкретная версия модели, которую следует использовать. Может быть именем ветки, именем тега, идентификатором коммита или любым другим идентификатором, поддерживаемым Git.

custom_revision (str, optional, по умолчанию "main") : Конкретная версия модели, которую следует использовать. Это может быть имя ветки, имя тега или идентификатор коммита, аналогично revision при загрузке пользовательского конвейера из Hub. Это может быть версия 🤗 Diffusers при загрузке пользовательского конвейера из GitHub, в противном случае по умолчанию используется "main" при загрузке из Hub.

mirror (str, необязательный) : Зеркальный источник для решения проблем с доступностью при загрузке модели в Китае. Мы не гарантируем актуальность или безопасность источника, поэтому за дополнительной информацией обращайтесь на сайт зеркала.

device_map (str или dict[str, int | str | torch.device], необязательный) : Карта, указывающая, на какое устройство следует поместить каждый подмодуль. Её не обязательно задавать для каждого имени параметра/буфера; как только имя модуля указано в карте, все его подмодули будут отправлены на то же устройство. Установите device_map="auto", чтобы 🤗 Accelerate автоматически вычислила наиболее оптимизированную device_map. Подробнее о каждом варианте см. проектирование карты устройств.

max_memory (Dict, необязательный) : Словарь идентификаторов устройств для максимальной памяти. Если не задано, по умолчанию используется максимальная доступная память для каждого GPU и доступная оперативная память CPU.

offload_folder (str или os.PathLike, необязательный) : Путь для выгрузки весов, если device_map содержит значение "disk".

offload_state_dict (bool, необязательный) : Если True, состояние CPU state dict временно выгружается на диск, чтобы избежать нехватки оперативной памяти CPU, если вес CPU state dict и крупнейший фрагмент контрольной точки не помещаются в неё. По умолчанию True, если используется выгрузка на диск.

low_cpu_mem_usage (bool, необязательный, по умолчанию True, если версия torch >= 1.9.0, иначе False) : Ускоряет загрузку модели, загружая только предобученные веса и не инициализируя их. Также это позволяет не использовать больше 1x размера модели в оперативной памяти (включая пиковое потребление) при загрузке модели. Поддерживается только для PyTorch >= 1.9.0. Если вы используете более старую версию PyTorch, установка этого аргумента в True вызовет ошибку.

use_safetensors (bool, необязательный, по умолчанию None) : Если установлено в None, веса safetensors загружаются, если они доступны и если библиотека safetensors установлена. Если установлено в True, модель принудительно загружается из весов safetensors. Если установлено в False, веса safetensors не загружаются.

kwargs (остаточный словарь аргументов с ключами, необязательный) : может использоваться для переопределения переменных загрузки и сохранения (компонентов конвейера конкретного класса конвейера). Переопределённые компоненты передаются непосредственно в метод __init__ конвейера. См. пример ниже для получения дополнительной информации.

variant (str, необязательный) : Загружает веса из файла с указанным вариантом имени, например "fp16" или "ema".

Создаёт пайплайн Pytorch для генерации аудио из текста на основе предобученных весов пайплайна.

Метод from_pretrained() обеспечивает возврат экземпляра правильного класса конвейера, выполняя следующие действия:

  1. Определить класс конвейера для pretrained_model_or_path на основе свойства _class_name объекта его конфигурации
  2. Найдите конвейер text-to-audio, связанный с классом конвейера, используя сопоставление по имени класса конвейера.

По умолчанию пайплайн устанавливается в режим оценки (model.eval()).

> Для использования частных или gated моделей выполните вход с помощью hf > auth login.

Примеры:

>>> import torch
>>> import soundfile as sf
>>> from diffusers import AutoPipelineForText2Audio

>>> pipeline = AutoPipelineForText2Audio.from_pretrained(
...     "stabilityai/stable-audio-open-1.0", torch_dtype=torch.float16
... )
>>> pipeline = pipeline.to("cuda")

>>> output = pipeline(
...     "Generate a male voice reading a paragraph",
...     num_inference_steps=200,
...     audio_end_in_s=10.0,
... )
>>> audio = output.audios[0].T.float().cpu().numpy()
>>> sf.write("audio.wav", audio, pipeline.vae.sampling_rate)

from_pipe[[diffusers.AutoPipelineForText2Audio.from_pipe]]

from_pipe(pipeline, **kwargs)

Источник

Параметры:

pipeline (DiffusionPipeline) : объект DiffusionPipeline, созданный с помощью конструктора

Создаёт пайплайн Pytorch для генерации аудио из текста на основе другого уже инициализированного класса диффузионного пайплайна.

Метод from_pipe() обеспечивает возврат экземпляра правильного класса пайплайна, находя пайплайн text-to-audio, связанный с классом пайплайна, с помощью сопоставления по имени класса пайплайна.

Все модули, содержащиеся в конвейере, будут использованы для инициализации нового конвейера без выделения дополнительной памяти.

По умолчанию пайплайн устанавливается в режим оценки (model.eval()).

>>> import torch
>>> import soundfile as sf
>>> from diffusers import AutoPipelineForText2Audio, StableAudioPipeline

>>> pipe = StableAudioPipeline.from_pretrained("stabilityai/stable-audio-open-1.0", torch_dtype=torch.float16)

>>> pipe_audio = AutoPipelineForText2Audio.from_pipe(pipe)
>>> output = pipe_audio(
...     "Generate a sound",
...     num_inference_steps=200,
...     audio_end_in_s=10.0,
... )
>>> audio = output.audios[0].T.float().cpu().numpy()
>>> sf.write("audio.wav", audio, pipe_audio.vae.sampling_rate)

Xet Storage Details

Size:
55.6 kB
·
Xet hash:
9c9d7aa6bd82e2659b42a38d9651fc1134ed41c5c1136758ce906093f739a9c9

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