Diffusers documentation

AutoencoderKLAllegro

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

AutoencoderKLAllegro

Model 3D variational autoencoder (VAE) dengan KL loss yang digunakan dalam Allegro diperkenalkan dalam Allegro: Open the Black Box of Commercial-Level Video Generation Model oleh RhymesAI.

Model dapat dimuat dengan potongan kode berikut.

from diffusers import AutoencoderKLAllegro

vae = AutoencoderKLAllegro.from_pretrained("rhymes-ai/Allegro", subfolder="vae", dtype=torch.float32).to("cuda")  # or "mps", "xpu", "cpu"

AutoencoderKLAllegro

kelas diffusers.AutoencoderKLAllegro

< >

( in_channels: int = 3out_channels: int = 3down_block_types: tuple = ('AllegroDownBlock3D', 'AllegroDownBlock3D', 'AllegroDownBlock3D', 'AllegroDownBlock3D')up_block_types: tuple = ('AllegroUpBlock3D', 'AllegroUpBlock3D', 'AllegroUpBlock3D', 'AllegroUpBlock3D')block_out_channels: tuple = (128, 256, 512, 512)temporal_downsample_blocks: tuple = (True, True, False, False)temporal_upsample_blocks: tuple = (False, True, True, False)latent_channels: int = 4layers_per_block: int = 2act_fn: str = 'silu'norm_num_groups: int = 32temporal_compression_ratio: float = 4sample_size: int = 320scaling_factor: float = 0.13force_upcast: bool = True )

Parameter

  • in_channels (int, defaultnya 3) — Jumlah channel pada gambar input.
  • out_channels (int, defaultnya 3) — Jumlah channel pada output.
  • down_block_types (tuple[str, ...], defaultnya ("AllegroDownBlock3D", "AllegroDownBlock3D", "AllegroDownBlock3D", "AllegroDownBlock3D")) — tuple dari string yang menunjukkan jenis down block mana yang akan digunakan.
  • up_block_types (tuple[str, ...], defaultnya ("AllegroUpBlock3D", "AllegroUpBlock3D", "AllegroUpBlock3D", "AllegroUpBlock3D")) — tuple dari string yang menunjukkan tipe up block mana yang akan digunakan.
  • block_out_channels (tuple[int, ...], defaultnya (128, 256, 512, 512)) — tuple dari bilangan bulat yang menyatakan jumlah saluran keluar di setiap blok.
  • temporal_downsample_blocks (tuple[bool, ...], defaultnya (True, True, False, False)) — tuple dari boolean yang menunjukkan blok mana yang akan diaktifkan untuk temporal downsampling.
  • latent_channels (int, defaultnya 4) — Jumlah channel dalam latents.
  • layers_per_block (int, defaultnya 2) — Jumlah lapisan resnet atau attention atau temporal convolution per blok down/up.
  • act_fn (str, defaultnya "silu") — Fungsi aktivasi yang akan digunakan.
  • norm_num_groups (int, defaultnya 32) — Jumlah grup yang digunakan dalam lapisan normalisasi.
  • temporal_compression_ratio (int, defaultnya 4) — Rasio kompresi dimensi temporal dari sampel.
  • sample_size (int, defaultnya 320) — Ukuran laten default.
  • scaling_factor (float, defaultnya 0.13235) — Standar deviasi per komponen dari ruang laten yang dilatih, dihitung menggunakan batch pertama dari set pelatihan. Ini digunakan untuk menskalakan ruang laten agar memiliki varians satu saat melatih model difusi. Laten diskalakan dengan rumus z = z * scaling_factor sebelum diteruskan ke model difusi. Saat decoding, laten diskalakan kembali ke skala aslinya dengan rumus: z = 1 / scaling_factor * z. Untuk detail lebih lanjut, lihat bagian 4.3.2 dan D.1 dari makalah High-Resolution Image Synthesis with Latent Diffusion Models.
  • force_upcast (bool, default True) — Jika diaktifkan, VAE akan dipaksa untuk berjalan dalam float32 untuk pipeline resolusi gambar tinggi, seperti SD-XL. VAE dapat dihaluskan / dilatih ke rentang yang lebih rendah tanpa kehilangan terlalu banyak presisi, di mana force_upcast dapat diatur ke False - lihat: https://huggingface.co/madebyollin/sdxl-vae-fp16-fix

Model VAE dengan kerugian KL untuk mengkodekan video menjadi latens dan mendekodekan representasi latens menjadi video. Digunakan dalam Allegro.

Model ini mewarisi dari ModelMixin. Periksa dokumentasi kelas induk untuk metode generiknya yang diimplementasikan untuk semua model (seperti mengunduh atau menyimpan).

decode

< >

( z: Tensorreturn_dict: bool = True ) → ~models.vae.DecoderOutput or tuple

Parameter

  • z (torch.Tensor) — Batch input dari vektor laten.
  • return_dict (bool, defaultnya True) — Apakah akan mengembalikan ~models.vae.DecoderOutput alih-alih tuple biasa.

Mengembalikan

~models.vae.DecoderOutput atau tuple

Jika return_dict adalah True, sebuah ~models.vae.DecoderOutput dikembalikan, selain itu sebuah tuple biasa yang dikembalikan.

Decode sekelompok video.

encode

< >

( x: Tensorreturn_dict: bool = True )

Parameter

  • x (torch.Tensor) — Batch input video.
  • return_dict (bool, defaultnya True) — Apakah akan mengembalikan ~models.autoencoder_kl.AutoencoderKLOutput alih-alih tuple biasa.

Enkodekan batch video menjadi latents.

forward

< >

( sample: Tensorsample_posterior: bool = Falsereturn_dict: bool = Truegenerator: typing.Optional[torch.Generator] = None ) → ~models.vae.DecoderOutput or tuple

Parameter

  • sample (torch.Tensor) — Sampel input.
  • sample_posterior (bool, opsional, default False) — Apakah akan mengambil sampel dari posterior.
  • return_dict (bool, opsional, default True) — Apakah akan mengembalikan DecoderOutput alih-alih tuple biasa.
  • generator (torch.Generator, opsional) — Generator angka acak PyTorch.

Mengembalikan

~models.vae.DecoderOutput atau tuple

Jika return_dict bernilai True, sebuah ~models.vae.DecoderOutput akan dikembalikan, selain itu sebuah tuple biasa akan dikembalikan.

AutoencoderKLOutput

kelas diffusers.models.modeling_outputs.AutoencoderKLOutput

< >

( latent_dist: DiagonalGaussianDistribution )

Parameter

  • latent_dist (DiagonalGaussianDistribution) — Output hasil encoding dari Encoder yang direpresentasikan sebagai mean dan logvar dari DiagonalGaussianDistribution. DiagonalGaussianDistribution memungkinkan pengambilan sampel latents dari distribusi tersebut.

Output dari metode encoding AutoencoderKL.

DecoderOutput

kelas diffusers.models.autoencoders.vae.DecoderOutput

< >

( sample: Tensorcommit_loss: typing.Optional[torch.FloatTensor] = None )

Parameter

  • sample (torch.Tensor dengan bentuk (batch_size, num_channels, height, width)) — Contoh output hasil dekoding dari lapisan terakhir model.

Output dari metode decoding.

Update on GitHub