Diffusers documentation

FluxTransformer2DModel

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

FluxTransformer2DModel

Model Transformer untuk data seperti gambar dari Flux.

FluxTransformer2DModel

kelas diffusers.FluxTransformer2DModel

< >

( patch_size: int = 1in_channels: int = 64out_channels: int | None = Nonenum_layers: int = 19num_single_layers: int = 38attention_head_dim: int = 128num_attention_heads: int = 24joint_attention_dim: int = 4096pooled_projection_dim: int = 768guidance_embeds: bool = Falseaxes_dims_rope: tuple[int, int, int] = (16, 56, 56) )

Parameter

  • patch_size (int, defaultnya 1) — Ukuran patch untuk mengubah data input menjadi patch kecil.
  • in_channels (int, defaultnya 64) — Jumlah channel pada input.
  • out_channels (int, opsional, defaultnya None) — Jumlah channel pada output. Jika tidak ditentukan, defaultnya adalah in_channels.
  • num_layers (int, defaultnya 19) — Jumlah lapisan blok DiT dual stream yang akan digunakan.
  • num_single_layers (int, defaultnya 38) — Jumlah lapisan blok DiT single stream yang akan digunakan.
  • attention_head_dim (int, defaultnya 128) — Jumlah dimensi yang digunakan untuk setiap kepala perhatian (attention head).
  • num_attention_heads (int, defaultnya 24) — Jumlah attention heads yang akan digunakan.
  • joint_attention_dim (int, defaultnya 4096) — Jumlah dimensi yang digunakan untuk joint attention (dimensi embedding/channel dari encoder_hidden_states).
  • pooled_projection_dim (int, defaultnya 768) — Jumlah dimensi yang digunakan untuk proyeksi pooled.
  • guidance_embeds (bool, defaultnya False) — Apakah akan menggunakan guidance embeddings untuk varian model yang telah melalui guidance-distillation.
  • axes_dims_rope (tuple[int], defaultnya (16, 56, 56)) — Dimensi yang digunakan untuk penyematan posisi rotasi.

Model Transformer yang diperkenalkan dalam Flux.

Referensi: https://blackforestlabs.ai/announcing-black-forest-labs/

forward

< >

( hidden_states: Tensorencoder_hidden_states: Tensor = Nonepooled_projections: Tensor = Nonetimestep: LongTensor = Noneimg_ids: Tensor = Nonetxt_ids: Tensor = Noneguidance: Tensor = Nonejoint_attention_kwargs: dict[str, typing.Any] | None = Nonecontrolnet_block_samples = Nonecontrolnet_single_block_samples = Nonereturn_dict: bool = Truecontrolnet_blocks_repeat: bool = False )

Parameter

  • hidden_states (torch.Tensor dengan bentuk (batch_size, image_sequence_length, in_channels)) — hidden_states masukan.
  • encoder_hidden_states (torch.Tensor dengan bentuk (batch_size, text_sequence_length, joint_attention_dim)) — Embedding kondisional (embedding yang dihitung dari kondisi input seperti prompt) yang akan digunakan.
  • pooled_projections (torch.Tensor dengan bentuk (batch_size, projection_dim)) — Embedding yang diproyeksikan dari embedding kondisi input.
  • timestep ( torch.LongTensor) — Digunakan untuk menunjukkan langkah denoising.
  • img_ids (torch.Tensor) — ID posisi gambar yang digunakan untuk menghitung embedding posisi rotasi.
  • txt_ids (torch.Tensor) — ID posisi teks yang digunakan untuk menghitung embedding posisi rotasi.
  • guidance (torch.Tensor, opsional) — Embedding skala panduan yang digunakan untuk varian model yang telah melalui distilasi panduan.
  • controlnet_block_samples (list dari torch.Tensor, opsional) — Daftar tensor yang, jika ditentukan, akan ditambahkan ke residual dari blok transformer.
  • controlnet_single_block_samples (list dari torch.Tensor, opsional) — Daftar tensor yang, jika ditentukan, akan ditambahkan ke residual dari blok transformer tunggal.
  • controlnet_blocks_repeat (bool, opsional, default False) — Apakah sampel blok controlnet akan diulang di seluruh blok transformer.
  • joint_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 FluxTransformer2DModel.

Update on GitHub