Diffusers documentation

HeliosTransformer3DModel

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

HeliosTransformer3DModel

Helios によって、Helios: Real Real-Time Long Video Generation Model (北京大学 & ByteDance & 他) で紹介された、3D 動画のようなデータ向けの 14B リアルタイム自己回帰型 Diffusion Transformer モデル (T2V、I2V、V2V をサポート)

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

from diffusers import HeliosTransformer3DModel

# Best Quality
transformer = HeliosTransformer3DModel.from_pretrained("BestWishYsh/Helios-Base", subfolder="transformer", dtype=torch.bfloat16)
# Intermediate Weight
transformer = HeliosTransformer3DModel.from_pretrained("BestWishYsh/Helios-Mid", subfolder="transformer", dtype=torch.bfloat16)
# Best Efficiency
transformer = HeliosTransformer3DModel.from_pretrained("BestWishYsh/Helios-Distilled", subfolder="transformer", dtype=torch.bfloat16)

HeliosTransformer3DModel

class diffusers.HeliosTransformer3DModel

< >

( patch_size: tuple = (1, 2, 2)num_attention_heads: int = 40attention_head_dim: int = 128in_channels: int = 16out_channels: int = 16text_dim: int = 4096freq_dim: int = 256ffn_dim: int = 13824num_layers: int = 40cross_attn_norm: bool = Trueqk_norm: str | None = 'rms_norm_across_heads'eps: float = 1e-06added_kv_proj_dim: int | None = Nonerope_dim: tuple = (44, 42, 42)rope_theta: float = 10000.0guidance_cross_attn: bool = Truezero_history_timestep: bool = Truehas_multi_term_memory_patch: bool = Trueis_amplify_history: bool = Falsehistory_scale_mode: str = 'per_head' )

パラメータ

  • patch_size (tuple[int]、デフォルトは (1, 2, 2)) — 動画埋め込み用の3Dパッチ次元 (t_patch, h_patch, w_patch)。
  • num_attention_heads (int、デフォルトは 40) — テキスト埋め込みの固定長です。
  • attention_head_dim (int、デフォルトは128) — 各ヘッドのチャネル数です。
  • in_channels (int, デフォルトは 16) — 入力におけるチャネル数。
  • out_channels (int、デフォルトは16) — 出力のチャネル数です。
  • text_dim (int、デフォルトは512) — テキスト埋め込みの入力次元数。
  • freq_dim (int、デフォルトは256) — 正弦波時間埋め込みの次元数。
  • ffn_dim (int、デフォルトは 13824) — フィードフォワードネットワークの中間次元数。
  • num_layers (int、デフォルトは40) — 使用するtransformerブロックの層数です。
  • window_size (tuple[int], デフォルトは (-1, -1)) — ローカルアテンションのウィンドウサイズです(-1 はグローバルアテンションを示します)。
  • cross_attn_norm (bool、デフォルトはTrue) — クロスアテンションの正規化を有効にします。
  • qk_norm (bool、デフォルトはTrue) — クエリ/キーの正規化を有効にします。
  • eps (float、デフォルト値は 1e-6) — 正規化レイヤー用のエプシロン値です。
  • add_img_emb (bool、デフォルトはFalse) — img_embを使用するかどうか。
  • added_kv_proj_dim (int、任意、デフォルトはNone) — 追加されるキーおよびバリューの投影に使用するチャネル数。Noneの場合、投影は使用されません。

Heliosモデルで使用される、動画のようなデータ向けのTransformerモデル。

forward

< >

( hidden_states: Tensortimestep: LongTensorencoder_hidden_states: Tensorindices_hidden_states = Noneindices_latents_history_short = Noneindices_latents_history_mid = Noneindices_latents_history_long = Nonelatents_history_short = Nonelatents_history_mid = Nonelatents_history_long = Nonereturn_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = None )

パラメータ

  • hidden_states (torch.Tensor、形状 (batch_size, num_channels, num_frames, height, width)) — 入力となる hidden_states。
  • timestep (torch.LongTensor) — デノイジングステップを示すために使用されます。
  • encoder_hidden_states (torch.Tensor、形状 (batch_size, sequence_len, embed_dims)) — 使用する条件埋め込み(プロンプトなどの入力条件から計算される埋め込み)。
  • indices_hidden_states (torch.Tensor, 任意) — hidden_states のロータリー位置埋め込みを計算するために使用されるフレームインデックス。
  • indices_latents_history_short (torch.Tensor, 任意) — 短い履歴の潜在変数のフレームインデックスです。
  • indices_latents_history_mid (torch.Tensor, 任意) — mid history latents のフレームインデックスです。
  • indices_latents_history_long (torch.Tensor, 省略可) — 長い履歴の潜在変数のフレームインデックスです。
  • latents_history_short (torch.Tensor, 任意) — 短い履歴の潜変数による条件付け。
  • latents_history_mid (torch.Tensor、任意) — ミッドヒストリーの潜変数条件付けです。
  • latents_history_long (torch.Tensor, 任意) — 長い履歴の潜変数による条件付け。
  • return_dict (bool、任意、デフォルトは True) — プレーンなタプルではなく ~models.transformer_2d.Transformer2DModelOutput を返すかどうか。
  • attention_kwargs (dict, 省略可) — 指定された場合、diffusers.models.attention_processor で定義されている self.processor 内の AttentionProcessor に渡される kwargs 辞書です。

HeliosTransformer3DModelのforwardメソッドです。

Transformer2DModelOutput

クラス diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

パラメータ

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

Transformer2DModelの出力です。

Update on GitHub