Diffusers 文档

StableAudioDiTModel

Hugging Face's logo
加入 Hugging Face 社区

并获取增强的文档体验

开始吧

StableAudioDiTModel

Stable Audio Open 用于音频波形的 Transformer 模型。

StableAudioDiTModel

diffusers.StableAudioDiTModel

< >

( sample_size: int = 1024 in_channels: int = 64 num_layers: int = 24 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 )

参数

  • sample_size ( int, 可选, 默认为 1024) — 输入采样的尺寸。
  • in_channels (int, 可选,默认为 64) — 输入中的通道数。
  • num_layers (int, 可选,默认为 24) — 要使用的 Transformer 块的层数。
  • num_attention_heads (int, 可选, 默认值 24) — 输入状态中使用的头数。
  • num_key_value_attention_heads (int, 可选, 默认值 12) — 键值状态中使用的头数数量。
  • cross_attention_dim (int, 可选,默认值为 768) — 交叉注意力投射的维度。
  • time_proj_dim (int, 可选,默认值为 256) — 时步内部投射的维度。
  • cross_attention_input_dim ( int, 可选, 默认为 768) — 交叉注意投影的输入维度

Stable Audio 中引入的 Diffusion Transformer 模型。

参考:https://github.com/Stability-AI/stable-audio-tools

前向

< >

( hidden_states: FloatTensor timestep: LongTensor = None encoder_hidden_states: FloatTensor = None global_hidden_states: FloatTensor = None rotary_embedding: FloatTensor = None return_dict: bool = True attention_mask: Optional = None encoder_attention_mask: Optional = None )

参数

  • hidden_states (torch.FloatTensor of shape (batch size, in_channels, sequence_len)) — 输入hidden_states
  • timesteptorch.LongTensor)— 用于指示去噪步骤。
  • encoder_hidden_states (torch.FloatTensor 形状为 (batch size, encoder_sequence_len, cross_attention_input_dim)) — 要使用的条件嵌入(根据输入条件(例如提示)计算的嵌入)。
  • global_hidden_states (torch.FloatTensor 形状为 (batch size, global_sequence_len, global_states_input_dim)) — 将预置到隐藏状态的全局嵌入。
  • return_dict (bool, 可选, 默认为 True) — 是否返回 ~models.transformer_2d.Transformer2DModelOutput 而不是普通元组。
  • attention_mask (torch.Tensor 形状为 (batch_size, sequence_len), 可选) — 掩码,用于避免在填充令牌索引上执行注意力,通过连接两个文本编码器的注意力掩码形成。在 [0, 1] 中选定的掩码值:

    • 未掩码的令牌为 1,
    • 已掩码的令牌为 0。
  • encoder_attention_mask (torch.Tensor 形状为 (batch_size, sequence_len)可选) — 避免对 padding 标记执行注意力交叉注意索引的掩码,通过将两个文本编码器的注意力掩码组合在一起形成。在 [0, 1] 中选择的掩码值:

    • 1 表示未掩码的标记,
    • 0 表示已掩码的标记。

StableAudioDiTModel 前向方法。

set_attn_processor

< >

( processor: Union )

参数

  • processor (dict of AttentionProcessor or only AttentionProcessor) — 设置为所有Attention层的处理器的实例化 processor 类或 processor 类字典。

    如果processor是 dict,则键需要定义到相应的交叉注意力处理器的路径。在设置可训练的注意力处理器时,强烈建议这样做。

设置注意力处理器以用于计算注意力。

set_default_attn_processor

< >

( )

禁用自定义注意力处理器并设置默认注意力实施。

< > 在 GitHub 上更新