Diffusers documentation

AutoencoderKLQwenImage21

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

AutoencoderKLQwenImage21

64-канальный вариационный автоэнкодер, используемый в Qwen-Image 2.1. Он сжимает данные в 16 раз по пространственному измерению, а его значения latents_mean / latents_std для каждого канала являются частью конфигурации, а не единым коэффициентом масштабирования.

import torch
from diffusers import AutoencoderKLQwenImage21

vae = AutoencoderKLQwenImage21.from_pretrained("Qwen/Qwen-Image-2.1", subfolder="vae", dtype=torch.bfloat16)

AutoencoderKLQwenImage21

класс diffusers.AutoencoderKLQwenImage21

< >

( base_dim: int = 96decoder_base_dim: int | None = 144z_dim: int = 64dim_mult: list = [1, 2, 4, 8, 8]num_res_blocks: int = 2attn_scales: list = []temperal_downsample: list = [False, True, True, True]dropout: float = 0.0latents_mean: list = [0.5126, 0.7721, -0.0631, 1.3506, -0.7855, -2.1025, -0.3458, 1.3722, 1.8873, -1.7177, -0.651, 0.2732, 0.7562, -0.6163, -1.0277, 3.8363, 2.021, 0.0472, 0.932, 2.0087, 2.4954, -0.1391, -1.4249, 1.8464, -0.5236, 1.2826, 3.7046, -1.3035, 2.7286, -1.4518, -1.9036, -1.9955, -0.0342, -1.0265, -0.7636, 3.0555, 0.0746, -3.0751, -0.1076, 1.7376, -1.0914, -1.9435, -0.2784, -1.368, 0.4809, -0.4433, 0.3764, 0.5729, -2.0595, 1.096, -1.326, -2.0211, -5.0179, 0.5275, 4.0162, 1.8505, 0.3026, 1.9373, 1.4937, 0.2632, 0.5547, -1.7121, -0.1562, 0.0304]latents_std: list = [3.2001, 3.2936, 3.4321, 3.0091, 3.1061, 4.0379, 4.0705, 3.791, 3.0785, 3.65, 3.9308, 3.0904, 2.8778, 3.7675, 3.732, 5.0756, 3.2864, 4.0397, 3.1317, 4.0443, 2.9249, 3.9454, 3.0988, 4.2489, 3.4896, 3.8513, 3.9323, 3.4719, 3.7498, 4.283, 3.5694, 4.2467, 3.9037, 3.2947, 5.077, 3.5075, 3.27, 3.4767, 2.8063, 5.1125, 3.5327, 4.7833, 3.1286, 4.1819, 3.8527, 3.8312, 3.5605, 4.3875, 3.9624, 4.0168, 3.5643, 4.055, 5.5614, 4.2963, 4.408, 3.4959, 3.8747, 3.7608, 3.5735, 3.149, 3.7662, 3.6746, 3.4563, 3.8161]is_residual: bool = Truein_channels: int = 4out_channels: int = 4patch_size: int | None = Nonescale_factor_temporal: int | None = 8scale_factor_spatial: int | None = 16 )

Модель VAE с потерей KL для кодирования видео в латенты и декодирования латентных представлений в видео. Представлена в [Qwen Image 2].

Эта модель наследуется от ModelMixin. См. документацию суперкласса для его универсальных методов, реализованных для всех моделей (например, загрузка или сохранение).

decode

< >

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

Параметры

  • z (torch.Tensor) — Входная партия латентных векторов.
  • return_dict (bool, необязательный, по умолчанию True) — Определяет, следует ли возвращать ~models.vae.DecoderOutput вместо обычного кортежа.

Возвращает

~models.vae.DecoderOutput или tuple

Если return_dict равно True, возвращается ~models.vae.DecoderOutput, иначе возвращается обычный tuple.

Декодировать пакет изображений.

encode

< >

( x: Tensorreturn_dict: bool = True )

Параметры

  • x (torch.Tensor) — Входная партия изображений.
  • return_dict (bool, необязательный, по умолчанию True) — Определяет, следует ли возвращать ~models.autoencoder_kl.AutoencoderKLOutput вместо обычного кортежа.

Кодирует пакет изображений в латенты.

enable_tiling

< >

( tile_sample_min_height: int | None = Nonetile_sample_min_width: int | None = Nonetile_sample_stride_height: float | None = Nonetile_sample_stride_width: float | None = None )

Параметры

  • tile_sample_min_height (int, необязательный) — Минимальная высота, необходимая для того, чтобы образец был разделён на плитки по размерности высоты.
  • tile_sample_min_width (int, необязательный) — Минимальная ширина, необходимая для того, чтобы образец был разделён на плитки по размерности ширины.
  • tile_sample_stride_height (int, необязательный) — Минимальное перекрытие между двумя последовательными вертикальными тайлами. Это обеспечивает отсутствие артефактов тайлинга вдоль вертикальной оси.
  • tile_sample_stride_width (int, необязательный) — Шаг между двумя соседними горизонтальными тайлами. Это обеспечивает отсутствие артефактов тайлинга вдоль ширины.

Включает тайловое декодирование VAE. При включении этого параметра VAE разбивает входной тензор на тайлы, чтобы выполнять декодирование и кодирование в несколько шагов. Это полезно для экономии значительного количества памяти и для обработки изображений большего размера.

forward

< >

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

Параметры

  • sample (torch.Tensor) — Входной образец.
  • sample_posterior (bool, необязательный, по умолчанию False) — Следует ли извлекать выборку из апостериорного распределения, а не брать его моду.
  • return_dict (bool, необязательный, по умолчанию True) — Определяет, следует ли возвращать DecoderOutput вместо обычного кортежа.
  • generator (torch.Generator, необязательный) — Генератор, используемый, когда sample_posterior равно True.

Возвращает

DecoderOutput или tuple

DecoderOutput, если return_dict равно True, иначе обычный tuple.

tiled_decode

< >

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

Параметры

  • z (torch.Tensor) — Входная партия латентных векторов.
  • return_dict (bool, необязательный, по умолчанию True) — Определяет, следует ли возвращать ~models.vae.DecoderOutput вместо обычного кортежа.

Возвращает

~models.vae.DecoderOutput или tuple

Если return_dict равно True, возвращается ~models.vae.DecoderOutput, иначе возвращается обычный tuple.

Декодирование пакета изображений с использованием тайлованного декодера.

tiled_encode

< >

( x: Tensor ) → torch.Tensor

Параметры

  • x (torch.Tensor) — Входная партия видео.

Возвращает

torch.Tensor

Латентное представление закодированных видео.

Кодирует пакет изображений с использованием тайлованного энкодера.

AutoencoderKLOutput

класс diffusers.models.modeling_outputs.AutoencoderKLOutput

< >

( latent_dist: DiagonalGaussianDistribution )

Параметры

  • latent_dist (DiagonalGaussianDistribution) — Закодированные выходные данные Encoder, представленные в виде среднего и logvar распределения DiagonalGaussianDistribution. DiagonalGaussianDistribution позволяет извлекать латентные переменные из этого распределения.

Результат метода кодирования AutoencoderKL.

DecoderOutput

класс diffusers.models.autoencoders.vae.DecoderOutput

< >

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

Параметры

  • sample (torch.Tensor формы (batch_size, num_channels, height, width)) — Декодированный вывод из последнего слоя модели.

Результат метода декодирования.

Update on GitHub