Diffusers documentation
LuminaNextDiT2DModel
LuminaNextDiT2DModel
Une version suivante du modèle Diffusion Transformer pour les données 2D de 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 )
Paramètres
- sample_size (
int) — La largeur des images latentes. Cette valeur est fixe pendant l’entraînement, car elle est utilisée pour apprendre un nombre d’embeddings de position. - patch_size (
int, facultatif, (int, facultatif, par défaut 2) — La taille de chaque patch dans l'image. Ce paramètre définit la résolution des patches fournis au modèle. - in_channels (
int, facultatif, valeur par défaut 4) — Le nombre de canaux d'entrée du modèle. En général, ce nombre correspond au nombre de canaux des images d'entrée. - hidden_size (
int, facultatif, par défaut 4096) — La dimension des couches cachées du modèle. Ce paramètre détermine la largeur des représentations cachées du modèle. - num_layers (
int, facultatif, par défaut 32) — Le nombre de couches du modèle. Cela définit la profondeur du réseau de neurones. - num_attention_heads (
int, facultatif, valeur par défaut 32) — Le nombre de têtes d'attention dans chaque couche d'attention. Ce paramètre spécifie le nombre de mécanismes d'attention distincts utilisés. - num_kv_heads (
int, facultatif, valeur par défaut : 8) — Le nombre de têtes clé-valeur dans le mécanisme d'attention, s'il diffère du nombre de têtes d'attention. Si None, la valeur par défaut est num_attention_heads. - multiple_of (
int, facultatif, valeur par défaut 256) — Un facteur dont la taille cachée doit être un multiple. Cela peut aider à optimiser certaines configurations matérielles. - ffn_dim_multiplier (
float, facultatif) — Un multiplicateur pour la dimensionnalité du réseau feed-forward. Si None, il utilise une valeur par défaut basée sur la configuration du modèle. - norm_eps (
float, facultatif, valeur par défaut 1e-5) — Une petite valeur ajoutée au dénominateur pour la stabilité numérique dans les couches de normalisation. - learn_sigma (
bool, facultatif, valeur par défaut True) — Indique si le modèle doit apprendre le paramètre sigma, qui peut être lié à l'incertitude ou à la variance des prédictions. - qk_norm (
bool, facultatif, valeur par défaut True) — Indique si les requêtes et les clés du mécanisme d'attention doivent être normalisées. - cross_attention_dim (
int, facultatif, valeur par défaut 2048) — La dimensionnalité des embeddings de texte. Ce paramètre définit la taille des représentations de texte utilisées dans le modèle. - scaling_factor (
float, facultatif, valeur par défaut 1.0) — Facteur d'échelle appliqué à certains paramètres ou couches du modèle. Il peut être utilisé pour ajuster l'échelle globale des opérations du modèle.
LuminaNextDiT : modèle de diffusion avec un squelette Transformer.
Hériter de ModelMixin et ConfigMixin pour être compatible avec le sampler StableDiffusionPipeline de diffusers.
forward
< source >( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_mask: Tensorimage_rotary_emb: Tensorcross_attention_kwargs: dict = Nonereturn_dict = True ) → ~models.transformer_2d.Transformer2DModelOutput or tuple
Paramètres
- hidden_states (torch.Tensor) — Tenseur d'entrée de forme (N, C, H, W).
- timestep (torch.Tensor) — Tenseur des pas de diffusion de forme (N,).
- encoder_hidden_states (torch.Tensor) — Tenseur des fonctionnalités de la légende de forme (N, D).
- encoder_mask (torch.Tensor) — Tenseur de masques de légendes de forme (N, L).
- image_rotary_emb (
torch.Tensor) — Emplacements positionnels rotatifs précalculés. - cross_attention_kwargs (
dict, facultatif) — Un dictionnaire de kwargs qui, s'il est spécifié, est transmis à l'AttentionProcessordéfini sousself.processordans diffusers.models.attention_processor. - return_dict (
bool, facultatif, par défautTrue) — Indique s'il faut retourner un~models.transformer_2d.Transformer2DModelOutputplutôt qu'un simple tuple.
Retourne
~models.transformer_2d.Transformer2DModelOutput ou tuple
Si return_dict est True, un ~models.transformer_2d.Transformer2DModelOutput est renvoyé, sinon
un simple tuple est renvoyé.
Passage avant de LuminaNextDiT.