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 modelo Diffusion Transformer para datos de video 3D utilizado en HunyuanVideo1.5.

El modelo se puede cargar con el siguiente fragmento de código.

from diffusers import HunyuanVideo15Transformer3DModel

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

HunyuanVideo15Transformer3DModel

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

Parámetros

  • in_channels (int, por defecto 16) — El número de canales en la entrada.
  • out_channels (int, por defecto 16) — El número de canales en la salida.
  • num_attention_heads (int, por defecto 24) — El número de cabezas a utilizar para la atención multi-cabeza.
  • attention_head_dim (int, por defecto 128) — El número de canales en cada cabeza.
  • num_layers (int, por defecto 20) — El número de capas de bloques de doble flujo a utilizar.
  • num_refiner_layers (int, por defecto 2) — El número de capas de bloques refiner a utilizar.
  • mlp_ratio (float, por defecto 4.0) — La proporción entre el tamaño de la capa oculta y el tamaño de la entrada en la red feedforward.
  • patch_size (int, por defecto 2) — El tamaño de los parches espaciales que se usarán en la capa de incrustación de parches.
  • patch_size_t (int, por defecto 1) — El tamaño de los parches temporales que se usarán en la capa de incrustación de parches.
  • qk_norm (str, por defecto rms_norm) — La normalización que se utilizará para las proyecciones de consulta y clave en las capas de atención.
  • guidance_embeds (bool, por defecto True) — Si se deben usar embeddings de guía en el modelo.
  • text_embed_dim (int, por defecto 4096) — Dimensión de entrada de las incrustaciones de texto del codificador de texto.
  • pooled_projection_dim (int, por defecto 768) — La dimensión de la proyección agrupada de las incrustaciones de texto.
  • rope_theta (float, por defecto 256.0) — El valor de theta que se utilizará en la capa RoPE.
  • rope_axes_dim (tuple[int], por defecto (16, 56, 56)) — Las dimensiones de los ejes a utilizar en la capa RoPE.

Un modelo Transformer para datos tipo video utilizado en 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 )

Parámetros

  • hidden_states (torch.Tensor de forma (batch_size, num_channels, num_frames, height, width)) — Entrada hidden_states.
  • timestep (torch.LongTensor) — Se utiliza para indicar el paso de desruido.
  • encoder_hidden_states (torch.Tensor de forma (batch_size, sequence_len, embed_dims)) — Incrustaciones condicionales (incrustaciones calculadas a partir de las condiciones de entrada, como los prompts) que se deben utilizar.
  • encoder_attention_mask (torch.Tensor) — Máscara aplicada a encoder_hidden_states durante la atención.
  • timestep_r (torch.LongTensor, opcional) — Condicionamiento del paso de tiempo del refinador.
  • encoder_hidden_states_2 (torch.Tensor, opcional) — Incrustaciones condicionales adicionales calculadas a partir de un segundo codificador de texto (ByT5).
  • encoder_attention_mask_2 (torch.Tensor, opcional) — Máscara aplicada a encoder_hidden_states_2 durante la atención.
  • image_embeds (torch.Tensor, opcional) — Incrustaciones de imagen para la generación condicionada por imagen.
  • attention_kwargs (dict, opcional) — Un diccionario de kwargs que, si se especifica, se pasa al AttentionProcessor definido en self.processor dentro de diffusers.models.attention_processor.
  • return_dict (bool, opcional, valor predeterminado True) — Indica si se debe devolver un ~models.transformer_2d.Transformer2DModelOutput en lugar de una tupla simple.

El método forward de HunyuanVideo15Transformer3DModel.

Transformer2DModelOutput

clase diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

Parámetros

  • sample (torch.Tensor de forma (batch_size, num_channels, height, width) o (batch size, num_vector_embeds - 1, num_latent_pixels) si Transformer2DModel es discreto) — La salida de estados ocultos condicionada a la entrada encoder_hidden_states. Si es discreto, devuelve distribuciones de probabilidad para los píxeles latentes sin ruido.

La salida de Transformer2DModel.

Update on GitHub