Diffusers documentation

QwenImageTransformer2DModel

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

QwenImageTransformer2DModel

Mô hình có thể được tải bằng đoạn mã sau.

from diffusers import QwenImageTransformer2DModel

transformer = QwenImageTransformer2DModel.from_pretrained("Qwen/QwenImage-20B", subfolder="transformer", dtype=torch.bfloat16)

QwenImageTransformer2DModel

lớp diffusers.QwenImageTransformer2DModel

< >

( patch_size: int = 2in_channels: int = 64out_channels: int | None = 16num_layers: int = 60attention_head_dim: int = 128num_attention_heads: int = 24joint_attention_dim: int = 3584guidance_embeds: bool = Falseaxes_dims_rope: tuple = (16, 56, 56)zero_cond_t: bool = Falseuse_additional_t_cond: bool = Falseuse_layer3d_rope: bool = False )

Tham số

  • patch_size (int, mặc định là 2) — Kích thước patch để chuyển dữ liệu đầu vào thành các patch nhỏ.
  • in_channels (int, mặc định là 64) — Số lượng kênh trong đầu vào.
  • out_channels (int, tùy chọn, mặc định là None) — Số lượng kênh trong đầu ra. Nếu không được chỉ định, giá trị mặc định sẽ là in_channels.
  • num_layers (int, mặc định là 60) — Số lượng lớp của các khối DiT dual stream cần sử dụng.
  • attention_head_dim (int, mặc định là 128) — Số chiều sử dụng cho mỗi đầu chú ý (attention head).
  • num_attention_heads (int, mặc định là 24) — Số lượng đầu attention cần sử dụng.
  • joint_attention_dim (int, mặc định là 3584) — Số chiều được sử dụng cho chú ý liên hợp (chiều nhúng/kênh của encoder_hidden_states).
  • guidance_embeds (bool, mặc định là False) — Có sử dụng guidance embeddings cho biến thể guidance-distilled của mô hình hay không.
  • axes_dims_rope (tuple[int], mặc định là (16, 56, 56)) — Các chiều cần sử dụng cho các nhúng vị trí quay (rotary positional embeddings).

Mô hình Transformer được giới thiệu trong Qwen.

forward

< >

( hidden_states: Tensorencoder_hidden_states: Tensor = Noneencoder_hidden_states_mask: Tensor = Nonetimestep: LongTensor = Noneimg_shapes: list[tuple[int, int, int]] | None = Noneguidance: Tensor = Noneattention_kwargs: dict[str, typing.Any] | None = Nonecontrolnet_block_samples = Noneadditional_t_cond = Nonereturn_dict: bool = True )

Tham số

  • hidden_states (torch.Tensor có hình dạng (batch_size, image_sequence_length, in_channels)) — hidden_states đầu vào.
  • encoder_hidden_states (torch.Tensor có hình dạng (batch_size, text_sequence_length, joint_attention_dim)) — Các embedding điều kiện (các embedding được tính toán từ các điều kiện đầu vào như prompt) cần sử dụng.
  • encoder_hidden_states_mask (torch.Tensor có hình dạng (batch_size, text_sequence_length), tùy chọn) — Mặt nạ cho các trạng thái ẩn của bộ mã hóa. Được kỳ vọng có giá trị 1.0 cho các token hợp lệ và 0.0 cho các token đệm. Được sử dụng trong bộ xử lý chú ý để ngăn việc chú ý đến các token đệm. Mặt nạ có thể có bất kỳ mẫu nào (không chỉ các token hợp lệ liên tiếp theo sau là các token đệm) vì nó được áp dụng theo từng phần tử trong chú ý.
  • timestep ( torch.LongTensor) — Dùng để chỉ bước khử nhiễu.
  • img_shapes (list[tuple[int, int, int]], tùy chọn) — Hình dạng ảnh cho phép tính RoPE.
  • guidance (torch.Tensor, tùy chọn) — Tensor hướng dẫn cho việc tạo có điều kiện.
  • attention_kwargs (dict, tùy chọn) — Một từ điển kwargs, nếu được chỉ định, sẽ được truyền đến AttentionProcessor như đã định nghĩa dưới self.processor trong diffusers.models.attention_processor.
  • controlnet_block_samples (tùy chọn) — Các mẫu khối ControlNet để thêm vào các khối transformer.
  • additional_t_cond (torch.Tensor, tùy chọn) — Điều kiện bước thời gian bổ sung được thêm vào nhúng bước thời gian.
  • return_dict (bool, tùy chọn, mặc định là True) — Có nên trả về một ~models.transformer_2d.Transformer2DModelOutput thay vì một tuple thông thường hay không.

Phương thức forward của QwenTransformer2DModel.

Transformer2DModelOutput

lớp diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

Tham số

  • sample (torch.Tensor có hình dạng (batch_size, num_channels, height, width) hoặc (batch size, num_vector_embeds - 1, num_latent_pixels) nếu Transformer2DModel là rời rạc) — Trạng thái ẩn đầu ra được điều kiện bởi đầu vào encoder_hidden_states. Nếu là rời rạc, trả về các phân phối xác suất cho các pixel tiềm ẩn không nhiễu.

Đầu ra của Transformer2DModel.

Update on GitHub