Diffusers documentation
AuraFlowTransformer2DModel
AuraFlowTransformer2DModel
Um modelo Transformer para dados semelhantes a imagens do AuraFlow.
AuraFlowTransformer2DModel
classe diffusers.AuraFlowTransformer2DModel
< source >( sample_size: int = 64patch_size: int = 2in_channels: int = 4num_mmdit_layers: int = 4num_single_dit_layers: int = 32attention_head_dim: int = 256num_attention_heads: int = 12joint_attention_dim: int = 2048caption_projection_dim: int = 3072out_channels: int = 4pos_embed_max_size: int = 1024 )
Parâmetros
- sample_size (
int) — A largura das imagens latentes. Isso é fixo durante o treinamento, pois é usado para aprender um número de embeddings de posição. - patch_size (
int) — Tamanho do patch para dividir os dados de entrada em pequenos patches. - in_channels (
int, opcional, padrão 4) — O número de canais na entrada. - num_mmdit_layers (
int, opcional, padrão 4) — O número de camadas de blocos Transformer MMDiT a serem usadas. - num_single_dit_layers (
int, opcional, padrão 32) — O número de camadas de blocos Transformer a serem usadas. Esses blocos utilizam representações de imagem e texto concatenadas. - attention_head_dim (
int, opcional, padrão 256) — O número de canais em cada cabeça. - num_attention_heads (
int, opcional, padrão 12) — 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 deencoder_hidden_statesa serem usadas. - caption_projection_dim (
int) — Número de dimensões a usar ao projetar oencoder_hidden_states. - out_channels (
int, padrão 4) — Número de canais de saída. - pos_embed_max_size (
int, padrão 1024) — Posições máximas a incorporar dos latentes da imagem.
Um modelo Transformer 2D, conforme introduzido no AuraFlow (https://blog.fal.ai/auraflow/).
forward
< source >( hidden_states: FloatTensorencoder_hidden_states: FloatTensor = Nonetimestep: LongTensor = Noneattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True )
Parâmetros
- hidden_states (
torch.FloatTensorde forma(batch size, channel, height, width)) —hidden_statesde entrada. - encoder_hidden_states (
torch.FloatTensorde 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. - timestep (
torch.LongTensor) — Usado para indicar o passo de desruido. - attention_kwargs (
dict, opcional) — Um dicionário de kwargs que, se especificado, é passado aoAttentionProcessorconforme definido emself.processorem diffusers.models.attention_processor. - return_dict (
bool, opcional, padrãoTrue) — Se deve ou não retornar um~models.transformer_2d.Transformer2DModelOutputem vez de uma tupla simples.
O método forward do AuraFlowTransformer2DModel.
Ativa as projeções QKV fundidas. Para os módulos de autoatenção, todas as matrizes de projeção (ou seja, query, key, value) são fundidas. Para os módulos de atenção cruzada, as matrizes de projeção de key e value são fundidas.
> Esta API é 🧪 experimental.
Desativa a projeção QKV fundida, se estiver habilitada.
> Esta API é 🧪 experimental.