Diffusers documentation

Archivos individuales

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Archivos individuales

El método from_single_file() permite cargar:

  • un modelo almacenado en un solo archivo, que es útil si trabajas con modelos del ecosistema de difusión, como Automatic1111, y normalmente dependes de un esquema de un solo archivo para almacenar y compartir modelos
  • un modelo almacenado en su distribución original, que es útil si estás trabajando con modelos afinados con otros servicios y deseas cargarlo directamente en objetos de modelo y pipelines de Diffusers

Lea la guía Archivos y estructuras de modelos para obtener más información sobre la estructura de Diffusers-multifolder frente a la estructura de archivo único, y cómo cargar modelos almacenados en estas diferentes estructuras.

Pipelines admitidos

Modelos compatibles

FromSingleFileMixin

clase diffusers.loaders.FromSingleFileMixin

< >

( )

Cargue los pesos del modelo guardados en el formato .ckpt en un DiffusionPipeline.

from_single_file

< >

( pretrained_model_link_or_path**kwargs )

Parámetros

  • pretrained_model_link_or_path (str o os.PathLike, opcional) — Puede ser:
    • Un enlace al archivo .ckpt (por ejemplo "https://huggingface.co/<repo_id>/blob/main/<path_to_file>.ckpt") en el Hub.
    • Una ruta a un archivo que contiene todos los pesos del pipeline.
  • dtype (str o torch.dtype, opcional) — Sobrescribe el torch.dtype predeterminado y carga el modelo con otro dtype.
  • force_download (bool, opcional, valor predeterminado False) — Indica si se debe forzar la (re)descarga de los pesos del modelo y los archivos de configuración, ignorando las versiones en caché si existen.
  • cache_dir (str | os.PathLike, opcional) — Ruta a un directorio donde se almacena en caché la configuración de un modelo preentrenado descargado si no se utiliza la caché estándar.
  • proxies (dict[str, str], opcional) — Un diccionario de servidores proxy a utilizar por protocolo o punto de acceso, por ejemplo, {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Los proxies se utilizan en cada solicitud.
  • local_files_only (bool, opcional, valor predeterminado False) — Indica si se deben cargar únicamente los pesos y archivos de configuración del modelo locales. Si se establece en True, el modelo no se descargará desde el Hub.
  • token (str o bool, opcional) — El token que se usará como autorización HTTP bearer para los archivos remotos. Si True, se utiliza el token generado desde diffusers-cli login (almacenado en ~/.huggingface).
  • revision (str, opcional, valor predeterminado "main") — La versión específica del modelo que se va a utilizar. Puede ser el nombre de una rama, el nombre de una etiqueta, un id de commit o cualquier identificador permitido por Git.
  • original_config_file (str, opcional) — La ruta al archivo de configuración original que se utilizó para entrenar el modelo. Si no se proporciona, el archivo de configuración se inferirá a partir del archivo de checkpoint.
  • config (str, opcional) — Puede ser:
    • Una cadena de caracteres, el repo id (por ejemplo, CompVis/ldm-text2im-large-256) de un pipeline preentrenado alojado en el Hub.
    • Una ruta a un directorio (por ejemplo, ./my_pipeline_directory/) que contiene las configuraciones de los componentes del pipeline en formato Diffusers.
  • disable_mmap (‘bool’, opcional, valor predeterminado ‘False’) — Si se deshabilita mmap al cargar un modelo de Safetensors. Esta opción puede ofrecer un mejor rendimiento cuando el modelo se encuentra en una unidad de red o en un disco duro.
  • kwargs (diccionario restante de argumentos de palabra clave, opcional) — Se puede usar para sobrescribir las variables de carga y guardado (los componentes de pipeline de la clase de pipeline específica). Los componentes sobrescritos se pasan directamente al método __init__ de los pipelines. Consulte el ejemplo siguiente para obtener más información.

Instancia un DiffusionPipeline a partir de pesos de pipeline preentrenados guardados en el formato .ckpt o .safetensors. El pipeline se establece en modo de evaluación (model.eval()) de forma predeterminada.

Ejemplos:

>>> 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

clase diffusers.loaders.FromOriginalModelMixin

< >

( )

Cargue los pesos preentrenados guardados en el formato .ckpt o .safetensors en un modelo.

from_single_file

< >

( pretrained_model_link_or_path_or_dict: str | None = None**kwargs )

Parámetros

  • pretrained_model_link_or_path_or_dict (str, opcional) — Puede ser:
    • Un enlace al archivo .safetensors o .ckpt (por ejemplo "https://huggingface.co/<repo_id>/blob/main/<path_to_file>.safetensors") en el Hub.
    • Una ruta a un archivo local que contiene los pesos del modelo de componente.
    • Un state dict que contiene los pesos del modelo de componentes.
  • config (str, opcional) —
    • Una cadena de caracteres, el repo id (por ejemplo, CompVis/ldm-text2im-large-256) de un pipeline preentrenado alojado en el Hub.
    • Una ruta a un directorio (por ejemplo, ./my_pipeline_directory/) que contenga las configuraciones de los componentes del pipeline en formato Diffusers.
  • subfolder (str, opcional, por defecto "") — La ubicación de la subcarpeta de un archivo de modelo dentro de un repositorio de modelos más grande en el Hub o localmente.
  • original_config (str, opcional) — Diccionario o ruta a un archivo yaml que contiene la configuración del modelo en su formato original. Si se proporciona un diccionario, se utilizará para inicializar la configuración del modelo.
  • dtype (torch.dtype, opcional) — Sobrescribe el torch.dtype predeterminado y carga el modelo con otro dtype.
  • force_download (bool, opcional, valor predeterminado False) — Indica si se debe forzar la (re)descarga de los pesos del modelo y los archivos de configuración, ignorando las versiones en caché si existen.
  • cache_dir (str | os.PathLike, opcional) — Ruta a un directorio donde se almacena en caché la configuración de un modelo preentrenado descargado si no se utiliza la caché estándar.
  • proxies (dict[str, str], opcional) — Un diccionario de servidores proxy a utilizar por protocolo o punto de acceso, por ejemplo, {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Los proxies se utilizan en cada solicitud.
  • local_files_only (bool, opcional, valor predeterminado False) — Indica si se deben cargar únicamente los pesos y archivos de configuración del modelo locales. Si se establece en True, el modelo no se descargará desde el Hub.
  • token (str o bool, opcional) — El token que se usará como autorización HTTP bearer para los archivos remotos. Si True, se utiliza el token generado desde diffusers-cli login (almacenado en ~/.huggingface).
  • revision (str, opcional, valor predeterminado "main") — La versión específica del modelo que se va a utilizar. Puede ser el nombre de una rama, el nombre de una etiqueta, un id de commit o cualquier identificador permitido por Git.
  • low_cpu_mem_usage (bool, opcional, por defecto True si la versión de torch >= 1.9.0 y — is_accelerate_available() en caso contrario False): Acelera la carga del modelo cargando solo los pesos preentrenados y sin inicializar los pesos. Esto también intenta no usar más de 1x el tamaño del modelo en memoria de CPU (incluyendo la memoria pico) mientras se carga el modelo. Solo compatible con PyTorch >= 1.9.0. Si estás usando una versión anterior de PyTorch, establecer este argumento en True generará un error.
  • disable_mmap (‘bool’, opcional, valor predeterminado ‘False’) — Si se deshabilita mmap al cargar un modelo de Safetensors. Esta opción puede ofrecer un mejor rendimiento cuando el modelo está en una unidad de red o en un disco duro, que pueden no manejar bien la naturaleza de búsquedas aleatorias de mmap.
  • kwargs (diccionario restante de argumentos de palabra clave, opcional) — Se puede usar para sobrescribir las variables de carga y guardado (por ejemplo, los componentes de la pipeline de la clase de pipeline específica). Los componentes sobrescritos se pasan directamente al método __init__ de las pipelines. Consulte el ejemplo siguiente para obtener más información.

Instancia un modelo a partir de pesos preentrenados guardados en el formato original .ckpt o .safetensors. El modelo se establece en modo de evaluación (model.eval()) de forma predeterminada.

>>> 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)
Update on GitHub