Diffusers documentation

LuminaNextDiT2DModel

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

LuminaNextDiT2DModel

Lumina-T2X による、2次元データ向けの次世代 Diffusion Transformer モデルです。

LuminaNextDiT2DModel

クラス diffusers.LuminaNextDiT2DModel

< >

( sample_size: int = 128patch_size: int | None = 2in_channels: int | None = 4hidden_size: int | None = 2304num_layers: int | None = 32num_attention_heads: int | None = 32num_kv_heads: int | None = Nonemultiple_of: int | None = 256ffn_dim_multiplier: float | None = Nonenorm_eps: float | None = 1e-05learn_sigma: bool | None = Trueqk_norm: bool | None = Truecross_attention_dim: int | None = 2048scaling_factor: float | None = 1.0 )

パラメータ

  • sample_size (int) — 潜在画像の幅です。これは位置埋め込みの数を学習するために使用されるため、学習中は固定されます。
  • patch_size (int, 任意, (int, 任意, デフォルトは 2) — 画像における各パッチのサイズです。このパラメータは、モデルに投入されるパッチの解像度を定義します。
  • in_channels (int、任意、デフォルト値は 4) — モデルの入力チャネル数です。通常、入力画像のチャネル数と一致します。
  • hidden_size (int、任意、デフォルト値は 4096) — モデルの隠れ層の次元数です。このパラメータは、モデルの隠れ表現の幅を決定します。
  • num_layers (int、任意、デフォルトは 32) — モデルの層数です。これはニューラルネットワークの深さを定義します。
  • num_attention_heads (int、任意、デフォルトは 32) — 各アテンション層におけるアテンションヘッドの数です。このパラメータは、使用される独立したアテンションメカニズムの数を指定します。
  • num_kv_heads (int, 任意、デフォルトは 8) — アテンション機構におけるキー・バリューヘッドの数です。アテンションヘッドの数と異なる場合に指定します。 None の場合、デフォルトで num_attention_heads が使用されます。
  • multiple_of (int、任意、デフォルトは 256) — 隠れ層サイズが倍数であるべき係数です。これにより、特定のハードウェア構成の最適化に役立ちます。
  • ffn_dim_multiplier (float, 省略可) — フィードフォワードネットワークの次元に対する乗数です。None の場合、モデル設定に基づいたデフォルト値が使用されます。
  • norm_eps (float、任意、デフォルトは 1e-5) — 正規化層における数値的安定性を確保するために分母に加算される小さな値。
  • learn_sigma (bool、省略可能、デフォルトは True) — モデルがシグマパラメータを学習すべきかどうかを指定します。このパラメータは、予測の不確実性や分散に関連する可能性があります。
  • qk_norm (bool、任意、デフォルトは True) — アテンション機構におけるクエリとキーを正規化するかを示します。
  • cross_attention_dim (int、任意、デフォルトは 2048)— テキスト埋め込みの次元数です。このパラメータは、モデル内で使用されるテキスト表現のサイズを定義します。
  • scaling_factor (float、任意、デフォルト値は 1.0) — モデル内の特定のパラメータやレイヤーに適用されるスケーリング係数です。モデルの演算全体のスケールを調整するために使用できます。

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

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

forward

< >

( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_mask: Tensorimage_rotary_emb: Tensorcross_attention_kwargs: dict[str, typing.Any] = Nonereturn_dict = True ) → ~models.transformer_2d.Transformer2DModelOutput or tuple

パラメータ

  • hidden_states (torch.Tensor) — 形状が (N, C, H, W) の入力テンソル。
  • timestep (torch.Tensor) — 形状 (N,) の拡散タイムステップのテンソル。
  • encoder_hidden_states (torch.Tensor) — 形状 (N, D) のキャプション特徴量テンソル。
  • encoder_mask (torch.Tensor) — 形状 (N, L) のキャプションマスクのテンソル。
  • image_rotary_emb (torch.Tensor) — 事前計算された回転位置埋め込みです。
  • cross_attention_kwargs (dict、省略可) — 指定された場合、diffusers.models.attention_processor で定義されている self.processor 配下の AttentionProcessor に渡される kwargs の辞書です。
  • return_dict (bool、任意、デフォルトは True) — プレーンなタプルではなく ~models.transformer_2d.Transformer2DModelOutput を返すかどうか。

戻り値

~models.transformer_2d.Transformer2DModelOutput または tuple

return_dict が True の場合、~models.transformer_2d.Transformer2DModelOutput が返され、それ以外の場合は通常の tuple が返されます。

LuminaNextDiTのフォワードパス。

Update on GitHub