# AutoencoderKLLTXVideo

[LTX](https://huggingface.co/Lightricks/LTX-Video) içinde kullanılan KL kaybına sahip 3D varyasyonel otoenkoder (VAE) modeli, Lightricks tarafından tanıtılmıştır.

Model, aşağıdaki kod parçasıyla yüklenebilir.

```python
from diffusers import AutoencoderKLLTXVideo

vae = AutoencoderKLLTXVideo.from_pretrained("Lightricks/LTX-Video", subfolder="vae", dtype=torch.float32).to("cuda")  # or "mps", "xpu", "cpu"
```

## AutoencoderKLLTXVideo[[diffusers.AutoencoderKLLTXVideo]]

#### diffusers.AutoencoderKLLTXVideo[[diffusers.AutoencoderKLLTXVideo]]

```python
diffusers.AutoencoderKLLTXVideo(in_channels: int = 3, out_channels: int = 3, latent_channels: int = 128, block_out_channels: tuple = (128, 256, 512, 512), down_block_types: tuple = ('LTXVideoDownBlock3D', 'LTXVideoDownBlock3D', 'LTXVideoDownBlock3D', 'LTXVideoDownBlock3D'), decoder_block_out_channels: tuple = (128, 256, 512, 512), layers_per_block: tuple = (4, 3, 3, 3, 4), decoder_layers_per_block: tuple = (4, 3, 3, 3, 4), spatio_temporal_scaling: tuple = (True, True, True, False), decoder_spatio_temporal_scaling: tuple = (True, True, True, False), decoder_inject_noise: tuple = (False, False, False, False, False), downsample_type: tuple = ('conv', 'conv', 'conv', 'conv'), upsample_residual: tuple = (False, False, False, False), upsample_factor: tuple = (1, 1, 1, 1), timestep_conditioning: bool = False, patch_size: int = 4, patch_size_t: int = 1, resnet_norm_eps: float = 1e-06, scaling_factor: float = 1.0, encoder_causal: bool = True, decoder_causal: bool = False, spatial_compression_ratio: int = None, temporal_compression_ratio: int = None)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kl_ltx.py#L1035)

**Parametreler:**

in_channels (`int`, varsayılan `3`) : Girdi kanal sayısı.

out_channels (`int`, varsayılan `3`) : Çıkış kanal sayısı.

latent_channels (`int`, varsayılan `128`) : Gizli kanal sayısı.

block_out_channels (`tuple[int, ...]`, varsayılan `(128, 256, 512, 512)`) : Her blok için çıktı kanalı sayısı.

spatio_temporal_scaling (`tuple[bool, ...], defaults to `(True, True, True, False)` : Whether a block should contain spatio-temporal downscaling or not.

layers_per_block (`tuple[int, ...]`, varsayılan `(4, 3, 3, 3, 4)`) : Blok başına katman sayısı.

patch_size (`int`, varsayılan `4`) : Uzamsal yamaların boyutu.

patch_size_t (`int`, varsayılan `1`) : Zaman dilimlerinin boyutu.

resnet_norm_eps (`float`, varsayılan `1e-6`) : ResNet normalizasyon katmanları için epsilon değeri.

scaling_factor (`float`, *isteğe bağlı*, varsayılan `1.0`) : Eğitim setinin ilk partisi kullanılarak hesaplanan, eğitilmiş gizli uzayın bileşen bazlı standart sapması. Bu değer, difüzyon modeli eğitilirken gizli uzayın birim varyansa sahip olacak şekilde ölçeklenmesinde kullanılır. Gizli değişkenler, difüzyon modeline aktarılmadan önce `z = z * scaling_factor` formülüyle ölçeklenir. Kod çözülürken, gizli değişkenler şu formülle orijinal ölçeğe geri döndürülür: `z = 1 / scaling_factor * z`. Daha fazla ayrıntı için [High-Resolution Image Synthesis with Latent Diffusion Models](https://huggingface.co/papers/2112.10752) makalesinin 4.3.2 ve D.1 bölümlerine bakın.

encoder_causal (`bool`, varsayılan `True`) : Kodlayıcının nedensel olarak mı (gelecek karelerin yalnızca geçmiş karelere bağımlı olması) yoksa nedensel olmayan şekilde mi davranacağı.

decoder_causal (`bool`, varsayılan `False`) : Çözücünün nedensel olarak mı (gelecek karelerin yalnızca geçmiş karelere bağlı olması) yoksa nedensel olmayan şekilde mi davranacağı.

Görselleri latentlere kodlamak ve latent temsilleri görsellere çözmek için KL kaybı kullanan bir VAE modeli. [LTX](https://huggingface.co/Lightricks/LTX-Video)'te kullanılır.

Bu model [ModelMixin](/docs/diffusers/main/tr/api/models/overview#diffusers.ModelMixin) sınıfından devralır. Tüm modeller için uygulanan genel yöntemlerini (indirme veya kaydetme gibi) görmek için üst sınıfın belgelendirmesine bakın.

#### decode[[diffusers.AutoencoderKLLTXVideo.decode]]

```python
decode(z: Tensor, temb: typing.Optional[torch.Tensor] = None, return_dict: bool = True)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kl_ltx.py#L1281)

**Parametreler:**

z (`torch.Tensor`) : Gizil vektörlerin giriş partisi.

return_dict (`bool`, *isteğe bağlı*, varsayılan `True`) : Düz bir tuple yerine `~models.vae.DecoderOutput` döndürülüp döndürülmemesi.

**Dönüş:** `~models.vae.DecoderOutput` veya `tuple`

return_dict True ise, `~models.vae.DecoderOutput` döndürülür, aksi takdirde düz bir `tuple` döndürülür.

Bir görüntü grubunu çözümlen.

#### encode[[diffusers.AutoencoderKLLTXVideo.encode]]

```python
encode(x: Tensor, return_dict: bool = True)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kl_ltx.py#L1233)

**Parametreler:**

x (`torch.Tensor`) : Giriş görüntü partisi.

return_dict (`bool`, *isteğe bağlı*, varsayılan `True`) : Düz bir tuple yerine `~models.autoencoder_kl.AutoencoderKLOutput` döndürülüp döndürülmediğini belirtir.

**Dönüş:**

Kodlanmış videoların gizil (latent) temsilleri. `return_dict` True ise bir `~models.autoencoder_kl.AutoencoderKLOutput` döndürülür, aksi halde düz bir `tuple` döndürülür.

Bir görüntü grubunu latentlere kodlayın.

#### enable_tiling[[diffusers.AutoencoderKLLTXVideo.enable_tiling]]

```python
enable_tiling(tile_sample_min_height: int | None = None, tile_sample_min_width: int | None = None, tile_sample_min_num_frames: int | None = None, tile_sample_stride_height: float | None = None, tile_sample_stride_width: float | None = None, tile_sample_stride_num_frames: float | None = None)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kl_ltx.py#L1186)

**Parametreler:**

tile_sample_min_height (`int`, *isteğe bağlı*) : Bir örneğin yükseklik boyutu boyunca karolalara ayrılabilmesi için gereken minimum yükseklik.

tile_sample_min_width (`int`, *isteğe bağlı*) : Bir örneğin genişlik boyutu boyunca karolalara ayrılabilmesi için gereken minimum genişlik.

tile_sample_stride_height (`int`, *isteğe bağlı*) : İki ardışık dikey karoyu arasındaki minimum örtüşme miktarı. Bu, yükseklik boyutu boyunca karo artefaktlarının oluşmamasını sağlamak içindir.

tile_sample_stride_width (`int`, *isteğe bağlı*) : İki ardışık yatay karoyu arasındaki adım. Bu, genişlik boyutu boyunca karo artefaktlarının oluşmamasını sağlamak içindir.

Döşemeli VAE çözümlemesini etkinleştirir. Bu seçenek etkinleştirildiğinde, VAE girdi tensörünü çözümleme ve kodlamayı birden fazla adımda hesaplamak üzere döşemelere böler. Bu, büyük miktarda bellek tasarrufu sağlamak ve daha büyük görüntülerin işlenmesine izin vermek için kullanışlıdır.

#### forward[[diffusers.AutoencoderKLLTXVideo.forward]]

```python
forward(sample: Tensor, temb: typing.Optional[torch.Tensor] = None, sample_posterior: bool = False, return_dict: bool = True, generator: typing.Optional[torch.Generator] = None)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kl_ltx.py#L1517)

**Parametreler:**

sample (`torch.Tensor`) : Girdi örneği.

temb (`torch.Tensor`, *isteğe bağlı*) : Dekoderi koşullandırmak için kullanılan isteğe bağlı zaman adımı gömme tensörü.

sample_posterior (`bool`, *isteğe bağlı*, varsayılan `False`) : Posterior'dan örneklemeye alınıp alınmayacağı.

return_dict (`bool`, *isteğe bağlı*, varsayılan `True`) : Düz bir tuple yerine `DecoderOutput` döndürülüp döndürülmemesi.

generator (`torch.Generator`, *isteğe bağlı*) : Örnekleme işlemini deterministik hale getirmek için kullanılan bir [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html).

**Dönüş:** `~models.vae.DecoderOutput` veya `tuple`

`return_dict` True ise, `~models.vae.DecoderOutput` döndürülür; aksi halde düz bir `tuple` döndürülür.

#### tiled_decode[[diffusers.AutoencoderKLLTXVideo.tiled_decode]]

```python
tiled_decode(z: Tensor, temb: typing.Optional[torch.Tensor], return_dict: bool = True)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kl_ltx.py#L1389)

**Parametreler:**

z (`torch.Tensor`) : Gizil vektörlerin giriş partisi.

return_dict (`bool`, *isteğe bağlı*, varsayılan `True`) : Düz bir tuple yerine `~models.vae.DecoderOutput` döndürülecek mi?

**Dönüş:** `~models.vae.DecoderOutput` veya `tuple`

return_dict True ise, `~models.vae.DecoderOutput` döndürülür, aksi takdirde düz bir `tuple` döndürülür.

Bir görüntü grubunu karolarlı bir çözücü kullanarak çözümlen.

#### tiled_encode[[diffusers.AutoencoderKLLTXVideo.tiled_encode]]

```python
tiled_encode(x: Tensor)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kl_ltx.py#L1338)

**Parametreler:**

x (`torch.Tensor`) : Girdi video partisi.

**Dönüş:** `torch.Tensor`

Kodlanmış videoların gizil (latent) temsili.

Bir görüntü grubunu, karolalı bir kodlayıcı kullanarak kodlayın.

## AutoencoderKLOutput[[diffusers.models.modeling_outputs.AutoencoderKLOutput]]

#### diffusers.models.modeling_outputs.AutoencoderKLOutput[[diffusers.models.modeling_outputs.AutoencoderKLOutput]]

```python
diffusers.models.modeling_outputs.AutoencoderKLOutput(latent_dist: DiagonalGaussianDistribution)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_outputs.py#L7)

**Parametreler:**

latent_dist (`DiagonalGaussianDistribution`) : `Encoder`'ın `DiagonalGaussianDistribution` ortalama ve logvar olarak temsil edilen kodlanmış çıktıları. `DiagonalGaussianDistribution`, dağılımdan latent örneklemeye olanak tanır.

AutoencoderKL kodlama yönteminin çıktısı.

## DecoderOutput[[diffusers.models.autoencoders.vae.DecoderOutput]]

#### diffusers.models.autoencoders.vae.DecoderOutput[[diffusers.models.autoencoders.vae.DecoderOutput]]

```python
diffusers.models.autoencoders.vae.DecoderOutput(sample: Tensor, commit_loss: typing.Optional[torch.FloatTensor] = None)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/vae.py#L49)

**Parametreler:**

sample (`torch.Tensor`, şekli `(batch_size, num_channels, height, width)`) : Modelin son katmanından çözümlenmiş çıktı örneği.

Çözümleme yönteminin çıktısı.

