Diffusers documentation

EasyAnimateTransformer3DModel

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

EasyAnimateTransformer3DModel

Un modelo Diffusion Transformer para datos 3D de EasyAnimate fue introducido por Alibaba PAI.

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

from diffusers import EasyAnimateTransformer3DModel

transformer = EasyAnimateTransformer3DModel.from_pretrained("alibaba-pai/EasyAnimateV5.1-12b-zh", subfolder="transformer", dtype=torch.float16).to("cuda")  # or "mps", "xpu", "cpu"

EasyAnimateTransformer3DModel

clase diffusers.EasyAnimateTransformer3DModel

< >

( num_attention_heads: int = 48attention_head_dim: int = 64in_channels: int | None = Noneout_channels: int | None = Nonepatch_size: int | None = Nonesample_width: int = 90sample_height: int = 60activation_fn: str = 'gelu-approximate'timestep_activation_fn: str = 'silu'freq_shift: int = 0num_layers: int = 48mmdit_layers: int = 48dropout: float = 0.0time_embed_dim: int = 512add_norm_text_encoder: bool = Falsetext_embed_dim: int = 3584text_embed_dim_t5: int = Nonenorm_eps: float = 1e-05norm_elementwise_affine: bool = Trueflip_sin_to_cos: bool = Truetime_position_encoding_type: str = '3d_rope'after_norm = Falseresize_inpaint_mask_directly: bool = Trueenable_text_attention_mask: bool = Trueadd_noise_in_inpaint_model: bool = True )

Parámetros

  • num_attention_heads (int, por defecto 48) — El número de cabezas a utilizar para la atención multi-cabeza.
  • attention_head_dim (int, por defecto 64) — El número de canales en cada cabeza.
  • in_channels (int, por defecto 16) — El número de canales en la entrada.
  • out_channels (int, opcional, valor predeterminado 16) — El número de canales en la salida.
  • patch_size (int, por defecto 2) — El tamaño de los parches a utilizar en la capa de incrustación de parches.
  • sample_width (int, por defecto 90) — El ancho de los latentes de entrada.
  • sample_height (int, por defecto 60) — La altura de los latentes de entrada.
  • activation_fn (str, por defecto "gelu-approximate") — Función de activación a utilizar en la red feed-forward.
  • timestep_activation_fn (str, por defecto "silu") — Función de activación a utilizar al generar las incrustaciones de paso temporal.
  • num_layers (int, por defecto 30) — El número de capas de bloques Transformer a utilizar.
  • mmdit_layers (int, por defecto 1000) — El número de capas de bloques Multi Modal Transformer a utilizar.
  • dropout (float, por defecto 0.0) — La probabilidad de dropout a utilizar.
  • time_embed_dim (int, por defecto 512) — Dimensión de salida de las incrustaciones de paso de tiempo.
  • text_embed_dim (int, por defecto 4096) — Dimensión de entrada de las incrustaciones de texto del codificador de texto.
  • norm_eps (float, por defecto 1e-5) — El valor de epsilon a utilizar en las capas de normalización.
  • norm_elementwise_affine (bool, por defecto True) — Si se debe usar afinidad por elemento en las capas de normalización.
  • flip_sin_to_cos (bool, por defecto True) — Si se debe cambiar el sin por el cos en la incrustación temporal.
  • time_position_encoding_type (str, por defecto 3d_rope) — Tipo de codificación de posición temporal.
  • after_norm (bool, por defecto False) — Bandera para aplicar la normalización después.
  • resize_inpaint_mask_directly (bool, por defecto True) — Bandera para redimensionar directamente la máscara de inpaint.
  • enable_text_attention_mask (bool, por defecto True) — Bandera para habilitar la máscara de atención de texto.
  • add_noise_in_inpaint_model (bool, por defecto False) — Bandera para añadir ruido en el modelo de inpaint.

Un modelo Transformer para datos tipo video en EasyAnimate.

forward

< >

( hidden_states: Tensortimestep: Tensortimestep_cond: typing.Optional[torch.Tensor] = Noneencoder_hidden_states: typing.Optional[torch.Tensor] = Noneencoder_hidden_states_t5: typing.Optional[torch.Tensor] = Noneinpaint_latents: typing.Optional[torch.Tensor] = Nonecontrol_latents: typing.Optional[torch.Tensor] = Nonereturn_dict: bool = True )

Parámetros

  • hidden_states (torch.Tensor de forma (batch_size, channels, num_frames, height, width)) — Entrada hidden_states.
  • timestep (torch.LongTensor) — Se utiliza para indicar el paso de desruido.
  • timestep_cond (torch.Tensor, opcional) — Incrustaciones condicionales para el paso de tiempo. Si se proporcionan, las incrustaciones se sumarán con las muestras pasadas a través de la capa self.time_embedding para obtener las incrustaciones finales del paso de tiempo.
  • encoder_hidden_states (torch.Tensor, opcional) — Embeddings condicionales (embeddings calculados a partir de las condiciones de entrada, como los prompts) a utilizar.
  • encoder_hidden_states_t5 (torch.Tensor, opcional) — Incrustaciones condicionales adicionales calculadas a partir de un codificador de texto T5.
  • inpaint_latents (torch.Tensor, opcional) — Latentes concatenados a hidden_states para las variantes de inpainting del modelo.
  • control_latents (torch.Tensor, opcional) — Latentes concatenados a hidden_states para las variantes de control del modelo.
  • 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 EasyAnimateTransformer3DModel.

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