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.43.0).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

HunyuanDiT2DModel

Hunyuan-DiTの2次元データ向けのDiffusion Transformerモデルです。

HunyuanDiT2DModel

class 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 )

パラメータ

  • num_attention_heads (int、任意、デフォルトは 16)— マルチヘッドアテンションで使用するヘッドの数。
  • attention_head_dim (int、任意、デフォルト値は 88) — 各ヘッドのチャネル数です。
  • in_channels (int, 省略可) — 入力および出力のチャネル数(入力が連続値の場合に指定します)。
  • patch_size (int, 省略可) — 入力に使用するパッチのサイズです。
  • activation_fn (str、任意、デフォルトは"geglu") — フィードフォワード層で使用する活性化関数。
  • sample_size (int, 任意) — 潜在画像の幅です。これは位置埋め込みの数を学習するために使用されるため、学習中は固定されます。
  • dropout (float、任意、デフォルト値は 0.0) — 使用する dropout の確率です。
  • cross_attention_dim (int, 任意) — CLIP テキスト埋め込みの次元数です。
  • hidden_size (int, 任意) — 条件付け埋め込み層の隠れ層のサイズです。
  • num_layers (int、任意、デフォルトは 1) — 使用する Transformer ブロックの層数です。
  • mlp_ratio (float、任意、デフォルト値は 4.0) — 隠れ層のサイズと入力サイズの比率です。
  • learn_sigma (bool、省略可、デフォルトはTrue) — 分散を予測するかどうか。
  • cross_attention_dim_t5 (int、任意) — t5 テキスト埋め込みの次元数です。
  • pooled_projection_dim (int, 任意) — プーリングされた投影のサイズです。
  • text_len (int, 任意) — クリップのテキスト埋め込みの長さです。
  • text_len_t5 (int、任意) — T5 テキスト埋め込みの長さです。
  • use_style_cond_and_image_meta_size (bool, 任意) — スタイル条件と画像メタサイズを使用するかどうか。バージョン <=1.1 では True、バージョン >= 1.2 では False

HunYuanDiT: Transformerバックボーンを持つ拡散モデル。

diffusers のサンプラー StableDiffusionPipeline と互換性を持たせるために、ModelMixin と ConfigMixin を継承します。

enable_forward_chunking

< >

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

パラメータ

  • chunk_size (int, 任意) — フィードフォワード層のチャンクサイズです。指定しない場合、dim 次元の各テンソルに対してフィードフォワード層を個別に実行します。
  • dim (int, 任意、デフォルトは 0) — フィードフォワード計算をチャンク分割する次元を指定します。dim=0 (バッチ) または dim=1 (シーケンス長) のいずれかを選択してください。

フィードフォワードチャンク分割を使用するアテンションプロセッサを設定します。

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 )

パラメータ

  • hidden_states (torch.Tensor、形状 (batch size, dim, height, width)) — 入力テンソルです。
  • timestep ( torch.LongTensor, 任意) — デノイジングステップを示すために使用します。
  • encoder_hidden_states ( torch.Tensor、形状 (batch size, sequence len, embed dims)、任意) — クロスアテンション層用の条件付きエンベディングです。BertModel の出力です。
  • text_embedding_mask — torch.Tensor encoder_hidden_states に、(batch, key_tokens) の形状を持つアテンションマスクが適用されます。これは BertModel の出力です。
  • encoder_hidden_states_t5 ( torch.Tensor、形状 (batch size, sequence len, embed dims)、任意) — クロスアテンション層用の条件付きエンベディングです。これは T5 Text Encoder の出力です。
  • text_embedding_mask_t5 — torch.Tensor encoder_hidden_states に、(batch, key_tokens) の形状を持つアテンションマスクが適用されます。これは T5 Text Encoder の出力です。
  • image_meta_size (torch.Tensor) — 画像サイズを示す条件埋め込み
  • style — torch.Tensor: スタイルを示す条件埋め込み
  • image_rotary_emb (torch.Tensor) — アテンション計算時にクエリとキーのテンソルに適用する画像ロータリー埋め込み。
  • controlnet_block_samples (list of torch.Tensor, 任意) — 指定された場合、transformer ブロックの残差に追加されるテンソルのリストです。
  • return_dict — bool 辞書を返すかどうか。

HunyuanDiT2DModel の forward メソッド。

fuse_qkv_projections

< >

( )

融合された QKV 投影を有効にします。自己注意モジュールでは、すべての投影行列(つまり、クエリ、キー、バリュー)が融合されます。相互注意モジュールでは、キーとバリューの投影行列が融合されます。

> このAPIは🧪実験的です。

set_default_attn_processor

< >

( )

カスタムアテンションプロセッサを無効にし、デフォルトのアテンション実装を設定します。

unfuse_qkv_projections

< >

( )

有効化されている場合、融合された QKV 投影を無効にします。

> このAPIは🧪実験的です。

Update on GitHub