Diffusers documentation

AutoModel

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.42.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

AutoModel

AutoModel récupère automatiquement la classe de modèle correcte à partir du fichier config.json du point de contrôle.

AutoModel

classe diffusers.AutoModel

< >

( *args**kwargs )

from_pretrained

< >

( pretrained_model_or_path: str | os.PathLike | None = None**kwargs )

Paramètres

  • pretrained_model_name_or_path (str ou os.PathLike, facultatif) — Peut être soit :
    • Une chaîne de caractères, l'identifiant du modèle (par exemple google/ddpm-celebahq-256) d'un modèle pré-entraîné hébergé sur le Hub.
    • Un chemin vers un dossier (par exemple ./my_model_directory) contenant les poids du modèle enregistrés avec save_pretrained().
  • cache_dir (str | os.PathLike, facultatif) — Chemin vers un répertoire où la configuration d'un modèle pré-entraîné téléchargé est mise en cache si le cache standard n'est pas utilisé.
  • dtype (torch.dtype, facultatif) — Remplace le torch.dtype par défaut et charge le modèle avec un autre dtype.
  • force_download (bool, facultatif, par défaut False) — Indique s'il faut forcer le (re)téléchargement des poids du modèle et des fichiers de configuration, en ignorant les versions mises en cache si elles existent.
  • proxies (dict[str, str], facultatif) — Un dictionnaire de serveurs proxy à utiliser par protocole ou point de terminaison, par exemple, {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Les proxys sont utilisés pour chaque requête.
  • output_loading_info (bool, facultatif, par défaut False) — Indique s'il faut également retourner un dictionnaire contenant les clés manquantes, les clés inattendues et les messages d'erreur.
  • local_files_only(bool, facultatif, par défaut False) — Indique s'il faut charger uniquement les poids et les fichiers de configuration du modèle locaux. Si défini sur True, le modèle ne sera pas téléchargé depuis le Hub.
  • token (str ou bool, facultatif) — Le jeton à utiliser comme autorisation bearer HTTP pour les fichiers distants. Si True, le jeton généré par diffusers-cli login (stocké dans ~/.huggingface) est utilisé.
  • revision (str, facultatif, par défaut "main") — La version spécifique du modèle à utiliser. Il peut s’agir d’un nom de branche, d’un nom de tag, d’un identifiant de commit ou de tout identifiant autorisé par Git.
  • subfolder (str, facultatif, par défaut "") — L’emplacement du sous-dossier d’un fichier de modèle au sein d’un dépôt de modèle plus large sur le Hub ou en local.
  • mirror (str, facultatif) — Source miroir pour résoudre les problèmes d’accessibilité lors du téléchargement d’un modèle en Chine. Nous ne garantissons ni la réactivité ni la sécurité de la source ; veuillez consulter le site miroir pour plus d’informations.
  • device_map (str ou dict[str, int | str | torch.device], facultatif) — Une carte qui spécifie où chaque sous-module doit être placé. Il n'est pas nécessaire de la définir pour chaque nom de paramètre/buffer ; dès qu'un nom de module est inclus, tous ses sous-modules seront envoyés sur le même appareil. La valeur par défaut est None, ce qui signifie que le modèle sera chargé sur le CPU.

    Définissez device_map="auto" pour que 🤗 Accelerate calcule automatiquement le device_map le plus optimisé. Pour plus d’informations sur chaque option, consultez concevoir une carte de périphériques.

  • max_memory (Dict, facultatif) — Un dictionnaire identifiant les appareils pour la mémoire maximale. Par défaut, la valeur est la mémoire maximale disponible pour chaque GPU et la RAM CPU disponible si non définie.
  • offload_folder (str ou os.PathLike, facultatif) — Le chemin vers lequel décharger les poids si device_map contient la valeur "disk".
  • offload_state_dict (bool, facultatif) — Si True, décharge temporairement le dictionnaire d’état CPU sur le disque dur pour éviter d’épuiser la RAM CPU si le poids du dictionnaire d’état CPU + le plus grand fragment du point de contrôle ne tient pas. La valeur par défaut est True lorsqu’une décharge sur disque est présente.
  • low_cpu_mem_usage (bool, facultatif, par défaut True si la version de torch est >= 1.9.0, sinon False) — Accélère le chargement du modèle en ne chargeant que les poids pré-entraînés et sans initialiser les poids. Cela permet également de ne pas utiliser plus de 1 fois la taille du modèle en mémoire CPU (y compris la mémoire de pointe) lors du chargement du modèle. Uniquement pris en charge pour PyTorch >= 1.9.0. Si vous utilisez une version plus ancienne de PyTorch, définir cet argument sur True déclenchera une erreur.
  • variant (str, facultatif) — Charge les poids depuis un nom de fichier variant spécifié, tel que "fp16" ou "ema".
  • use_safetensors (bool, facultatif, valeur par défaut None) — Si défini sur None, les poids safetensors sont téléchargés s’ils sont disponibles et si la bibliothèque safetensors est installée. Si défini sur True, le modèle est chargé de manière forcée à partir des poids safetensors. Si défini sur False, les poids safetensors ne sont pas chargés.
  • disable_mmap (‘bool’, facultatif, valeur par défaut ‘False’) — Indique s'il faut désactiver mmap lors du chargement d'un modèle Safetensors. Cette option peut offrir de meilleures performances lorsque le modèle se trouve sur un montage réseau ou un disque dur, qui peuvent ne pas gérer correctement les accès aléatoires (seek) de mmap.
  • trust_remote_cocde (bool, facultatif, par défaut False) — Indique s'il faut faire confiance au code distant

Instanciez un modèle PyTorch pré-entraîné à partir d'une configuration de modèle pré-entraîné.

Le modèle est configuré en mode évaluation - model.eval() - par défaut, et les modules dropout sont désactivés. Pour entraîner le modèle, le remettre en mode entraînement avec model.train().

> Pour utiliser des modèles privés ou restreints, connectez-vous avec hf > auth login. Vous pouvez également activer le mode spécial > « hors-ligne » pour utiliser cette méthode dans un > environnement protégé par un pare-feu.

Exemple :

from diffusers import AutoModel

unet = AutoModel.from_pretrained("stable-diffusion-v1-5/stable-diffusion-v1-5", subfolder="unet")

Si vous obtenez le message d’erreur ci-dessous, vous devez affiner les poids pour votre tâche en aval :

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.

from_config

< >

( pretrained_model_name_or_path_or_dict: str | os.PathLike | dict | None = None**kwargs )

Paramètres

  • pretrained_model_name_or_path_or_dict (str, os.PathLike, ou dict) — Peut être l'un des éléments suivants :
    • Une chaîne de caractères, l'identifiant du modèle (par exemple google/ddpm-celebahq-256) d'une configuration de modèle pré-entraîné hébergée sur le Hub.
    • Un chemin vers un dossier (par exemple ./my_model_directory) contenant un fichier de configuration de modèle.
    • Un dictionnaire de configuration.
  • cache_dir (Union[str, os.PathLike], facultatif) — Chemin vers un répertoire où la configuration d'un modèle pré-entraîné téléchargé est mise en cache si le cache standard n'est pas utilisé.
  • force_download (bool, facultatif, valeur par défaut False) — Indique s'il faut forcer le (re)téléchargement de la configuration du modèle, en remplaçant la version mise en cache si elle existe.
  • proxies (Dict[str, str], facultatif) — Un dictionnaire de serveurs proxy à utiliser par protocole ou point de terminaison.
  • local_files_only(bool, facultatif, valeur par défaut False) — Indique s'il faut charger uniquement les fichiers de configuration du modèle locaux.
  • token (str ou bool, facultatif) — Le jeton à utiliser comme autorisation HTTP bearer pour les fichiers distants.
  • revision (str, facultatif, par défaut "main") — La version spécifique du modèle à utiliser.
  • trust_remote_code (bool, facultatif, valeur par défaut False) — Indique s'il faut faire confiance au code distant.
  • subfolder (str, facultatif, par défaut "") — L’emplacement du sous-dossier d’un fichier de modèle au sein d’un dépôt de modèle plus large sur le Hub ou en local.

Instanciez un modèle à partir d'un dictionnaire de configuration ou d'un fichier de configuration de modèle préentraîné avec des poids aléatoires (aucun poids préentraîné n'est chargé).

Exemple :

from diffusers import AutoModel

model = AutoModel.from_config("stable-diffusion-v1-5/stable-diffusion-v1-5", subfolder="unet")
Update on GitHub