Diffusers documentation

HunyuanVideo15Transformer3DModel

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

HunyuanVideo15Transformer3DModel

Un modèle Diffusion Transformer pour des données vidéo 3D, utilisé dans HunyuanVideo1.5.

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

from diffusers import HunyuanVideo15Transformer3DModel

transformer = HunyuanVideo15Transformer3DModel.from_pretrained("hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_t2v" subfolder="transformer", dtype=torch.bfloat16)

HunyuanVideo15Transformer3DModel

classe diffusers.HunyuanVideo15Transformer3DModel

< >

( in_channels: int = 65out_channels: int = 32num_attention_heads: int = 16attention_head_dim: int = 128num_layers: int = 54num_refiner_layers: int = 2mlp_ratio: float = 4.0patch_size: int = 1patch_size_t: int = 1qk_norm: str = 'rms_norm'text_embed_dim: int = 3584text_embed_2_dim: int = 1472image_embed_dim: int = 1152rope_theta: float = 256.0rope_axes_dim: tuple = (16, 56, 56)target_size: int = 640task_type: str = 'i2v'use_meanflow: bool = False )

Paramètres

  • in_channels (int, par défaut 16) — Le nombre de canaux dans l'entrée.
  • out_channels (int, par défaut 16) — Le nombre de canaux dans la sortie.
  • num_attention_heads (int, par défaut 24) — Le nombre de têtes à utiliser pour l'attention multi-têtes.
  • attention_head_dim (int, par défaut 128) — Le nombre de canaux dans chaque tête.
  • num_layers (int, par défaut 20) — Le nombre de blocs dual-stream à utiliser.
  • num_refiner_layers (int, par défaut 2) — Le nombre de blocs de refiner à utiliser.
  • mlp_ratio (float, par défaut 4.0) — Le ratio de la taille de la couche cachée par rapport à la taille de l'entrée dans le réseau feedforward.
  • patch_size (int, par défaut 2) — La taille des patches spatiaux à utiliser dans la couche d'encodage de patches.
  • patch_size_t (int, par défaut 1) — La taille des patches temporels à utiliser dans la couche d'incorporation de patches.
  • qk_norm (str, par défaut rms_norm) — La normalisation à utiliser pour les projections de requête et de clé dans les couches d'attention.
  • guidance_embeds (bool, par défaut True) — Indique si les embeddings de guidance doivent être utilisés dans le modèle.
  • text_embed_dim (int, par défaut 4096) — Dimension d'entrée des embeddings de texte issus de l'encodeur de texte.
  • pooled_projection_dim (int, par défaut 768) — La dimension de la projection agrégée des embeddings de texte.
  • rope_theta (float, par défaut 256.0) — La valeur de theta à utiliser dans la couche RoPE.
  • rope_axes_dim (tuple[int], par défaut (16, 56, 56)) — Les dimensions des axes à utiliser dans la couche RoPE.

Un modèle Transformer pour des données de type vidéo utilisé dans HunyuanVideo1.5.

forward

< >

( hidden_states: Tensortimestep: LongTensorencoder_hidden_states: Tensorencoder_attention_mask: Tensortimestep_r: typing.Optional[torch.LongTensor] = Noneencoder_hidden_states_2: typing.Optional[torch.Tensor] = Noneencoder_attention_mask_2: typing.Optional[torch.Tensor] = Noneimage_embeds: typing.Optional[torch.Tensor] = Noneattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True )

Paramètres

  • hidden_states (torch.Tensor de forme (batch_size, num_channels, num_frames, 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.
  • timestep_r (torch.LongTensor, facultatif) — Conditionnement du pas de temps du raffineur.
  • encoder_hidden_states_2 (torch.Tensor, facultatif) — Embeddings conditionnels supplémentaires calculés à partir d’un second encodeur de texte (ByT5).
  • encoder_attention_mask_2 (torch.Tensor, facultatif) — Masque appliqué à encoder_hidden_states_2 lors de l'attention.
  • image_embeds (torch.Tensor, facultatif) — Embeddings d’images pour la génération conditionnée par image.
  • 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 HunyuanVideo15Transformer3DModel.

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