Buckets:

hf-doc-build/doc / diffusers /main /pt /api /models /lumina2_transformer2d.md
mishig's picture
|
download
raw
5.93 kB

Lumina2Transformer2DModel

Um modelo Diffusion Transformer para dados de vídeo 3D foi introduzido em Lumina Image 2.0 pela Alpha-VLLM.

O modelo pode ser carregado com o seguinte trecho de código.

from diffusers import Lumina2Transformer2DModel

transformer = Lumina2Transformer2DModel.from_pretrained("Alpha-VLLM/Lumina-Image-2.0", subfolder="transformer", dtype=torch.bfloat16)

Lumina2Transformer2DModel[[diffusers.Lumina2Transformer2DModel]]

diffusers.Lumina2Transformer2DModel[[diffusers.Lumina2Transformer2DModel]]

diffusers.Lumina2Transformer2DModel(sample_size: int = 128, patch_size: int = 2, in_channels: int = 16, out_channels: int | None = None, hidden_size: int = 2304, num_layers: int = 26, num_refiner_layers: int = 2, num_attention_heads: int = 24, num_kv_heads: int = 8, multiple_of: int = 256, ffn_dim_multiplier: float | None = None, norm_eps: float = 1e-05, scaling_factor: float = 1.0, axes_dim_rope: tuple[int, int, int] = (32, 32, 32), axes_lens: tuple[int, int, int] = (300, 512, 512), cap_feat_dim: int = 1024)

Fonte

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 para o modelo. Normalmente, isso 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, se 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 um 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.

scaling_factor (float, opcional, padrão 1.0) : Um 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.

Lumina2NextDiT: modelo de difusão com um backbone de Transformer.

forward[[diffusers.Lumina2Transformer2DModel.forward]]

forward(hidden_states: Tensor, timestep: Tensor, encoder_hidden_states: Tensor, encoder_attention_mask: Tensor, attention_kwargs: dict[str, typing.Any] | None = None, return_dict: bool = True)

Fonte

Parâmetros:

hidden_states (torch.Tensor de forma (batch_size, in_channels, height, width)) : hidden_states de entrada.

timestep (torch.LongTensor) : Usado para indicar o passo de desruidamento.

encoder_hidden_states (torch.Tensor de forma (batch_size, sequence_len, embed_dims)) : Embeddings condicionais (embeddings calculados a partir das condições de entrada, como prompts) a serem usados.

encoder_attention_mask (torch.Tensor) : Máscara aplicada a encoder_hidden_states durante a atenção.

attention_kwargs (dict, opcional) : Um dicionário de kwargs que, se especificado, é passado para o AttentionProcessor conforme definido em self.processor em diffusers.models.attention_processor.

return_dict (bool, opcional, padrão True) : Indica se deve retornar um ~models.transformer_2d.Transformer2DModelOutput em vez de uma tupla simples.

Retorna:

Se return_dict for True, um ~models.transformer_2d.Transformer2DModelOutput é retornado; caso contrário, uma tuple onde o primeiro elemento é o tensor da amostra.

O método forward do Lumina2Transformer2DModel.

Transformer2DModelOutput[[diffusers.models.modeling_outputs.Transformer2DModelOutput]]

diffusers.models.modeling_outputs.Transformer2DModelOutput[[diffusers.models.modeling_outputs.Transformer2DModelOutput]]

diffusers.models.modeling_outputs.Transformer2DModelOutput(sample: torch.Tensor)

Fonte

Parâmetros:

sample (torch.Tensor de forma (batch_size, num_channels, height, width) ou (batch size, num_vector_embeds - 1, num_latent_pixels) se Transformer2DModel for discreto) : A saída dos estados ocultos condicionada à entrada encoder_hidden_states. Se discreto, retorna distribuições de probabilidade para os pixels latentes sem ruído.

A saída de Transformer2DModel.

Xet Storage Details

Size:
5.93 kB
·
Xet hash:
3a94a665f12a211f15162afd3eecd832b9b6fc138b5fd08d78b658f79f749709

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.