Diffusers documentation

TransformerTemporalModel

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

TransformerTemporalModel

Um modelo Transformer para dados semelhantes a vídeo.

TransformerTemporalModel

classe diffusers.TransformerTemporalModel

< >

( num_attention_heads: int = 16attention_head_dim: int = 88in_channels: int | None = Noneout_channels: int | None = Nonenum_layers: int = 1dropout: float = 0.0norm_num_groups: int = 32cross_attention_dim: int | None = Noneattention_bias: bool = Falsesample_size: int | None = Noneactivation_fn: str = 'geglu'norm_elementwise_affine: bool = Truedouble_self_attention: bool = Truepositional_embeddings: str | None = Nonenum_positional_embeddings: int | None = None )

Parâmetros

  • num_attention_heads (int, opcional, padrão 16) — O número de cabeças a serem usadas para a atenção multi-cabeça.
  • attention_head_dim (int, opcional, padrão 88) — O número de canais em cada cabeça.
  • in_channels (int, opcional) — O número de canais na entrada e na saída (especifique se a entrada é contínua).
  • num_layers (int, opcional, padrão 1) — O número de camadas de blocos Transformer a serem usadas.
  • dropout (float, opcional, padrão 0.0) — A probabilidade de dropout a ser utilizada.
  • cross_attention_dim (int, opcional) — O número de dimensões de encoder_hidden_states a serem usadas.
  • attention_bias (bool, opcional) — Configura se a atenção do TransformerBlock deve conter um parâmetro de viés.
  • sample_size (int, opcional) — A largura das imagens latentes (especifique se a entrada for discreta). Isso é fixo durante o treinamento, pois é usado para aprender um número de embeddings de posição.
  • activation_fn (str, opcional, padrão "geglu") — Função de ativação a ser usada no feed-forward. Consulte diffusers.models.activations.get_activation para as funções de ativação suportadas.
  • norm_elementwise_affine (bool, opcional) — Configura se o TransformerBlock deve usar parâmetros afins elementwise aprendíveis para normalização.
  • double_self_attention (bool, opcional) — Configura se cada TransformerBlock deve conter duas camadas de autoatenção.
  • positional_embeddings — (str, opcional): O tipo de embeddings posicionais a aplicar à entrada da sequência antes de passar para uso.
  • num_positional_embeddings — (int, opcional): O comprimento máximo da sequência sobre o qual aplicar embeddings posicionais.

Um modelo Transformer para dados semelhantes a vídeo.

forward

< >

( hidden_states: Tensorencoder_hidden_states: typing.Optional[torch.LongTensor] = Nonetimestep: typing.Optional[torch.LongTensor] = Noneclass_labels: LongTensor = Nonenum_frames: int = 1cross_attention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True ) → TransformerTemporalModelOutput or tuple

Parâmetros

  • hidden_states (torch.LongTensor de forma (batch size, num latent pixels) se discreto, torch.Tensor de forma (batch size, channel, height, width) se contínuo) — hidden_states de entrada.
  • encoder_hidden_states ( torch.LongTensor de forma (batch size, encoder_hidden_states dim), opcional) — Incorporações condicionais para a camada de atenção cruzada. Se não fornecidas, a atenção cruzada usa por padrão a autoatenção.
  • timestep ( torch.LongTensor, opcional) — Usado para indicar o passo de desruido. Timestep opcional a ser aplicado como um embedding em AdaLayerNorm.
  • class_labels ( torch.LongTensor de forma (batch size, num classes), opcional) — Usado para indicar rótulos de classe de condicionamento. Rótulos de classe opcionais a serem aplicados como um embedding em AdaLayerZeroNorm.
  • num_frames (int, opcional, padrão 1) — O número de quadros a serem processados por lote. Isso é usado para redimensionar os estados ocultos.
  • cross_attention_kwargs (dict, opcional) — Um dicionário de kwargs que, se especificado, é passado para o 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 TransformerTemporalModelOutput em vez de uma tupla simples.

Se return_dict for True, um TransformerTemporalModelOutput é retornado; caso contrário, uma tuple em que o primeiro elemento é o tensor da amostra.

O método forward do TransformerTemporal.

TransformerTemporalModelOutput

classe diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput

< >

( sample: Tensor )

Parâmetros

  • sample (torch.Tensor de forma (batch_size x num_frames, num_channels, height, width)) — A saída dos estados ocultos condicionada à entrada encoder_hidden_states.

A saída de TransformerTemporalModel.

Update on GitHub