Diffusers documentation

QwenImageTransformer2DModel

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.43.0).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

QwenImageTransformer2DModel

Le modèle peut être chargé à l'aide du fragment de code suivant.

from diffusers import QwenImageTransformer2DModel

transformer = QwenImageTransformer2DModel.from_pretrained("Qwen/QwenImage-20B", subfolder="transformer", dtype=torch.bfloat16)

QwenImageTransformer2DModel

classe diffusers.QwenImageTransformer2DModel

< >

( patch_size: int = 2in_channels: int = 64out_channels: int | None = 16num_layers: int = 60attention_head_dim: int = 128num_attention_heads: int = 24joint_attention_dim: int = 3584guidance_embeds: bool = Falseaxes_dims_rope: tuple[int, int, int] = (16, 56, 56)zero_cond_t: bool = Falseuse_additional_t_cond: bool = Falseuse_layer3d_rope: bool = False )

Paramètres

  • patch_size (int, par défaut 2) — Taille des patches pour découper les données d'entrée en petits patches.
  • in_channels (int, par défaut 64) — Le nombre de canaux dans l'entrée.
  • out_channels (int, facultatif, par défaut None) — Le nombre de canaux dans la sortie. S'il n'est pas spécifié, il est par défaut égal à in_channels.
  • num_layers (int, par défaut 60) — Le nombre de blocs DiT à double flux à utiliser.
  • attention_head_dim (int, par défaut 128) — Le nombre de dimensions à utiliser pour chaque tête d'attention.
  • num_attention_heads (int, par défaut 24) — Le nombre de têtes d'attention à utiliser.
  • joint_attention_dim (int, par défaut 3584) — Le nombre de dimensions à utiliser pour l'attention conjointe (dimension d'embedding/canal de encoder_hidden_states).
  • guidance_embeds (bool, par défaut False) — Indique s'il faut utiliser des embeddings de guidance pour la variante du modèle distillée par guidance.
  • axes_dims_rope (tuple[int], par défaut (16, 56, 56)) — Les dimensions à utiliser pour les embeddings positionnels rotatifs.

Le modèle Transformer introduit dans Qwen.

forward

< >

( hidden_states: Tensorencoder_hidden_states: Tensor = Noneencoder_hidden_states_mask: Tensor = Nonetimestep: LongTensor = Noneimg_shapes: list[tuple[int, int, int]] | None = Noneguidance: Tensor = Noneattention_kwargs: dict[str, typing.Any] | None = Nonecontrolnet_block_samples = Noneadditional_t_cond = Nonereturn_dict: bool = True )

Paramètres

  • hidden_states (torch.Tensor de forme (batch_size, image_sequence_length, in_channels)) — hidden_states d'entrée.
  • encoder_hidden_states (torch.Tensor de forme (batch_size, text_sequence_length, joint_attention_dim)) — Embeddings conditionnels (embeddings calculés à partir des conditions d’entrée telles que les prompts) à utiliser.
  • encoder_hidden_states_mask (torch.Tensor de forme (batch_size, text_sequence_length), facultatif) — Masque pour les états cachés de l’encodeur. Il est attendu qu’il contienne 1.0 pour les jetons valides et 0.0 pour les jetons de bourrage. Utilisé dans le processeur d’attention pour empêcher l’attention de porter sur les jetons de bourrage. Le masque peut avoir n’importe quel motif (pas uniquement des jetons valides contigus suivis de bourrage) car il est appliqué élément par élément dans l’attention.
  • timestep ( torch.LongTensor) — Utilisé pour indiquer l'étape de débruitage.
  • img_shapes (list[tuple[int, int, int]], facultatif) — Formes des images pour le calcul de RoPE.
  • guidance (torch.Tensor, optional) — Guidance tensor for conditional generation.
  • attention_kwargs (dict, facultatif) — Un dictionnaire de kwargs qui, s'il est spécifié, est transmis à l'AttentionProcessor défini sous self.processor dans diffusers.models.attention_processor.
  • controlnet_block_samples (facultatif) — Échantillons de blocs ControlNet à ajouter aux blocs du transformer.
  • additional_t_cond (torch.Tensor, facultatif) — Conditionnement supplémentaire de l'étape temporelle ajouté à l'incorporation de l'étape temporelle.
  • return_dict (bool, facultatif, par défaut True) — Indique s'il faut retourner un ~models.transformer_2d.Transformer2DModelOutput plutôt qu'un simple tuple.

La méthode forward du QwenTransformer2DModel.

Transformer2DModelOutput

classe diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

Paramètres

  • sample (torch.Tensor de forme (batch_size, num_channels, height, width) ou (batch size, num_vector_embeds - 1, num_latent_pixels) si Transformer2DModel est discret) — Les états cachés en sortie, conditionnés par l'entrée encoder_hidden_states. Si discret, renvoie les distributions de probabilité pour les pixels latents non bruités.

La sortie de Transformer2DModel.

Update on GitHub