Diffusers documentation

HunyuanImageTransformer2DModel

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

HunyuanImageTransformer2DModel

Model Diffusion Transformer untuk HunyuanImage2.1.

Model dapat dimuat dengan potongan kode berikut.

from diffusers import HunyuanImageTransformer2DModel

transformer = HunyuanImageTransformer2DModel.from_pretrained("hunyuanvideo-community/HunyuanImage-2.1-Diffusers", subfolder="transformer", dtype=torch.bfloat16)

HunyuanImageTransformer2DModel

kelas diffusers.HunyuanImageTransformer2DModel

< >

( in_channels: int = 64out_channels: int = 64num_attention_heads: int = 28attention_head_dim: int = 128num_layers: int = 20num_single_layers: int = 40num_refiner_layers: int = 2mlp_ratio: float = 4.0patch_size: tuple[int, int] = (1, 1)qk_norm: str = 'rms_norm'guidance_embeds: bool = Falsetext_embed_dim: int = 3584text_embed_2_dim: int | None = Nonerope_theta: float = 256.0rope_axes_dim: tuple[int, ...] = (64, 64)use_meanflow: bool = False )

Parameter

  • in_channels (int, defaultnya 16) — Jumlah channel pada input.
  • out_channels (int, defaultnya 16) — Jumlah channel pada output.
  • num_attention_heads (int, defaultnya 24) — Jumlah head yang digunakan untuk multi-head attention.
  • attention_head_dim (int, defaultnya 128) — Jumlah saluran di setiap head.
  • num_layers (int, defaultnya 20) — Jumlah lapisan blok dual-stream yang akan digunakan.
  • num_single_layers (int, defaultnya 40) — Jumlah lapisan blok single-stream yang akan digunakan.
  • num_refiner_layers (int, defaultnya 2) — Jumlah lapisan blok refiner yang akan digunakan.
  • mlp_ratio (float, defaultnya 4.0) — Rasio ukuran lapisan tersembunyi terhadap ukuran input dalam jaringan feedforward.
  • patch_size (int, defaultnya 2) — Ukuran patch spasial yang akan digunakan di lapisan patch embedding.
  • patch_size_t (int, defaultnya 1) — Ukuran patch temporal yang digunakan di lapisan patch embedding.
  • qk_norm (str, defaultnya rms_norm) — Normalisasi yang digunakan untuk proyeksi query dan key pada lapisan attention.
  • guidance_embeds (bool, defaultnya True) — Apakah akan menggunakan guidance embeddings dalam model.
  • text_embed_dim (int, defaultnya 4096) — Dimensi input dari text embeddings yang berasal dari text encoder.
  • pooled_projection_dim (int, defaultnya 768) — Dimensi dari pooled projection dari text embeddings.
  • rope_theta (float, defaultnya 256.0) — Nilai theta yang digunakan di lapisan RoPE.
  • rope_axes_dim (tuple[int], defaultnya (16, 56, 56)) — Dimensi sumbu yang akan digunakan di lapisan RoPE.
  • image_condition_type (str, opsional, defaultnya None) — Jenis pengkondisian gambar yang akan digunakan. Jika None, tidak ada pengkondisian gambar yang digunakan. Jika latent_concat, gambar digabungkan ke aliran laten. Jika token_replace, gambar digunakan untuk mengganti token bingkai pertama di aliran laten dan menerapkan pengkondisian.

Model Transformer yang digunakan dalam HunyuanImage-2.1.

forward

< >

( hidden_states: Tensortimestep: LongTensorencoder_hidden_states: Tensorencoder_attention_mask: Tensortimestep_r: typing.Optional[torch.LongTensor] = Noneencoder_hidden_states_2: typing.Optional[torch.Tensor] = Noneencoder_attention_mask_2: typing.Optional[torch.Tensor] = Noneguidance: typing.Optional[torch.Tensor] = Noneattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True )

Parameter

  • hidden_states (torch.Tensor dengan bentuk (batch_size, num_channels, height, width) atau (batch_size, num_channels, num_frames, height, width)) — hidden_states masukan.
  • timestep (torch.LongTensor) — Digunakan untuk menunjukkan langkah denoising.
  • encoder_hidden_states (torch.Tensor dengan bentuk (batch_size, sequence_len, embed_dims)) — Embedding kondisional (embedding yang dihitung dari kondisi input seperti prompt) yang akan digunakan.
  • encoder_attention_mask (torch.Tensor) — Mask yang diterapkan pada encoder_hidden_states selama attention.
  • timestep_r (torch.LongTensor, opsional) — Kondisi timestep Refiner.
  • encoder_hidden_states_2 (torch.Tensor, opsional) — Embedding kondisional tambahan yang dihitung dari encoder teks kedua.
  • encoder_attention_mask_2 (torch.Tensor, opsional) — Mask yang diterapkan pada encoder_hidden_states_2 selama attention.
  • guidance (torch.Tensor, opsional) — Embedding skala panduan yang digunakan untuk varian model yang telah melalui distilasi panduan.
  • attention_kwargs (dict, opsional) — Kamus kwargs yang jika ditentukan akan diteruskan ke AttentionProcessor seperti yang didefinisikan di bawah self.processor dalam diffusers.models.attention_processor.
  • return_dict (bool, opsional, default True) — Apakah akan mengembalikan ~models.transformer_2d.Transformer2DModelOutput alih-alih tuple biasa.

Metode forward dari HunyuanImageTransformer2DModel.

Transformer2DModelOutput

kelas diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

Parameter

  • sample (torch.Tensor dengan bentuk (batch_size, num_channels, height, width) atau (batch size, num_vector_embeds - 1, num_latent_pixels) jika Transformer2DModel bersifat diskrit) — Output hidden states yang dikondisikan pada input encoder_hidden_states. Jika diskrit, mengembalikan distribusi probabilitas untuk latent pixels yang tidak berisik.

Output dari Transformer2DModel.

Update on GitHub