Diffusers documentation

ChromaTransformer2DModel

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

ChromaTransformer2DModel

Mô hình Transformer flux đã được chỉnh sửa từ Chroma

ChromaTransformer2DModel

lớp diffusers.ChromaTransformer2DModel

< >

( 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 = 4096axes_dims_rope: tuple = (16, 56, 56)approximator_num_channels: int = 64approximator_hidden_dim: int = 5120approximator_layers: int = 5 )

Tham số

  • patch_size (int, mặc định là 1) — 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à 19) — Số lượng lớp của các khối DiT dual stream cần sử dụng.
  • num_single_layers (int, mặc định là 38) — Số lượng lớp của các khối DiT single 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à 4096) — Số chiều được sử dụng cho chú ý liên hợp (chiều nhúng/kênh của encoder_hidden_states).
  • 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 Flux, đã được sửa đổi cho Chroma.

Tham khảo: https://huggingface.co/lodestones/Chroma1-HD

forward

< >

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

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.
  • timestep ( torch.LongTensor) — Dùng để chỉ bước khử nhiễu.
  • img_ids (torch.Tensor) — Các id vị trí ảnh được sử dụng để tính các nhúng vị trí quay (rotary positional embeddings).
  • txt_ids (torch.Tensor) — Các id vị trí văn bản được sử dụng để tính các nhúng vị trí quay (rotary positional embeddings).
  • attention_mask (torch.Tensor, tùy chọn) — Mặt nạ được áp dụng cho encoder_hidden_states trong quá trình chú ý.
  • controlnet_block_samples (list của torch.Tensor, tùy chọn) — Một danh sách các tensor mà nếu được chỉ định sẽ được cộng vào phần dư (residuals) của các khối transformer.
  • controlnet_single_block_samples (list của torch.Tensor, tùy chọn) — Một danh sách các tensor mà nếu được chỉ định sẽ được cộng vào phần dư (residuals) của các khối transformer đơn lẻ.
  • controlnet_blocks_repeat (bool, tùy chọn, mặc định là False) — Có lặp lại các mẫu khối controlnet trên tất cả các khối transformer hay không.
  • joint_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.
  • 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 FluxTransformer2DModel.

Update on GitHub