Diffusers documentation

GlmImageTransformer2DModel

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

GlmImageTransformer2DModel

Model Diffusion Transformer untuk data 2D dari [GlmImageTransformer2DModel] (TODO).

GlmImageTransformer2DModel

kelas diffusers.GlmImageTransformer2DModel

< >

( patch_size: int = 2in_channels: int = 16out_channels: int = 16num_layers: int = 30attention_head_dim: int = 40num_attention_heads: int = 64text_embed_dim: int = 1472time_embed_dim: int = 512condition_dim: int = 256prior_vq_quantizer_codebook_size: int = 16384 )

Parameter

  • patch_size (int, defaultnya 2) — Ukuran patch yang akan digunakan di lapisan patch embedding.
  • in_channels (int, defaultnya 16) — Jumlah channel pada input.
  • num_layers (int, defaultnya 30) — Jumlah lapisan blok Transformer yang akan digunakan.
  • attention_head_dim (int, defaultnya 40) — Jumlah saluran di setiap head.
  • num_attention_heads (int, defaultnya 64) — Jumlah head yang digunakan untuk multi-head attention.
  • out_channels (int, defaultnya 16) — Jumlah channel pada output.
  • text_embed_dim (int, defaultnya 1472) — Dimensi input dari text embeddings yang berasal dari text encoder.
  • time_embed_dim (int, defaultnya 512) — Dimensi output dari embedding timestep.
  • condition_dim (int, defaultnya 256) — Dimensi embedding dari kondisi resolusi gaya SDXL pada input (original_size, target_size, crop_coords).
  • pos_embed_max_size (int, defaultnya 128) — Resolusi maksimum dari positional embeddings, yang diambil potongannya dengan bentuk H x W dan ditambahkan ke latents patched input, di mana H dan W masing-masing adalah tinggi dan lebar latents. Nilai 128 berarti bahwa tinggi dan lebar maksimum yang didukung untuk generasi gambar adalah 128 * vae_scale_factor * patch_size => 128 * 8 * 2 => 2048.
  • sample_size (int, defaultnya 128) — Resolusi dasar dari latens input. Jika tinggi/lebar tidak diberikan saat generasi, nilai ini digunakan untuk menentukan resolusi sebagai sample_size * vae_scale_factor => 128 * 8 => 1024

forward

< >

( hidden_states: Tensorencoder_hidden_states: Tensorprior_token_id: Tensorprior_token_drop: Tensortimestep: LongTensortarget_size: Tensorcrop_coords: Tensorattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = Trueattention_mask: typing.Optional[torch.Tensor] = Nonekv_caches: diffusers.models.transformers.transformer_glm_image.GlmImageKVCache | None = Noneimage_rotary_emb: tuple[torch.Tensor, torch.Tensor] | list[tuple[torch.Tensor, torch.Tensor]] | None = None )

Parameter

  • hidden_states (torch.Tensor dengan bentuk (batch_size, in_channels, height, width)) — hidden_states masukan.
  • 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.
  • prior_token_id (torch.Tensor) — ID token untuk pencarian embedding sebelumnya.
  • prior_token_drop (torch.Tensor) — Mask boolean yang menunjukkan embedding mana yang harus dihapus (dinyatakan nol).
  • timestep (torch.LongTensor) — Digunakan untuk menunjukkan langkah denoising.
  • target_size (torch.Tensor) — Kondisi ukuran gambar target.
  • crop_coords (torch.Tensor) — Koordinat crop untuk kondisioning.
  • 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.
  • attention_mask (torch.Tensor, opsional) — Mask yang diterapkan pada skor perhatian.
  • kv_caches (GlmImageKVCache, opsional) — Cache key/value yang sudah dihitung sebelumnya untuk mempercepat inferensi.
  • image_rotary_emb (tuple dari torch.Tensor, opsional) — Embedding posisi rotasi yang telah dihitung sebelumnya.

Metode forward dari GlmImageTransformer2DModel.

Update on GitHub