Diffusers documentation

HunyuanDiT2DModel

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

HunyuanDiT2DModel

Un modelo Diffusion Transformer para datos 2D de Hunyuan-DiT.

HunyuanDiT2DModel

clase diffusers.HunyuanDiT2DModel

< >

( num_attention_heads: int = 16attention_head_dim: int = 88in_channels: int | None = Nonepatch_size: int | None = Noneactivation_fn: str = 'gelu-approximate'sample_size = 32hidden_size = 1152num_layers: int = 28mlp_ratio: float = 4.0learn_sigma: bool = Truecross_attention_dim: int = 1024norm_type: str = 'layer_norm'cross_attention_dim_t5: int = 2048pooled_projection_dim: int = 1024text_len: int = 77text_len_t5: int = 256use_style_cond_and_image_meta_size: bool = True )

Parámetros

  • num_attention_heads (int, opcional, valor predeterminado 16) — El número de cabezas a utilizar para la atención multi-cabeza.
  • attention_head_dim (int, opcional, valor predeterminado 88) — El número de canales en cada cabeza.
  • in_channels (int, opcional) — El número de canales en la entrada y la salida (especifícalo si la entrada es continua).
  • patch_size (int, opcional) — El tamaño del parche a utilizar para la entrada.
  • activation_fn (str, opcional, valor predeterminado "geglu") — Función de activación a utilizar en la red feed-forward.
  • sample_size (int, opcional) — 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.
  • dropout (float, opcional, valor predeterminado 0.0) — La probabilidad de dropout a utilizar.
  • cross_attention_dim (int, opcional) — El número de dimensiones en el embedding de texto de clip.
  • hidden_size (int, opcional) — El tamaño de la capa oculta en las capas de incrustación de condicionamiento.
  • num_layers (int, opcional, valor predeterminado 1) — El número de capas de bloques Transformer a utilizar.
  • mlp_ratio (float, opcional, valor predeterminado 4.0) — La proporción entre el tamaño de la capa oculta y el tamaño de la entrada.
  • learn_sigma (bool, opcional, valor predeterminado True) — Si se debe predecir la varianza.
  • cross_attention_dim_t5 (int, opcional) — El número de dimensiones en la incrustación de texto de t5.
  • pooled_projection_dim (int, opcional) — El tamaño de la proyección agrupada.
  • text_len (int, opcional) — La longitud del embedding de texto del clip.
  • text_len_t5 (int, opcional) — La longitud de la incrustación de texto de T5.
  • use_style_cond_and_image_meta_size (bool, opcional) — Si se usa o no la condición de estilo y el tamaño meta de la imagen. True para versión <=1.1, False para versión >= 1.2

HunYuanDiT: modelo de difusión con un esqueleto Transformer.

Hereda de ModelMixin y ConfigMixin para ser compatible con el sampler StableDiffusionPipeline de diffusers.

enable_forward_chunking

< >

( chunk_size: int | None = Nonedim: int = 0 )

Parámetros

  • chunk_size (int, opcional) — El tamaño de bloque de las capas feed-forward. Si no se especifica, se ejecutará la capa feed-forward de forma individual sobre cada tensor con dim=dim.
  • dim (int, opcional, valor predeterminado 0) — La dimensión sobre la que se debe dividir en bloques el cálculo de la red feed-forward. Elija entre dim=0 (lote) o dim=1 (longitud de la secuencia).

Establece el procesador de atención para usar fragmentación de avance hacia adelante.

forward

< >

( hidden_statestimestepencoder_hidden_states = Nonetext_embedding_mask = Noneencoder_hidden_states_t5 = Nonetext_embedding_mask_t5 = Noneimage_meta_size = Nonestyle = Noneimage_rotary_emb = Nonecontrolnet_block_samples = Nonereturn_dict = True )

Parámetros

  • hidden_states (torch.Tensor de forma (batch size, dim, height, width)) — El tensor de entrada.
  • timestep ( torch.LongTensor, opcional) — Se utiliza para indicar el paso de desruido.
  • encoder_hidden_states ( torch.Tensor de forma (batch size, sequence len, embed dims), opcional) — Incrustados condicionales para la capa de atención cruzada. Esta es la salida de BertModel.
  • text_embedding_mask — torch.Tensor Se aplica una máscara de atención de forma (batch, key_tokens) a encoder_hidden_states. Esta es la salida de BertModel.
  • encoder_hidden_states_t5 ( torch.Tensor de forma (batch size, sequence len, embed dims), opcional) — Incrustados condicionales para la capa de atención cruzada. Esta es la salida del codificador de texto de T5.
  • text_embedding_mask_t5 — torch.Tensor Se aplica una máscara de atención de forma (batch, key_tokens) a encoder_hidden_states. Esta es la salida del codificador de texto de T5.
  • image_meta_size (torch.Tensor) — Embedding condicional que indica los tamaños de las imágenes
  • style — torch.Tensor: Incrustado condicional que indica el estilo
  • image_rotary_emb (torch.Tensor) — Los embeddings rotatorios de imagen que se aplican a los tensores de consulta y clave durante el cálculo de la atención.
  • controlnet_block_samples (list de torch.Tensor, opcional) — Una lista de tensores que, si se especifica, se añaden a los residuos de los bloques del transformer.
  • return_dict — bool Si se debe devolver un diccionario.

El método forward de HunyuanDiT2DModel.

fuse_qkv_projections

< >

( )

Habilita las proyecciones QKV fusionadas. Para los módulos de autoatención, todas las matrices de proyección (es decir, consulta, clave y valor) se fusionan. Para los módulos de atención cruzada, las matrices de proyección de clave y valor se fusionan.

> Esta API es 🧪 experimental.

set_default_attn_processor

< >

( )

Desactiva los procesadores de atención personalizados y establece la implementación de atención predeterminada.

unfuse_qkv_projections

< >

( )

Desactiva la proyección QKV fusionada si está habilitada.

> Esta API es 🧪 experimental.

Update on GitHub