# LTXVideoTransformer3DModel

Model Diffusion Transformer untuk data 3D dari [LTX](https://huggingface.co/Lightricks/LTX-Video) diperkenalkan oleh Lightricks.

Model dapat dimuat dengan potongan kode berikut.

```python
from diffusers import LTXVideoTransformer3DModel

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

## LTXVideoTransformer3DModel[[diffusers.LTXVideoTransformer3DModel]]

#### diffusers.LTXVideoTransformer3DModel[[diffusers.LTXVideoTransformer3DModel]]

```python
diffusers.LTXVideoTransformer3DModel(in_channels: int = 128, out_channels: int = 128, patch_size: int = 1, patch_size_t: int = 1, num_attention_heads: int = 32, attention_head_dim: int = 64, cross_attention_dim: int = 2048, num_layers: int = 28, activation_fn: str = 'gelu-approximate', qk_norm: str = 'rms_norm_across_heads', norm_elementwise_affine: bool = False, norm_eps: float = 1e-06, caption_channels: int = 4096, attention_bias: bool = True, attention_out_bias: bool = True)
```

[Sumber](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/transformers/transformer_ltx.py#L379)

**Parameter:**

in_channels (`int`, defaultnya `128`) : Jumlah channel pada input.

out_channels (`int`, defaultnya `128`) : Jumlah channel pada output.

patch_size (`int`, defaultnya `1`) : Ukuran patch spasial yang akan digunakan di lapisan patch embedding.

patch_size_t (`int`, defaultnya `1`) : Ukuran patch temporal yang akan digunakan di lapisan patch embedding.

num_attention_heads (`int`, defaultnya `32`) : Jumlah kepala yang digunakan untuk multi-head attention.

attention_head_dim (`int`, defaultnya `64`) : Jumlah channel di setiap head.

cross_attention_dim (`int`, defaultnya `2048 `) : Jumlah channel untuk cross attention heads.

num_layers (`int`, defaultnya `28`) : Jumlah lapisan blok Transformer yang akan digunakan.

activation_fn (`str`, defaultnya `"gelu-approximate"`) : Fungsi aktivasi yang digunakan dalam feed-forward.

qk_norm (`str`, defaultnya `"rms_norm_across_heads"`) : Lapisan normalisasi yang akan digunakan.

Model Transformer untuk data mirip video yang digunakan dalam [LTX](https://huggingface.co/Lightricks/LTX-Video).

#### forward[[diffusers.LTXVideoTransformer3DModel.forward]]

```python
forward(hidden_states: Tensor, encoder_hidden_states: Tensor, timestep: LongTensor, encoder_attention_mask: Tensor, num_frames: int | None = None, height: int | None = None, width: int | None = None, rope_interpolation_scale: typing.Union[tuple[float, float, float], torch.Tensor, NoneType] = None, video_coords: typing.Optional[torch.Tensor] = None, attention_kwargs: dict[str, typing.Any] | None = None, return_dict: bool = True)
```

[Sumber](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/transformers/transformer_ltx.py#L488)

**Parameter:**

hidden_states (`torch.Tensor` dengan bentuk `(batch_size, sequence_length, in_channels)`) : Input `hidden_states`.

encoder_hidden_states (`torch.Tensor` dengan bentuk `(batch_size, sequence_len, embed_dims)`) : Embedding kondisional (embedding yang dihitung dari kondisi input seperti prompt) yang akan digunakan.

timestep (`torch.LongTensor`) : Digunakan untuk menunjukkan langkah denoising.

encoder_attention_mask (`torch.Tensor`) : Mask yang diterapkan pada `encoder_hidden_states` selama perhatian.

num_frames (`int`, *opsional*) : Jumlah frame dalam video yang digunakan untuk menghitung rotary positional embeddings.

height (`int`, *opsional*) : Tinggi dari laten yang digunakan untuk menghitung penyematan posisi rotasi.

width (`int`, *opsional*) : Lebar laten yang digunakan untuk menghitung penanaman posisi rotasi.

rope_interpolation_scale (`tuple` dari `float` atau `torch.Tensor`, *opsional*) : Skala interpolasi yang digunakan oleh penanam posisi rotasi.

video_coords (`torch.Tensor`, *opsional*) : Koordinat video yang telah dihitung sebelumnya dan digunakan oleh penanam posisi rotasi.

attention_kwargs (`dict`, *opsional*) : Kamus kwargs yang jika ditentukan akan diteruskan ke `AttentionProcessor` seperti yang didefinisikan di bawah `self.processor` dalam [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).

return_dict (`bool`, *opsional*, defaultnya `True`) : Apakah akan mengembalikan `~models.transformer_2d.Transformer2DModelOutput` alih-alih tuple biasa.

**Mengembalikan:** `torch.Tensor`

Tensor output hasil denoising dengan bentuk `(batch_size, sequence_length, out_channels)`.

Metode forward dari [LTXVideoTransformer3DModel](/docs/diffusers/v0.43.0/id/api/models/ltx_video_transformer3d#diffusers.LTXVideoTransformer3DModel).

## Transformer2DModelOutput[[diffusers.models.modeling_outputs.Transformer2DModelOutput]]

#### diffusers.models.modeling_outputs.Transformer2DModelOutput[[diffusers.models.modeling_outputs.Transformer2DModelOutput]]

```python
diffusers.models.modeling_outputs.Transformer2DModelOutput(sample: torch.Tensor)
```

[Sumber](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/modeling_outputs.py#L21)

**Parameter:**

sample (`torch.Tensor` dengan bentuk `(batch_size, num_channels, height, width)` atau `(batch size, num_vector_embeds - 1, num_latent_pixels)` jika [Transformer2DModel](/docs/diffusers/v0.43.0/id/api/models/transformer2d#diffusers.Transformer2DModel) bersifat diskrit) : Output hidden states yang dikondisikan pada input `encoder_hidden_states`. Jika diskrit, mengembalikan distribusi probabilitas untuk piksel laten yang tidak berisik.

Output dari [Transformer2DModel](/docs/diffusers/v0.43.0/id/api/models/transformer2d#diffusers.Transformer2DModel).

