Diffusers documentation
AutoencoderKLHunyuanVideo15
AutoencoderKLHunyuanVideo15
Le modèle d'auto-encodeur variationnel (VAE) 3D avec perte KL utilisé dans HunyuanVideo1.5 par Tencent.
Le modèle peut être chargé à l'aide du fragment de code suivant.
from diffusers import AutoencoderKLHunyuanVideo15
vae = AutoencoderKLHunyuanVideo15.from_pretrained("hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_t2v", subfolder="vae", dtype=torch.float32)
# make sure to enable tiling to avoid OOM
vae.enable_tiling()AutoencoderKLHunyuanVideo15
classe diffusers.AutoencoderKLHunyuanVideo15
< source >( in_channels: int = 3out_channels: int = 3latent_channels: int = 32block_out_channels: tuple[int] = (128, 256, 512, 1024, 1024)layers_per_block: int = 2spatial_compression_ratio: int = 16temporal_compression_ratio: int = 4downsample_match_channel: bool = Trueupsample_match_channel: bool = Truescaling_factor: float = 1.03682 )
Un modèle VAE avec perte KL pour encoder des vidéos en latents et décoder des représentations latentes en vidéos. Utilisé pour HunyuanVideo-1.5.
Ce modèle hérite de ModelMixin. Consultez la documentation de la classe parente pour ses méthodes génériques implémentées pour tous les modèles (téléchargement ou sauvegarde, par exemple).
décoder
< source >( z: Tensorreturn_dict: bool = True ) → ~models.vae.DecoderOutput or tuple
Paramètres
- z (
torch.Tensor) — Lot d’entrée de vecteurs latents. - return_dict (
bool, facultatif, par défautTrue) — Indique s'il faut retourner un~models.vae.DecoderOutputplutôt qu'un simple tuple.
Retourne
~models.vae.DecoderOutput ou tuple
Si return_dict est True, un ~models.vae.DecoderOutput est renvoyé, sinon un simple tuple est renvoyé.
Décoder un lot d'images.
encode
< source >( x: Tensorreturn_dict: bool = True )
Encode un lot d'images en latents.
enable_tiling
< source >( tile_sample_min_height: int | None = Nonetile_sample_min_width: int | None = Nonetile_latent_min_height: int | None = Nonetile_latent_min_width: int | None = Nonetile_overlap_factor: float | None = None )
Paramètres
- tile_sample_min_height (
int, facultatif) — Hauteur minimale requise pour qu'un échantillon soit séparé en tuiles le long de la dimension de hauteur. - tile_sample_min_width (
int, facultatif) — Largeur minimale requise pour qu'un échantillon soit séparé en tuiles le long de la dimension de la largeur. - tile_latent_min_height (
int, facultatif) — Hauteur minimale requise pour qu'un latent soit séparé en tuiles le long de la dimension de hauteur. - tile_latent_min_width (
int, facultatif) — La largeur minimale requise pour qu'un latent soit séparé en tuiles le long de la dimension de largeur.
Active le décodage VAE par tuiles. Lorsque cette option est activée, le VAE divise le tenseur d’entrée en tuiles pour effectuer le décodage et l’encodage en plusieurs étapes. Cela est utile pour économiser une grande quantité de mémoire et pour permettre le traitement d’images plus grandes.
forward
< source >( sample: Tensorsample_posterior: bool = Falsereturn_dict: bool = Truegenerator: typing.Optional[torch.Generator] = None ) → ~models.vae.DecoderOutput or tuple
Paramètres
- sample (
torch.Tensor) — Échantillon d'entrée. - sample_posterior (
bool, facultatif, par défautFalse) — Indique s'il faut échantillonner à partir de la postérieure. - return_dict (
bool, facultatif, par défautTrue) — Indique s'il faut retourner unDecoderOutputplutôt qu'un simple tuple. - generator (
torch.Generator, facultatif) — Untorch.Generatorpour rendre l'échantillonnage déterministe.
Retourne
~models.vae.DecoderOutput ou tuple
Si return_dict est True, un ~models.vae.DecoderOutput est renvoyé, sinon un simple tuple est renvoyé.
tiled_decode
< source >( z: Tensor ) → torch.Tensor
Décoder un lot d'images à l'aide d'un décodeur tuilé.
tiled_encode
< source >( x: Tensor ) → torch.Tensor
Encoder un lot d'images à l'aide d'un encodeur tuilé.
DecoderOutput
classe diffusers.models.autoencoders.vae.DecoderOutput
< source >( sample: Tensorcommit_loss: typing.Optional[torch.FloatTensor] = None )
Sortie de la méthode de décodage.