Diffusers documentation

AceStepTransformer1DModel

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

AceStepTransformer1DModel

来自 ACE-Step 1.5 的一维扩散 Transformer,用于音乐生成。该模型基于 AutoencoderOobleck 生成的 25 Hz 立体声潜变量,采用流匹配(flow matching)机制,并使用源自 Qwen3 的骨干网络进行训练(包含分组查询注意力、旋转位置嵌入、RMSNorm 以及 AdaLN-Zero 时间步条件),同时通过交叉注意力机制处理由 AceStepConditionEncoder 构建的文本、歌词和音色条件。

AceStepTransformer1DModel

类 diffusers.AceStepTransformer1DModel

< >

( hidden_size: int = 2048intermediate_size: int = 6144num_hidden_layers: int = 24num_attention_heads: int = 16num_key_value_heads: int = 8head_dim: int = 128in_channels: int = 192audio_acoustic_hidden_dim: int = 64patch_size: int = 2rope_theta: float = 1000000.0attention_bias: bool = Falseattention_dropout: float = 0.0rms_norm_eps: float = 1e-06sliding_window: int = 128layer_types: typing.Optional[typing.List[str]] = Noneencoder_hidden_size: typing.Optional[int] = Noneis_turbo: bool = Falsemodel_version: typing.Optional[str] = None )

用于 ACE-Step 1.5 音乐生成的 Diffusion Transformer。

根据文本、歌词和音色生成音频潜变量。使用一维补丁嵌入(步长为 patch_size 的 Conv1d),随后是一组 AceStepTransformerBlock,其自注意力分支交替使用滑动窗口注意力和全局注意力。交叉注意力消耗由 AceStepConditionEncoder 生成的打包 encoder_hidden_states。

forward

< >

( hidden_states: Tensortimestep: Tensortimestep_r: Tensorencoder_hidden_states: Tensorcontext_latents: Tensorattention_kwargs: typing.Optional[dict] = Nonereturn_dict: bool = True ) → Transformer2DModelOutput or tuple

参数

  • hidden_states(形状为 (batch_size, seq_len, channels) 的 torch.Tensor)— 扩散过程的含噪潜在输入。
  • timestep (torch.Tensor,形状为 (batch_size,)) — 当前扩散时间步 t。
  • timestep_r (torch.Tensor,形状为 (batch_size,)) — 参考时间步 r(在标准推理中设置为与 t 相等)。
  • encoder_hidden_states (torch.Tensor,形状为 (batch_size, encoder_seq_len, hidden_size)) — 来自条件编码器(文本 + 歌词 + 音色)的条件嵌入。
  • context_latents(形状为 (batch_size, seq_len, context_dim) 的 torch.Tensor)— 上下文潜在变量(源潜在变量与块掩码的拼接)— 与 hidden_states 一起输入到 patchify 卷积中。
  • attention_kwargs (dict, 可选) — 传递给 AttentionProcessor 的 kwargs 字典。用于通过 {"scale": float} 传递 LoRA 缩放值。
  • return_dict (bool,默认为 True) — 是否返回 Transformer2DModelOutput 或普通元组。

返回值

Transformer2DModelOutput 或 tuple

预测的速度场。

AceStepTransformer1DModel 的前向方法。

Update on GitHub