Diffusers documentation
AutoencoderKLHunyuanImage
AutoencoderKLHunyuanImage
Двумерная вариационная автокодирующая модель (VAE) с потерей KL, используемая в [HunyuanImage2.1].
Модель можно загрузить с помощью следующего фрагмента кода.
from diffusers import AutoencoderKLHunyuanImage
vae = AutoencoderKLHunyuanImage.from_pretrained("hunyuanvideo-community/HunyuanImage-2.1-Diffusers", subfolder="vae", dtype=torch.bfloat16)AutoencoderKLHunyuanImage
класс diffusers.AutoencoderKLHunyuanImage
< source >( in_channels: intout_channels: intlatent_channels: intblock_out_channels: tuplelayers_per_block: intspatial_compression_ratio: intsample_size: intscaling_factor: float = Nonedownsample_match_channel: bool = Trueupsample_match_channel: bool = True )
Модель VAE для 2D-изображений с поддержкой пространственного тайлинга.
Эта модель наследуется от ModelMixin. См. документацию суперкласса для его универсальных методов, реализованных для всех моделей (например, загрузка или сохранение).
decode
< source >( 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.
Декодировать пакет изображений.
enable_tiling
< source >( tile_sample_min_size: int | None = Nonetile_overlap_factor: float | None = None )
Параметры
- tile_sample_min_size (
int, необязательный) — Минимальный размер, необходимый для того, чтобы образец был разделён на тайлы по пространственному измерению. - tile_overlap_factor (
float, необязательный) — Коэффициент перекрытия, необходимый для разделения латента на плитки по пространственному измерению.
Включает пространственную тайловую декодирование VAE. При включении этого параметра VAE разбивает входной тензор на тайлы для выполнения декодирования и кодирования в несколько шагов. Это полезно для значительной экономии памяти и позволяет обрабатывать изображения большего размера.
encode
< source >( x: Tensorreturn_dict: bool = True )
Кодирует пакет изображений в латенты.
forward
< source >( sample: Tensorsample_posterior: bool = Falsereturn_dict: bool = Truegenerator: typing.Optional[torch.Generator] = None ) → ~models.vae.DecoderOutput or tuple
Параметры
- sample (
torch.Tensor) — Входной образец. - sample_posterior (
bool, необязательный, по умолчаниюFalse) — Следует ли извлекать выборку из апостериорного распределения. - return_dict (
bool, необязательный, по умолчаниюTrue) — Определяет, следует ли возвращатьDecoderOutputвместо обычного кортежа. - generator (
torch.Generator, необязательный) —torch.Generatorдля обеспечения детерминированности выборки.
Возвращает
~models.vae.DecoderOutput или tuple
Если return_dict равно True, возвращается ~models.vae.DecoderOutput, в противном случае возвращается обычный tuple.
tiled_decode
< source >( z: Tensorreturn_dict: bool = True ) → ~models.vae.DecoderOutput or tuple
Параметры
- z (
torch.Tensor) — латентный тензор формы (B, C, H, W). - return_dict (
bool, необязательный, по умолчаниюTrue) — Определяет, следует ли возвращать~models.vae.DecoderOutputвместо обычного кортежа.
Возвращает
~models.vae.DecoderOutput или tuple
Если return_dict равно True, возвращается ~models.vae.DecoderOutput, иначе возвращается обычный tuple.
Декодирование латентного представления с использованием пространственной стратегии тайлинга.
tiled_encode
< source >( x: Tensor ) → torch.Tensor
Кодирование входных данных с использованием пространственной стратегии тайлинга.
DecoderOutput
класс diffusers.models.autoencoders.vae.DecoderOutput
< source >( sample: Tensorcommit_loss: typing.Optional[torch.FloatTensor] = None )
Результат метода декодирования.