Diffusers documentation

BriaTransformer2DModel

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

BriaTransformer2DModel

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

BriaTransformer2DModel

класс diffusers.BriaTransformer2DModel

< >

( patch_size: int = 1in_channels: int = 64num_layers: int = 19num_single_layers: int = 38attention_head_dim: int = 128num_attention_heads: int = 24joint_attention_dim: int = 4096pooled_projection_dim: int = Noneguidance_embeds: bool = Falseaxes_dims_rope: list = [16, 56, 56]rope_theta = 10000time_theta = 10000 )

Параметры

  • patch_size (int) — Размер патча для разбиения входных данных на небольшие патчи.
  • in_channels (int, необязательный, по умолчанию 16) — Количество каналов на входе.
  • num_layers (int, необязательный, по умолчанию 18) — Количество используемых блоков MMDiT.
  • num_single_layers (int, необязательный, по умолчанию 18) — количество слоёв одиночных блоков DiT, которые следует использовать.
  • attention_head_dim (int, необязательный, по умолчанию 64) — количество каналов в каждой голове.
  • num_attention_heads (int, необязательный, по умолчанию 18) — количество головок для использования в механизме multi-head attention.
  • joint_attention_dim (int, необязательный) — Количество измерений encoder_hidden_states, которые следует использовать.
  • pooled_projection_dim (int) — Количество измерений, используемых при проецировании pooled_projections.
  • guidance_embeds (bool, по умолчанию False) — Использовать ли guidance embeddings.

Модель Transformer, представленная в Flux. Основана на FluxPipeline с несколькими изменениями:

  • нет объединённых эмбеддингов
  • Мы используем нулевую отсечку для промптов
  • Нет направляющего эмбеддинга, так как это не дистиллированная версия Ссылка: 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 = Noneattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = Truecontrolnet_block_samples = Nonecontrolnet_single_block_samples = None )

Параметры

  • hidden_states (torch.FloatTensor формы (batch size, channel, height, width)) — Входные hidden_states.
  • encoder_hidden_states (torch.FloatTensor формы (batch size, sequence_len, embed_dims)) — Условные эмбеддинги (эмбеддинги, вычисленные на основе входных условий, таких как промпты), которые следует использовать.
  • pooled_projections (torch.FloatTensor формы (batch_size, projection_dim)) — Векторы, полученные проецированием эмбеддингов входных условий.
  • timestep ( torch.LongTensor) — Используется для указания шага денойзинга.
  • img_ids (torch.Tensor) — Идентификаторы позиций изображений, используемые для вычисления вращательных позиционных эмбеддингов.
  • txt_ids (torch.Tensor) — Идентификаторы позиций текста, используемые для вычисления вращательных позиционных эмбеддингов.
  • guidance (torch.Tensor, необязательный) — Встраивание масштаба руководства, используемое для вариантов модели, дистиллированных с помощью руководства.
  • controlnet_block_samples (list из torch.Tensor, необязательный) — Список тензоров, которые при указании добавляются к остаткам блоков трансформера.
  • controlnet_single_block_samples (list из torch.Tensor, необязательный) — Список тензоров, которые при указании добавляются к остаткам одиночных блоков трансформера.
  • attention_kwargs (dict, необязательный) — Словарь kwargs, который при указании передается в AttentionProcessor, определенный в self.processor в diffusers.models.attention_processor.
  • return_dict (bool, необязательный, по умолчанию True) — Определяет, следует ли возвращать ~models.transformer_2d.Transformer2DModelOutput вместо обычного кортежа.

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

Update on GitHub