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

Модифицированная модель flux Transformer от Chroma

ChromaTransformer2DModel

класс 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 )

Параметры

  • patch_size (int, по умолчанию 1) — Размер патча для разбиения входных данных на небольшие патчи.
  • in_channels (int, по умолчанию 64) — Количество каналов на входе.
  • out_channels (int, необязательный, по умолчанию None) — Количество каналов на выходе. Если не указано, по умолчанию равно in_channels.
  • num_layers (int, по умолчанию 19) — Количество используемых блоков dual stream DiT.
  • num_single_layers (int, по умолчанию 38) — Количество слоев однопоточных блоков DiT, которые следует использовать.
  • attention_head_dim (int, по умолчанию 128) — Количество измерений, используемых для каждой головы внимания.
  • num_attention_heads (int, по умолчанию 24) — Количество используемых голок внимания.
  • joint_attention_dim (int, по умолчанию 4096) — Количество измерений, используемых для совместного внимания (размерность встраивания/канала для encoder_hidden_states).
  • axes_dims_rope (tuple[int], по умолчанию (16, 56, 56)) — Размерности, используемые для вращательных позиционных эмбеддингов.

Модель Transformer, представленная в Flux, модифицированная для Chroma.

Ссылка: 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 )

Параметры

  • hidden_states (torch.Tensor формы (batch_size, image_sequence_length, in_channels)) — Входные hidden_states.
  • encoder_hidden_states (torch.Tensor формы (batch_size, text_sequence_length, joint_attention_dim)) — Условные эмбеддинги (эмбеддинги, вычисленные на основе входных условий, таких как промпты), которые следует использовать.
  • timestep ( torch.LongTensor) — Используется для указания шага денойзинга.
  • img_ids (torch.Tensor) — Идентификаторы позиций изображений, используемые для вычисления вращательных позиционных эмбеддингов.
  • txt_ids (torch.Tensor) — Идентификаторы позиций текста, используемые для вычисления вращательных позиционных эмбеддингов.
  • attention_mask (torch.Tensor, необязательный) — Маска, применяемая к encoder_hidden_states во время внимания.
  • controlnet_block_samples (list из torch.Tensor, необязательный) — Список тензоров, которые при указании добавляются к остаткам блоков трансформера.
  • controlnet_single_block_samples (list из torch.Tensor, необязательный) — Список тензоров, которые при указании добавляются к остаткам одиночных блоков трансформера.
  • controlnet_blocks_repeat (bool, необязательный, по умолчанию False) — Определяет, следует ли повторять образцы блоков controlnet во всех блоках трансформера.
  • joint_attention_kwargs (dict, необязательный) — Словарь kwargs, который при указании передается в AttentionProcessor, определенный в self.processor в модуле diffusers.models.attention_processor.
  • return_dict (bool, необязательный, по умолчанию True) — Определяет, следует ли возвращать ~models.transformer_2d.Transformer2DModelOutput вместо обычного кортежа.

Метод forward модели FluxTransformer2DModel.

Update on GitHub