Diffusers documentation
StableAudioDiTModel
StableAudioDiTModel
Stable Audio Openのオーディオ波形用のTransformerモデル。
StableAudioDiTModel
class diffusers.StableAudioDiTModel
< source >( sample_size: int = 1024in_channels: int = 64num_layers: int = 24attention_head_dim: int = 64num_attention_heads: int = 24num_key_value_attention_heads: int = 12out_channels: int = 64cross_attention_dim: int = 768time_proj_dim: int = 256global_states_input_dim: int = 1536cross_attention_input_dim: int = 768 )
パラメータ
- sample_size (
int, 任意、デフォルトは 1024) — 入力サンプルのサイズ。 - in_channels (
int、任意、デフォルトは 64) — 入力におけるチャネル数。 - num_layers (
int、任意、デフォルトは 24) — 使用する Transformer ブロックの層数。 - attention_head_dim (
int、任意、デフォルトは 64) — 各ヘッドのチャネル数。 - num_attention_heads (
int、任意、デフォルトは 24)— クエリ状態に使用するヘッドの数。 - num_key_value_attention_heads (
int、任意、デフォルト値は 12)— キー状態とバリュー状態に使用するヘッドの数です。 - out_channels (
int、デフォルト値は 64) — 出力チャネル数。 - cross_attention_dim (
int、任意、デフォルト値は 768) — クロスアテンションの射影の次元数。 - time_proj_dim (
int, 省略可、デフォルトは 256) — タイムステップの内部投影の次元数。 - global_states_input_dim (
int、任意、デフォルトは 1536) — グローバル隠れ状態の射影の入力次元数。 - cross_attention_input_dim (
int、任意、デフォルトは 768) — クロスアテンションの射影の入力次元
Stable Audio で紹介された Diffusion Transformer モデル。
参照: https://github.com/Stability-AI/stable-audio-tools
forward
< source >( hidden_states: FloatTensortimestep: LongTensor = Noneencoder_hidden_states: FloatTensor = Noneglobal_hidden_states: FloatTensor = Nonerotary_embedding: FloatTensor = Nonereturn_dict: bool = Trueattention_mask: typing.Optional[torch.LongTensor] = Noneencoder_attention_mask: typing.Optional[torch.LongTensor] = None )
パラメータ
- hidden_states (
torch.FloatTensor、形状(batch size, in_channels, sequence_len)) — 入力となるhidden_states。 - timestep (
torch.LongTensor) — デノイジングステップを示すために使用されます。 - encoder_hidden_states (
torch.FloatTensor、shape(batch size, encoder_sequence_len, cross_attention_input_dim)) — 使用する条件埋め込み(プロンプトなどの入力条件から計算される埋め込み)。 - global_hidden_states (
torch.FloatTensor、shape(batch size, global_sequence_len, global_states_input_dim)) — hidden states の先頭に付加されるグローバル埋め込み。 - rotary_embedding (
torch.Tensor) — アテンション計算時にクエリとキーのテンソルに適用するロータリー埋め込み。 - return_dict (
bool、任意、デフォルトはTrue) — プレーンなタプルではなく~models.transformer_2d.Transformer2DModelOutputを返すかどうか。 - attention_mask (
torch.Tensorの形状(batch_size, sequence_len), 、任意) — パディングトークンのインデックスに対するアテンションを回避するためのマスク。2つのテキストエンコーダーのアテンションマスクを連結して形成されます。[0, 1]:- マスクされていないトークンに対して1
- マスクされたトークンに対しては 0 です。
- encoder_attention_mask (
torch.Tensorの形状(batch_size, sequence_len), 、任意) — 2 つのテキストエンコーダーの注意マスクを連結して形成される、パディングトークンのクロスアテンションインデックスに対するアテンションを回避するためのマスク。[0, 1]:- マスクされていないトークンに対して1
- マスクされたトークンに対しては 0。
StableAudioDiTModelのforwardメソッドです。
カスタムアテンションプロセッサを無効にし、デフォルトのアテンション実装を設定します。