Diffusers documentation
Lumina2Transformer2DModel
Lumina2Transformer2DModel
Un modelo Diffusion Transformer para datos de video 3D fue introducido en Lumina Image 2.0 por Alpha-VLLM.
El modelo se puede cargar con el siguiente fragmento de código.
from diffusers import Lumina2Transformer2DModel
transformer = Lumina2Transformer2DModel.from_pretrained("Alpha-VLLM/Lumina-Image-2.0", subfolder="transformer", dtype=torch.bfloat16)Lumina2Transformer2DModel
clase diffusers.Lumina2Transformer2DModel
< source >( sample_size: int = 128patch_size: int = 2in_channels: int = 16out_channels: int | None = Nonehidden_size: int = 2304num_layers: int = 26num_refiner_layers: int = 2num_attention_heads: int = 24num_kv_heads: int = 8multiple_of: int = 256ffn_dim_multiplier: float | None = Nonenorm_eps: float = 1e-05scaling_factor: float = 1.0axes_dim_rope: tuple = (32, 32, 32)axes_lens: tuple = (300, 512, 512)cap_feat_dim: int = 1024 )
Parámetros
- sample_size (
int) — El ancho de las imágenes latentes. Esto se fija durante el entrenamiento, ya que se utiliza para aprender un número de embeddings de posición. - patch_size (
int, opcional, (int, opcional, predeterminado en 2) — El tamaño de cada parche en la imagen. Este parámetro define la resolución de los parches que se envían al modelo. - in_channels (
int, opcional, valor predeterminado 4) — El número de canales de entrada del modelo. Por lo general, coincide con el número de canales de las imágenes de entrada. - hidden_size (
int, opcional, valor predeterminado 4096) — La dimensionalidad de las capas ocultas en el modelo. Este parámetro determina el ancho de las representaciones ocultas del modelo. - num_layers (
int, opcional, valor predeterminado 32) — El número de capas en el modelo. Esto define la profundidad de la red neuronal. - num_attention_heads (
int, opcional, valor predeterminado 32) — El número de cabezas de atención en cada capa de atención. Este parámetro especifica cuántos mecanismos de atención independientes se utilizan. - num_kv_heads (
int, opcional, valor predeterminado 8) — El número de cabezas de clave-valor en el mecanismo de atención, si es diferente del número de cabezas de atención. Si es None, el valor predeterminado es num_attention_heads. - multiple_of (
int, opcional, valor predeterminado 256) — Un factor del que el tamaño oculto debe ser múltiplo. Esto puede ayudar a optimizar ciertas configuraciones de hardware. - ffn_dim_multiplier (
float, opcional) — Un multiplicador para la dimensionalidad de la red feed-forward. Si es None, utiliza un valor predeterminado basado en la configuración del modelo. - norm_eps (
float, opcional, valor predeterminado 1e-5) — Un valor pequeño que se suma al denominador para la estabilidad numérica en las capas de normalización. - scaling_factor (
float, opcional, valor predeterminado 1.0) — Un factor de escala aplicado a ciertos parámetros o capas del modelo. Esto se puede utilizar para ajustar la escala general de las operaciones del modelo.
Lumina2NextDiT: modelo de difusión con un backbone de Transformer.
forward
< source >( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_attention_mask: Tensorattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True )
Parámetros
- hidden_states (
torch.Tensorde forma(batch_size, in_channels, height, width)) — Entradahidden_states. - timestep (
torch.LongTensor) — Se utiliza para indicar el paso de desruido. - encoder_hidden_states (
torch.Tensorde forma(batch_size, sequence_len, embed_dims)) — Incrustaciones condicionales (incrustaciones calculadas a partir de las condiciones de entrada, como los prompts) que se deben utilizar. - encoder_attention_mask (
torch.Tensor) — Máscara aplicada aencoder_hidden_statesdurante la atención. - attention_kwargs (
dict, opcional) — Un diccionario de kwargs que, si se especifica, se pasa alAttentionProcessordefinido enself.processordentro de diffusers.models.attention_processor. - return_dict (
bool, opcional, valor predeterminadoTrue) — Indica si se debe devolver un~models.transformer_2d.Transformer2DModelOutputen lugar de una tupla simple.
El método forward de Lumina2Transformer2DModel.
Transformer2DModelOutput
clase diffusers.models.modeling_outputs.Transformer2DModelOutput
< source >( sample: torch.Tensor )
Parámetros
- sample (
torch.Tensorde forma(batch_size, num_channels, height, width)o(batch size, num_vector_embeds - 1, num_latent_pixels)si Transformer2DModel es discreto) — La salida de estados ocultos condicionada a la entradaencoder_hidden_states. Si es discreto, devuelve distribuciones de probabilidad para los píxeles latentes sin ruido.
La salida de Transformer2DModel.