Diffusers documentation

HunyuanDiT2DModel

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

HunyuanDiT2DModel

Модель Diffusion Transformer для 2D-данных из Hunyuan-DiT.

HunyuanDiT2DModel

класс diffusers.HunyuanDiT2DModel

< >

( num_attention_heads: int = 16attention_head_dim: int = 88in_channels: int | None = Nonepatch_size: int | None = Noneactivation_fn: str = 'gelu-approximate'sample_size = 32hidden_size = 1152num_layers: int = 28mlp_ratio: float = 4.0learn_sigma: bool = Truecross_attention_dim: int = 1024norm_type: str = 'layer_norm'cross_attention_dim_t5: int = 2048pooled_projection_dim: int = 1024text_len: int = 77text_len_t5: int = 256use_style_cond_and_image_meta_size: bool = True )

Параметры

  • num_attention_heads (int, необязательный, по умолчанию 16) — Количество голов, используемых для многоголовного внимания.
  • attention_head_dim (int, необязательный, по умолчанию 88) — Количество каналов в каждой голове.
  • in_channels (int, необязательный) — Количество каналов на входе и выходе (укажите, если вход непрерывный).
  • patch_size (int, необязательный) — Размер патча, используемого для входных данных.
  • activation_fn (str, необязательный, по умолчанию "geglu") — Функция активации, используемая в полносвязном слое.
  • sample_size (int, необязательный) — Ширина латентных изображений. Это значение фиксировано во время обучения, поскольку используется для обучения набора позиционных эмбеддингов.
  • dropout (float, необязательный, по умолчанию 0.0) — Вероятность dropout, которую следует использовать.
  • cross_attention_dim (int, необязательный) — Количество измерений в текстовом эмбеддинге CLIP.
  • hidden_size (int, необязательный) — Размер скрытого слоя в слоях условного эмбеддинга.
  • num_layers (int, необязательный, по умолчанию 1) — Количество блоков Transformer, которые следует использовать.
  • mlp_ratio (float, необязательный, по умолчанию 4.0) — Соотношение размера скрытого слоя к размеру входа.
  • learn_sigma (bool, необязательный, по умолчанию True) — Следует ли предсказывать дисперсию.
  • cross_attention_dim_t5 (int, необязательный) — Количество измерений в текстовом эмбеддинге t5.
  • pooled_projection_dim (int, необязательный) — Размер пул-проекции.
  • text_len (int, необязательный) — Длина текстового эмбеддинга клипа.
  • text_len_t5 (int, необязательный) — Длина текстового эмбеддинга T5.
  • use_style_cond_and_image_meta_size (bool, необязательный) — Использовать ли условие стиля и мета-размер изображения. True для версии <=1.1, False для версии >= 1.2

HunYuanDiT: диффузионная модель с трансформерным каркасом.

Наследуйте ModelMixin и ConfigMixin, чтобы обеспечить совместимость с сэмплером StableDiffusionPipeline из diffusers.

enable_forward_chunking

< >

( chunk_size: int | None = Nonedim: int = 0 )

Параметры

  • chunk_size (int, необязательный) — Размер блока для полносвязных слоёв. Если не указан, полносвязный слой будет выполняться отдельно для каждого тензора с dim=dim.
  • dim (int, необязательный, по умолчанию 0) — Размерность, по которой вычисления в блоке прямой передачи (feed-forward) должны быть разбиты на части. Выберите dim=0 (размер батча) или dim=1 (длина последовательности).

Устанавливает процессор внимания для использования feed forward chunking.

forward

< >

( hidden_statestimestepencoder_hidden_states = Nonetext_embedding_mask = Noneencoder_hidden_states_t5 = Nonetext_embedding_mask_t5 = Noneimage_meta_size = Nonestyle = Noneimage_rotary_emb = Nonecontrolnet_block_samples = Nonereturn_dict = True )

Параметры

  • hidden_states (torch.Tensor формы (batch size, dim, height, width)) — Входной тензор.
  • timestep ( torch.LongTensor, необязательный) — Используется для указания шага денойзинга.
  • encoder_hidden_states ( torch.Tensor формы (batch size, sequence len, embed dims), необязательный) — Условные эмбеддинги для слоя кросс-внимания. Это выход BertModel.
  • text_embedding_mask — torch.Tensor Маска внимания формы (batch, key_tokens) применяется к encoder_hidden_states. Это выход BertModel.
  • encoder_hidden_states_t5 ( torch.Tensor формы (batch size, sequence len, embed dims), необязательный) — Условные эмбеддинги для слоя кросс-внимания. Это выход текстового энкодера T5.
  • text_embedding_mask_t5 — torch.Tensor Маска внимания формы (batch, key_tokens) применяется к encoder_hidden_states. Это выход T5 Text Encoder.
  • image_meta_size (torch.Tensor) — Условное вложение, указывающее размеры изображений
  • style — torch.Tensor: Условное вложение, указывающее на стиль
  • image_rotary_emb (torch.Tensor) — Вращательные эмбеддинги изображения, применяемые к тензорам запросов и ключей при вычислении внимания.
  • controlnet_block_samples (list из torch.Tensor, необязательный) — Список тензоров, которые при указании добавляются к остаткам блоков трансформера.
  • return_dict — bool Определяет, следует ли возвращать словарь.

Метод forward модели HunyuanDiT2DModel.

fuse_qkv_projections

< >

( )

Включает объединённые проекции QKV. Для модулей само-внимания все матрицы проекций (т. е. запрос, ключ, значение) объединяются. Для модулей кросс-внимания объединяются матрицы проекций ключа и значения.

> Этот API 🧪 экспериментальный.

set_default_attn_processor

< >

( )

Отключает пользовательские обработчики внимания и устанавливает реализацию внимания по умолчанию.

unfuse_qkv_projections

< >

( )

Отключает объединенную проекцию QKV, если она включена.

> Этот API 🧪 экспериментальный.

Update on GitHub