Diffusers documentation
LuminaNextDiT2DModel
LuminaNextDiT2DModel
Uma próxima versão do modelo Diffusion Transformer para dados 2D da Lumina-T2X.
LuminaNextDiT2DModel
classe diffusers.LuminaNextDiT2DModel
< source >( sample_size: int = 128patch_size: int | None = 2in_channels: int | None = 4hidden_size: int | None = 2304num_layers: int | None = 32num_attention_heads: int | None = 32num_kv_heads: int | None = Nonemultiple_of: int | None = 256ffn_dim_multiplier: float | None = Nonenorm_eps: float | None = 1e-05learn_sigma: bool | None = Trueqk_norm: bool | None = Truecross_attention_dim: int | None = 2048scaling_factor: float | None = 1.0 )
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, opcional, (int, opcional, padrão 2) — O tamanho de cada patch na imagem. Este parâmetro define a resolução dos patches enviados ao modelo. - in_channels (
int, opcional, padrão 4) — O número de canais de entrada do modelo. Normalmente, esse valor corresponde ao número de canais nas imagens de entrada. - hidden_size (
int, opcional, padrão 4096) — A dimensionalidade das camadas ocultas no modelo. Este parâmetro determina a largura das representações ocultas do modelo. - num_layers (
int, opcional, padrão 32) — O número de camadas no modelo. Isso define a profundidade da rede neural. - num_attention_heads (
int, opcional, padrão 32) — O número de cabeças de atenção em cada camada de atenção. Este parâmetro especifica quantos mecanismos de atenção separados são usados. - num_kv_heads (
int, opcional, padrão 8) — O número de cabeças de chave-valor no mecanismo de atenção, caso seja diferente do número de cabeças de atenção. Se for None, o padrão é num_attention_heads. - multiple_of (
int, opcional, padrão 256) — Um fator pelo qual o tamanho oculto deve ser múltiplo. Isso pode ajudar a otimizar certas configurações de hardware. - ffn_dim_multiplier (
float, opcional) — Um multiplicador para a dimensionalidade da rede feed-forward. Se for None, usa um valor padrão com base na configuração do modelo. - norm_eps (
float, opcional, padrão 1e-5) — Um valor pequeno adicionado ao denominador para estabilidade numérica nas camadas de normalização. - learn_sigma (
bool, opcional, padrão True) — Se o modelo deve aprender o parâmetro sigma, que pode estar relacionado à incerteza ou variância nas previsões. - qk_norm (
bool, opcional, padrão True) — Indica se as queries e as keys no mecanismo de atenção devem ser normalizadas. - cross_attention_dim (
int, opcional, padrão 2048) — A dimensionalidade dos embeddings de texto. Este parâmetro define o tamanho das representações de texto usadas no modelo. - scaling_factor (
float, opcional, padrão 1.0) — Fator de escala aplicado a certos parâmetros ou camadas no modelo. Isso pode ser usado para ajustar a escala geral das operações do modelo.
LuminaNextDiT: modelo de difusão com um backbone de Transformer.
Herde ModelMixin e ConfigMixin para ser compatível com o sampler StableDiffusionPipeline do diffusers.
forward
< source >( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_mask: Tensorimage_rotary_emb: Tensorcross_attention_kwargs: dict[str, typing.Any] = Nonereturn_dict = True ) → ~models.transformer_2d.Transformer2DModelOutput or tuple
Parâmetros
- hidden_states (torch.Tensor) — Tensor de entrada com forma (N, C, H, W).
- timestep (torch.Tensor) — Tensor dos timesteps de difusão com forma (N,).
- encoder_hidden_states (torch.Tensor) — Tensor de recursos da legenda com forma (N, D).
- encoder_mask (torch.Tensor) — Tensor de máscaras de legendas com forma (N, L).
- image_rotary_emb (
torch.Tensor) — Incorporações posicionais rotativas pré-computadas. - cross_attention_kwargs (
dict, opcional) — Um dicionário de kwargs que, se especificado, é passado para oAttentionProcessorconforme 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.
Retorna
~models.transformer_2d.Transformer2DModelOutput ou tuple
Se return_dict for True, um ~models.transformer_2d.Transformer2DModelOutput é retornado; caso contrário, uma tuple simples é retornada.
Passada para frente de LuminaNextDiT.