Diffusers documentation
GlmImageTransformer2DModel
GlmImageTransformer2DModel
Un modèle Diffusion Transformer pour des données 2D issu de [GlmImageTransformer2DModel] (TODO).
GlmImageTransformer2DModel
classe diffusers.GlmImageTransformer2DModel
< source >( patch_size: int = 2in_channels: int = 16out_channels: int = 16num_layers: int = 30attention_head_dim: int = 40num_attention_heads: int = 64text_embed_dim: int = 1472time_embed_dim: int = 512condition_dim: int = 256prior_vq_quantizer_codebook_size: int = 16384 )
Paramètres
- patch_size (
int, par défaut2) — La taille des patches à utiliser dans la couche d'embedding de patches. - in_channels (
int, par défaut16) — Le nombre de canaux dans l'entrée. - num_layers (
int, par défaut30) — Le nombre de blocs Transformer à utiliser. - attention_head_dim (
int, par défaut40) — Le nombre de canaux dans chaque tête. - num_attention_heads (
int, par défaut64) — Le nombre de têtes à utiliser pour l'attention multi-têtes. - out_channels (
int, par défaut16) — Le nombre de canaux dans la sortie. - text_embed_dim (
int, par défaut1472) — Dimension d'entrée des embeddings de texte issus de l'encodeur de texte. - time_embed_dim (
int, par défaut512) — Dimension de sortie des embeddings de pas de temps. - condition_dim (
int, par défaut256) — La dimension d’incorporation des conditions de résolution de type SDXL en entrée (original_size, target_size, crop_coords). - pos_embed_max_size (
int, par défaut128) — La résolution maximale des embeddings positionnels, à partir de laquelle des tranches de formeH x Wsont extraites et ajoutées aux latents patchés en entrée, oùHetWsont respectivement la hauteur et la largeur des latents. Une valeur de 128 signifie que la hauteur et la largeur maximales prises en charge pour la génération d’images sont128 * vae_scale_factor * patch_size => 128 * 8 * 2 => 2048. - sample_size (
int, par défaut128) — La résolution de base des latents d'entrée. Si la hauteur/largeur n'est pas fournie lors de la génération, cette valeur est utilisée pour déterminer la résolution comme suit :sample_size * vae_scale_factor => 128 * 8 => 1024
forward
< source >( hidden_states: Tensorencoder_hidden_states: Tensorprior_token_id: Tensorprior_token_drop: Tensortimestep: LongTensortarget_size: Tensorcrop_coords: Tensorattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = Trueattention_mask: typing.Optional[torch.Tensor] = Nonekv_caches: diffusers.models.transformers.transformer_glm_image.GlmImageKVCache | None = Noneimage_rotary_emb: tuple[torch.Tensor, torch.Tensor] | list[tuple[torch.Tensor, torch.Tensor]] | None = None )
Paramètres
- hidden_states (
torch.Tensorde forme(batch_size, in_channels, height, width)) —hidden_statesd'entrée. - encoder_hidden_states (
torch.Tensorde forme(batch_size, sequence_len, embed_dims)) — Embeddings conditionnels (embeddings calculés à partir des conditions d’entrée telles que les prompts) à utiliser. - prior_token_id (
torch.Tensor) — Identifiants des jetons pour la recherche de l'incorporation antérieure. - prior_token_drop (
torch.Tensor) — Masque booléen indiquant quels embeddings antérieurs doivent être supprimés (mis à zéro). - timestep (
torch.LongTensor) — Utilisé pour indiquer l'étape de débruitage. - target_size (
torch.Tensor) — Taille de l'image cible pour le conditionnement. - crop_coords (
torch.Tensor) — Coordonnées de recadrage conditionnelles. - 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. - attention_mask (
torch.Tensor, facultatif) — Masque appliqué aux scores d'attention. - kv_caches (
GlmImageKVCache, facultatif) — Mises en cache des clés/valeurs précalculées utilisées pour accélérer l'inférence. - image_rotary_emb (
tupledetorch.Tensor, facultatif) — Emplacements positionnels rotatifs précalculés.
La méthode forward du modèle GlmImageTransformer2DModel.