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

Um modelo Transformer de fluxo modificado da Bria

BriaTransformer2DModel

classe 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 )

Parâmetros

  • patch_size (int) — Tamanho do patch para dividir os dados de entrada em pequenos patches.
  • in_channels (int, opcional, padrão 16) — O número de canais na entrada.
  • num_layers (int, opcional, padrão 18) — O número de blocos MMDiT a serem usados.
  • num_single_layers (int, opcional, padrão 18) — O número de camadas de blocos DiT únicos a serem usados.
  • attention_head_dim (int, opcional, padrão 64) — O número de canais em cada cabeça.
  • num_attention_heads (int, opcional, padrão 18) — O número de cabeças a serem usadas para a atenção multi-cabeça.
  • joint_attention_dim (int, opcional) — O número de dimensões de encoder_hidden_states a serem usadas.
  • pooled_projection_dim (int) — Número de dimensões a usar ao projetar as pooled_projections.
  • guidance_embeds (bool, padrão False) — Se deve usar embeddings de orientação.

O modelo Transformer introduzido no Flux. Baseado no FluxPipeline com várias alterações:

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 )

Parâmetros

  • hidden_states (torch.FloatTensor de forma (batch size, channel, height, width)) — hidden_states de entrada.
  • encoder_hidden_states (torch.FloatTensor de forma (batch size, sequence_len, embed_dims)) — Incorporações condicionais (incorporações calculadas a partir das condições de entrada, como prompts) a serem usadas.
  • pooled_projections (torch.FloatTensor de forma (batch_size, projection_dim)) — Projeções dos embeddings das condições de entrada.
  • timestep ( torch.LongTensor) — Usado para indicar o passo de desruido.
  • img_ids (torch.Tensor) — ids de posição de imagem usados para calcular os embeddings posicionais rotativos.
  • txt_ids (torch.Tensor) — Ids de posição de texto usados para calcular os embeddings posicionais rotativos.
  • guidance (torch.Tensor, opcional) — Embedding de escala de orientação usado para variantes destiladas por orientação do modelo.
  • controlnet_block_samples (list de torch.Tensor, opcional) — Uma lista de tensores que, se especificada, é adicionada aos resíduos dos blocos do transformer.
  • controlnet_single_block_samples (list de torch.Tensor, opcional) — Uma lista de tensores que, se especificada, é adicionada aos resíduos dos blocos de transformador únicos.
  • attention_kwargs (dict, opcional) — Um dicionário de kwargs que, se especificado, é passado ao AttentionProcessor conforme definido em self.processor em diffusers.models.attention_processor.
  • return_dict (bool, opcional, padrão True) — Se deve ou não retornar um ~models.transformer_2d.Transformer2DModelOutput em vez de uma tupla simples.

O método forward do BriaTransformer2DModel.

Update on GitHub