Diffusers documentation

LTXVideoTransformer3DModel

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

LTXVideoTransformer3DModel

Um modelo Diffusion Transformer para dados 3D da LTX foi introduzido pela Lightricks.

O modelo pode ser carregado com o seguinte trecho de código.

from diffusers import LTXVideoTransformer3DModel

transformer = LTXVideoTransformer3DModel.from_pretrained("Lightricks/LTX-Video", subfolder="transformer", dtype=torch.bfloat16).to("cuda")  # or "mps", "xpu", "cpu"

LTXVideoTransformer3DModel

classe diffusers.LTXVideoTransformer3DModel

< >

( in_channels: int = 128out_channels: int = 128patch_size: int = 1patch_size_t: int = 1num_attention_heads: int = 32attention_head_dim: int = 64cross_attention_dim: int = 2048num_layers: int = 28activation_fn: str = 'gelu-approximate'qk_norm: str = 'rms_norm_across_heads'norm_elementwise_affine: bool = Falsenorm_eps: float = 1e-06caption_channels: int = 4096attention_bias: bool = Trueattention_out_bias: bool = True )

Parâmetros

  • in_channels (int, padrão 128) — O número de canais na entrada.
  • out_channels (int, padrão 128) — O número de canais na saída.
  • patch_size (int, padrão 1) — O tamanho dos patches espaciais a serem usados na camada de incorporação de patches.
  • patch_size_t (int, padrão 1) — O tamanho dos patches temporais a serem usados na camada de incorporação de patches.
  • num_attention_heads (int, padrão 32) — O número de cabeças a serem usadas para a atenção multi-cabeça.
  • attention_head_dim (int, padrão 64) — O número de canais em cada cabeça.
  • cross_attention_dim (int, padrão 2048 ) — O número de canais para as cabeças de atenção cruzada.
  • num_layers (int, padrão 28) — O número de blocos de camadas de Transformer a serem usados.
  • activation_fn (str, padrão "gelu-approximate") — Função de ativação a ser usada no feed-forward.
  • qk_norm (str, padrão "rms_norm_across_heads") — A camada de normalização a ser usada.

Um modelo Transformer para dados semelhantes a vídeo usado no LTX.

forward

< >

( hidden_states: Tensorencoder_hidden_states: Tensortimestep: LongTensorencoder_attention_mask: Tensornum_frames: int | None = Noneheight: int | None = Nonewidth: int | None = Nonerope_interpolation_scale: typing.Union[tuple[float, float, float], torch.Tensor, NoneType] = Nonevideo_coords: typing.Optional[torch.Tensor] = Noneattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True ) → torch.Tensor

Parâmetros

  • hidden_states (torch.Tensor de forma (batch_size, sequence_length, in_channels)) — hidden_states de entrada.
  • encoder_hidden_states (torch.Tensor de forma (batch_size, sequence_len, embed_dims)) — Incorporações condicionais (incorporações calculadas a partir das condições de entrada, como prompts) a serem usadas.
  • timestep (torch.LongTensor) — Usado para indicar o passo de desruido.
  • encoder_attention_mask (torch.Tensor) — Máscara aplicada a encoder_hidden_states durante a atenção.
  • num_frames (int, opcional) — Número de quadros no vídeo usado para calcular os embeddings posicionais rotativos.
  • height (int, opcional) — Altura do latente usado para calcular os embeddings posicionais rotativos.
  • width (int, opcional) — Largura do latente usado para calcular os embeddings posicionais rotativos.
  • rope_interpolation_scale (tuple de float ou torch.Tensor, opcional) — Escala de interpolação usada pelos embeddings posicionais rotativos.
  • video_coords (torch.Tensor, opcional) — Coordenadas de vídeo pré-computadas usadas pelos embeddings posicionais rotativos.
  • attention_kwargs (dict, opcional) — Um dicionário de kwargs que, se especificado, é passado ao AttentionProcessor conforme definido em self.processor em diffusers.models.attention_processor.
  • return_dict (bool, opcional, padrão True) — Se deve ou não retornar um ~models.transformer_2d.Transformer2DModelOutput em vez de uma tupla simples.

Retorna

torch.Tensor

O tensor de saída dessonificado com forma (batch_size, sequence_length, out_channels).

O método forward do LTXVideoTransformer3DModel.

Transformer2DModelOutput

classe diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

Parâmetros

  • sample (torch.Tensor de forma (batch_size, num_channels, height, width) ou (batch size, num_vector_embeds - 1, num_latent_pixels) se Transformer2DModel for discreto) — A saída dos estados ocultos condicionada à entrada encoder_hidden_states. Se discreto, retorna distribuições de probabilidade para os pixels latentes sem ruído.

A saída de Transformer2DModel.

Update on GitHub