## LatteTransformer3DModel

Модель Diffusion Transformer для 3D-данных из [Latte](https://github.com/Vchitect/Latte).

## LatteTransformer3DModel[[diffusers.LatteTransformer3DModel]]

#### diffusers.LatteTransformer3DModel[[diffusers.LatteTransformer3DModel]]

```python
diffusers.LatteTransformer3DModel(num_attention_heads: int = 16, attention_head_dim: int = 88, in_channels: int | None = None, out_channels: int | None = None, num_layers: int = 1, dropout: float = 0.0, cross_attention_dim: int | None = None, attention_bias: bool = False, sample_size: int = 64, patch_size: int | None = None, activation_fn: str = 'geglu', num_embeds_ada_norm: int | None = None, norm_type: str = 'layer_norm', norm_elementwise_affine: bool = True, norm_eps: float = 1e-05, caption_channels: int = None, video_length: int = 16)
```

[Источник](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/latte_transformer_3d.py#L27)

#### forward[[diffusers.LatteTransformer3DModel.forward]]

```python
forward(hidden_states: Tensor, timestep: typing.Optional[torch.LongTensor] = None, encoder_hidden_states: typing.Optional[torch.Tensor] = None, encoder_attention_mask: typing.Optional[torch.Tensor] = None, enable_temporal_attentions: bool = True, return_dict: bool = True)
```

[Источник](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/latte_transformer_3d.py#L166)

**Параметры:**

hidden_states (`torch.Tensor` формы `(batch size, channel, num_frame, height, width)`) : Входные `hidden_states`.

timestep ( `torch.LongTensor`, *необязательный*) : Используется для указания шага денойзинга. Необязательный временной шаг, применяемый как эмбеддинг в `AdaLayerNorm`.

encoder_hidden_states ( `torch.FloatTensor` формы `(batch size, sequence len, embed dims)`, *необязательный*) : Условные эмбеддинги для слоя кросс-внимания. Если не заданы, кросс-внимание по умолчанию работает как само-внимание.

encoder_attention_mask ( `torch.Tensor`, *необязательный*) : Маска кросс-внимания, применяемая к `encoder_hidden_states`. Поддерживаются два формата:  * Маска `(batcheight, sequence_length)` True = сохранить, False = отбросить. * Смещение `(batcheight, 1, sequence_length)` 0 = сохранить, -10000 = отбросить.  Если `ndim == 2`: значение будет интерпретировано как маска, а затем преобразовано в смещение, соответствующее описанному выше формату. Это смещение будет добавлено к оценкам кросс-внимания.

enable_temporal_attentions : (`bool`, *необязательный*, по умолчанию `True`): Включает ли временное внимание.

return_dict (`bool`, *необязательный*, по умолчанию `True`) : Возвращать ли `~models.unet_2d_condition.UNet2DConditionOutput` вместо обычного кортежа.

**Возвращает:**

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

Метод forward модели [LatteTransformer3DModel](/docs/diffusers/main/ru/api/models/latte_transformer3d#diffusers.LatteTransformer3DModel).

