Buckets:

hf-doc-build/doc / diffusers /main /ja /api /models /lumina2_transformer2d.md
mishig's picture
|
download
raw
6.53 kB

Lumina2Transformer2DModel

Alpha-VLLM による Lumina Image 2.0 で、3D ビデオ類似データ向けの Diffusion Transformer モデルが紹介されました。

モデルは、以下のコードスニペットで読み込むことができます。

from diffusers import Lumina2Transformer2DModel

transformer = Lumina2Transformer2DModel.from_pretrained("Alpha-VLLM/Lumina-Image-2.0", subfolder="transformer", dtype=torch.bfloat16)

Lumina2Transformer2DModel[[diffusers.Lumina2Transformer2DModel]]

diffusers.Lumina2Transformer2DModel[[diffusers.Lumina2Transformer2DModel]]

diffusers.Lumina2Transformer2DModel(sample_size: int = 128, patch_size: int = 2, in_channels: int = 16, out_channels: int | None = None, hidden_size: int = 2304, num_layers: int = 26, num_refiner_layers: int = 2, num_attention_heads: int = 24, num_kv_heads: int = 8, multiple_of: int = 256, ffn_dim_multiplier: float | None = None, norm_eps: float = 1e-05, scaling_factor: float = 1.0, axes_dim_rope: tuple[int, int, int] = (32, 32, 32), axes_lens: tuple[int, int, int] = (300, 512, 512), cap_feat_dim: int = 1024)

ソース

パラメータ:

sample_size (int) : 潜在画像の幅です。これは位置埋め込みの数を学習するために使用されるため、トレーニング中は固定されます。

patch_size (int、optional、(int、optional、デフォルトは 2) : 画像における各パッチのサイズです。このパラメータは、モデルに投入されるパッチの解像度を定義します。

in_channels (int、任意、デフォルトは 4) : モデルの入力チャネル数です。通常、入力画像のチャネル数と一致します。

hidden_size (int、optional、デフォルト値は 4096) : モデルの隠れ層の次元数です。このパラメータは、モデルの隠れ表現の幅を決定します。

num_layers (int、optional、デフォルトは 32) : モデルの層数です。これはニューラルネットワークの深さを定義します。

num_attention_heads (int、optional、デフォルトは 32) : 各アテンション層におけるアテンションヘッドの数。このパラメータは、使用される独立したアテンション機構の数を指定します。

num_kv_heads (int、任意、デフォルトは 8) : アテンション機構におけるキーバリューヘッドの数。アテンションヘッドの数と異なる場合に指定します。None の場合は、num_attention_heads がデフォルト値として使用されます。

multiple_of (int、optional、デフォルトは 256) : hidden size が倍数でなければならない係数です。特定のハードウェア構成の最適化に役立ちます。

ffn_dim_multiplier (float, 任意) : フィードフォワードネットワークの次元に対する乗数です。None の場合、モデル設定に基づいたデフォルト値が使用されます。

norm_eps (float、任意、デフォルトは 1e-5) : 正規化層における数値的安定性を確保するために分母に追加される小さな値。

scaling_factor (float、optional、デフォルト値は 1.0) : モデル内の特定のパラメータやレイヤーに適用されるスケーリング係数です。モデルの演算全体のスケールを調整するために使用できます。

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

forward[[diffusers.Lumina2Transformer2DModel.forward]]

forward(hidden_states: Tensor, timestep: Tensor, encoder_hidden_states: Tensor, encoder_attention_mask: Tensor, attention_kwargs: dict[str, typing.Any] | None = None, return_dict: bool = True)

ソース

パラメータ:

hidden_states (torch.Tensor、形状 (batch_size, in_channels, height, width)) : 入力 hidden_states。

timestep (torch.LongTensor) : デノイジングステップを示すために使用されます。

encoder_hidden_states (torch.Tensor、shape (batch_size, sequence_len, embed_dims)) : 使用する条件埋め込み(プロンプトなどの入力条件から計算される埋め込み)。

encoder_attention_mask (torch.Tensor) : アテンション時にencoder_hidden_statesに適用されるマスク。

attention_kwargs (dict, 任意) : 指定された場合、diffusers.models.attention_processor の self.processor で定義されている AttentionProcessor に渡される kwargs の辞書です。

return_dict (bool、任意、デフォルトはTrue) : プレーンなタプルではなく~models.transformer_2d.Transformer2DModelOutputを返すかどうか。

戻り値:

return_dict が True の場合、~models.transformer_2d.Transformer2DModelOutput が返され、それ以外の場合は、最初の要素がサンプルテンソルである tuple が返されます。

Lumina2Transformer2DModelのforwardメソッドです。

Transformer2DModelOutput[[diffusers.models.modeling_outputs.Transformer2DModelOutput]]

diffusers.models.modeling_outputs.Transformer2DModelOutput[[diffusers.models.modeling_outputs.Transformer2DModelOutput]]

diffusers.models.modeling_outputs.Transformer2DModelOutput(sample: torch.Tensor)

ソース

パラメータ:

sample (torch.Tensor、shape は (batch_size, num_channels, height, width)、または Transformer2DModel が離散型の場合 (batch size, num_vector_embeds - 1, num_latent_pixels)) : encoder_hidden_states 入力を条件とする隠れ状態の出力です。離散型の場合、ノイズ除去されていない潜在ピクセルの確率分布を返します。

Transformer2DModelの出力です。

Xet Storage Details

Size:
6.53 kB
·
Xet hash:
c616971dec642f3354d4a81a4901a862772a25a6acdbc0413c899e89f0f6176b

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.