Diffusers documentation

TransformerTemporalModel

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

TransformerTemporalModel

Модель Transformer для данных, похожих на видео.

TransformerTemporalModel

класс 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 )

Параметры

  • num_attention_heads (int, необязательный, по умолчанию 16) — количество голов, используемых для многоголовного внимания.
  • attention_head_dim (int, необязательный, по умолчанию 88) — количество каналов в каждой голове.
  • in_channels (int, необязательный) — Количество каналов на входе и выходе (укажите, если вход непрерывный).
  • num_layers (int, необязательный, по умолчанию 1) — Количество блоков Transformer, которые следует использовать.
  • dropout (float, необязательный, по умолчанию 0.0) — Вероятность dropout, которую следует использовать.
  • cross_attention_dim (int, необязательный) — Количество измерений encoder_hidden_states, которые следует использовать.
  • attention_bias (bool, необязательный) — Определяет, должен ли механизм внимания в TransformerBlock включать параметр смещения (bias).
  • sample_size (int, необязательный) — ширина латентных изображений (указывается, если вход дискретный). Это значение фиксировано во время обучения, поскольку используется для обучения набора позиционных эмбеддингов.
  • activation_fn (str, необязательный, по умолчанию "geglu") — Функция активации, используемая в полносвязном слое. См. diffusers.models.activations.get_activation для списка поддерживаемых функций активации.
  • norm_elementwise_affine (bool, необязательный) — Определяет, следует ли блоку TransformerBlock использовать обучаемые параметры аффинного преобразования для нормализации.
  • double_self_attention (bool, необязательный) — Определяет, должен ли каждый TransformerBlock содержать два слоя self-attention.
  • positional_embeddings — (str, необязательный): Тип позиционных эмбеддингов, применяемых к входной последовательности перед использованием.
  • num_positional_embeddings — (int, необязательный): Максимальная длина последовательности, для которой применяются позиционные эмбеддинги.

Модель Transformer для данных, похожих на видео.

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

Параметры

  • hidden_states (torch.LongTensor формы (batch size, num latent pixels) для дискретных, torch.Tensor формы (batch size, channel, height, width) для непрерывных) — Входные hidden_states.
  • encoder_hidden_states ( torch.LongTensor формы (batch size, encoder_hidden_states dim), необязательный) — Условные эмбеддинги для слоя кросс-внимания. Если не заданы, кросс-внимание по умолчанию заменяется на само-внимание.
  • timestep ( torch.LongTensor, необязательный) — Используется для указания шага денойзинга. Необязательный timestep, применяемый как эмбеддинг в AdaLayerNorm.
  • class_labels ( torch.LongTensor формы (batch size, num classes), необязательный) — Используется для указания условий по меткам классов. Необязательные метки классов, применяемые как эмбеддинг в AdaLayerZeroNorm.
  • num_frames (int, необязательный, по умолчанию 1) — Количество кадров, обрабатываемых в одном батче. Используется для изменения формы скрытых состояний.
  • cross_attention_kwargs (dict, необязательный) — Словарь kwargs, который при указании передается в AttentionProcessor, определенный в self.processor в модуле diffusers.models.attention_processor.
  • return_dict (bool, необязательный, по умолчанию True) — Определяет, следует ли возвращать TransformerTemporalModelOutput вместо обычного кортежа.

Возвращает

TransformerTemporalModelOutput или tuple

Если return_dict равно True, возвращается TransformerTemporalModelOutput, иначе — tuple, первым элементом которого является тензор выборки.

Метод forward класса TransformerTemporal.

TransformerTemporalModelOutput

класс diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput

< >

( sample: Tensor )

Параметры

  • sample (torch.Tensor формы (batch_size x num_frames, num_channels, height, width)) — Выходные скрытые состояния, обусловленные входом encoder_hidden_states.

Вывод TransformerTemporalModel.

Update on GitHub