Diffusers documentation
AuraFlowTransformer2DModel
AuraFlowTransformer2DModel
AuraFlowからの画像類似データ向けのTransformerモデルです。
AuraFlowTransformer2DModel
class diffusers.AuraFlowTransformer2DModel
< source >( sample_size: int = 64patch_size: int = 2in_channels: int = 4num_mmdit_layers: int = 4num_single_dit_layers: int = 32attention_head_dim: int = 256num_attention_heads: int = 12joint_attention_dim: int = 2048caption_projection_dim: int = 3072out_channels: int = 4pos_embed_max_size: int = 1024 )
パラメータ
- sample_size (
int) — 潜在画像の幅です。これは位置埋め込みの数を学習するために使用されるため、学習中は固定されます。 - patch_size (
int) — 入力データを小さなパッチに変換するためのパッチサイズ。 - in_channels (
int、省略可、デフォルトは 4) — 入力データのチャネル数。 - num_mmdit_layers (
int、任意、デフォルトは 4) — 使用する MMDiT Transformer ブロックの層数です。 - num_single_dit_layers (
int、任意、デフォルト値は 32)— 使用する Transformer ブロックの層数です。これらのブロックは、画像とテキストの表現を連結して使用します。 - attention_head_dim (
int、任意、デフォルトは 256) — 各ヘッドのチャネル数です。 - num_attention_heads (
int、任意、デフォルトは 12)— マルチヘッドアテンションに使用するヘッド数。 - joint_attention_dim (
int、任意) — 使用するencoder_hidden_statesの次元数。 - caption_projection_dim (
int) —encoder_hidden_statesを射影する際に使用する次元数。 - out_channels (
int、デフォルトは 4) — 出力チャネル数。 - pos_embed_max_size (
int、デフォルト値は 1024) — 画像の潜在変数から埋め込む最大位置数。
AuraFlow(https://blog.fal.ai/auraflow/)で紹介された2次元Transformerモデル。
forward
< source >( hidden_states: FloatTensorencoder_hidden_states: FloatTensor = Nonetimestep: LongTensor = Noneattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True )
パラメータ
- hidden_states (
torch.FloatTensor、形状(batch size, channel, height, width)) — 入力となるhidden_states。 - encoder_hidden_states (
torch.FloatTensor、shape(batch size, sequence_len, embed_dims)) — 使用する条件埋め込み(プロンプトなどの入力条件から計算される埋め込み)。 - timestep (
torch.LongTensor) — デノイジングステップを示すために使用されます。 - attention_kwargs (
dict, 省略可) — 指定された場合、diffusers.models.attention_processor で定義されているself.processor内のAttentionProcessorに渡される kwargs 辞書です。 - return_dict (
bool、任意、デフォルトはTrue) — プレーンなタプルではなく~models.transformer_2d.Transformer2DModelOutputを返すかどうか。
AuraFlowTransformer2DModel の forward メソッドです。
融合された QKV 投影を有効にします。自己注意モジュールでは、すべての投影行列(つまり、クエリ、キー、バリュー)が融合されます。相互注意モジュールでは、キーとバリューの投影行列が融合されます。
> このAPIは🧪実験的です。