Diffusers documentation

Lumina2Transformer2DModel

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

Lumina2Transformer2DModel

Un modèle Diffusion Transformer pour des données vidéo 3D a été introduit dans Lumina Image 2.0 par Alpha-VLLM.

Le modèle peut être chargé à l'aide du fragment de code suivant.

from diffusers import Lumina2Transformer2DModel

transformer = Lumina2Transformer2DModel.from_pretrained("Alpha-VLLM/Lumina-Image-2.0", subfolder="transformer", dtype=torch.bfloat16)

Lumina2Transformer2DModel

classe diffusers.Lumina2Transformer2DModel

< >

( sample_size: int = 128patch_size: int = 2in_channels: int = 16out_channels: int | None = Nonehidden_size: int = 2304num_layers: int = 26num_refiner_layers: int = 2num_attention_heads: int = 24num_kv_heads: int = 8multiple_of: int = 256ffn_dim_multiplier: float | None = Nonenorm_eps: float = 1e-05scaling_factor: float = 1.0axes_dim_rope: tuple = (32, 32, 32)axes_lens: tuple = (300, 512, 512)cap_feat_dim: int = 1024 )

Paramètres

  • sample_size (int) — La largeur des images latentes. Cette valeur est fixe pendant l’entraînement, car elle est utilisée pour apprendre un nombre d’embeddings de position.
  • patch_size (int, facultatif, (int, facultatif, par défaut 2) — La taille de chaque patch dans l'image. Ce paramètre définit la résolution des patches fournis au modèle.
  • in_channels (int, facultatif, valeur par défaut 4) — Le nombre de canaux d'entrée du modèle. En général, ce nombre correspond au nombre de canaux des images d'entrée.
  • hidden_size (int, facultatif, par défaut 4096) — La dimension des couches cachées du modèle. Ce paramètre détermine la largeur des représentations cachées du modèle.
  • num_layers (int, facultatif, par défaut 32) — Le nombre de couches du modèle. Cela définit la profondeur du réseau de neurones.
  • num_attention_heads (int, facultatif, valeur par défaut 32) — Le nombre de têtes d'attention dans chaque couche d'attention. Ce paramètre spécifie le nombre de mécanismes d'attention distincts utilisés.
  • num_kv_heads (int, facultatif, valeur par défaut : 8) — Le nombre de têtes clé-valeur dans le mécanisme d'attention, s'il diffère du nombre de têtes d'attention. Si None, la valeur par défaut est num_attention_heads.
  • multiple_of (int, facultatif, valeur par défaut 256) — Un facteur dont la taille cachée doit être un multiple. Cela peut aider à optimiser certaines configurations matérielles.
  • ffn_dim_multiplier (float, facultatif) — Un multiplicateur pour la dimensionnalité du réseau feed-forward. Si None, il utilise une valeur par défaut basée sur la configuration du modèle.
  • norm_eps (float, facultatif, valeur par défaut 1e-5) — Une petite valeur ajoutée au dénominateur pour la stabilité numérique dans les couches de normalisation.
  • scaling_factor (float, facultatif, valeur par défaut 1.0) — Facteur d'échelle appliqué à certains paramètres ou couches du modèle. Il peut être utilisé pour ajuster l'échelle globale des opérations du modèle.

Lumina2NextDiT : modèle de diffusion avec un squelette Transformer.

forward

< >

( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_attention_mask: Tensorattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True )

Paramètres

  • hidden_states (torch.Tensor de forme (batch_size, in_channels, height, width)) — hidden_states d'entrée.
  • timestep (torch.LongTensor) — Utilisé pour indiquer l'étape de débruitage.
  • encoder_hidden_states (torch.Tensor de forme (batch_size, sequence_len, embed_dims)) — Embeddings conditionnels (embeddings calculés à partir des conditions d’entrée telles que les prompts) à utiliser.
  • encoder_attention_mask (torch.Tensor) — Masque appliqué à encoder_hidden_states lors de l'attention.
  • attention_kwargs (dict, facultatif) — Un dictionnaire de kwargs qui, s'il est spécifié, est transmis à l'AttentionProcessor défini sous self.processor dans diffusers.models.attention_processor.
  • return_dict (bool, facultatif, par défaut True) — Indique s'il faut retourner un ~models.transformer_2d.Transformer2DModelOutput plutôt qu'un simple tuple.

La méthode forward du Lumina2Transformer2DModel.

Transformer2DModelOutput

classe diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

Paramètres

  • sample (torch.Tensor de forme (batch_size, num_channels, height, width) ou (batch size, num_vector_embeds - 1, num_latent_pixels) si Transformer2DModel est discret) — Les états cachés en sortie, conditionnés par l'entrée encoder_hidden_states. Si discret, renvoie les distributions de probabilité pour les pixels latents non bruités.

La sortie de Transformer2DModel.

Update on GitHub