Diffusers documentation

FluxTransformer2DModel

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

and get access to the augmented documentation experience

to get started

FluxTransformer2DModel

Un modèle Transformer pour des données de type image de Flux.

FluxTransformer2DModel

classe diffusers.FluxTransformer2DModel

< >

( patch_size: int = 1in_channels: int = 64out_channels: int | None = Nonenum_layers: int = 19num_single_layers: int = 38attention_head_dim: int = 128num_attention_heads: int = 24joint_attention_dim: int = 4096pooled_projection_dim: int = 768guidance_embeds: bool = Falseaxes_dims_rope: tuple = (16, 56, 56) )

Paramètres

  • patch_size (int, par défaut 1) — 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 19) — Le nombre de blocs DiT à double flux à utiliser.
  • num_single_layers (int, par défaut 38) — Le nombre de blocs DiT à flux unique à 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 4096) — Le nombre de dimensions à utiliser pour l'attention conjointe (dimension d'embedding/canal de encoder_hidden_states).
  • pooled_projection_dim (int, par défaut 768) — Le nombre de dimensions à utiliser pour la projection agrégée.
  • 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 Flux.

Référence : https://blackforestlabs.ai/announcing-black-forest-labs/

forward

< >

( hidden_states: Tensorencoder_hidden_states: Tensor = Nonepooled_projections: Tensor = Nonetimestep: LongTensor = Noneimg_ids: Tensor = Nonetxt_ids: Tensor = Noneguidance: Tensor = Nonejoint_attention_kwargs: dict[str, typing.Any] | None = Nonecontrolnet_block_samples = Nonecontrolnet_single_block_samples = Nonereturn_dict: bool = Truecontrolnet_blocks_repeat: bool = False )

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.
  • pooled_projections (torch.Tensor de forme (batch_size, projection_dim)) — Projections des embeddings issus des embeddings des conditions d'entrée.
  • timestep ( torch.LongTensor) — Utilisé pour indiquer l'étape de débruitage.
  • img_ids (torch.Tensor) — Identifiants de position des images utilisés pour calculer les embeddings positionnels rotatifs.
  • txt_ids (torch.Tensor) — Identifiants de position du texte utilisés pour calculer les embeddings positionnels rotatifs.
  • guidance (torch.Tensor, optional) — Guidance scale embedding used for guidance-distilled variants of the model.
  • controlnet_block_samples (list de torch.Tensor, facultatif) — Une liste de tenseurs qui, si elle est spécifiée, est ajoutée aux résidus des blocs du transformeur.
  • controlnet_single_block_samples (list de torch.Tensor, facultatif) — Une liste de tenseurs qui, si elle est spécifiée, est ajoutée aux résidus des blocs de transformeur individuels.
  • controlnet_blocks_repeat (bool, facultatif, valeur par défaut False) — Indique s'il faut répéter les échantillons des blocs controlnet sur tous les blocs du transformer.
  • joint_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.
  • 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 FluxTransformer2DModel.

Update on GitHub