Buckets:

hf-doc-build/doc / diffusers /main /tr /api /models /stable_audio_3_transformer.md
mishig's picture
|
download
raw
7.02 kB

StableAudio3DiTModel

Ses üretimi için kullanılan, düzeltilmiş akış hız tahmini tabanlı bir Difüzyon Transformer'ı (DiT), Stable Audio 3'te kullanılır.

Her StableAudio3DiTBlock şu işlemleri gerçekleştirir:

  1. Kendine dikkat — döner konum gömme (RoPE) ile diferansiyel çok başlı dikkat.
  2. Cross-attention — T5Gemma metin kodlayıcısından gelen token dizisine dikkat eder.
  3. İleri beslemeli — SwiGLU projeksiyonu.

Model, timestep (üstel Fourier özellikleri → doğrusal projeksiyon) ve global koşullandırma vektörü (StableAudio3DurationEmbedder'den süre gömme) ile koşullandırılır.

StableAudio3DiTModel[[diffusers.StableAudio3DiTModel]]

diffusers.StableAudio3DiTModel[[diffusers.StableAudio3DiTModel]]

diffusers.StableAudio3DiTModel(io_channels: int = 256, patch_size: int = 1, embed_dim: int = 1536, depth: int = 24, num_heads: int = 24, cond_token_dim: int = 768, global_cond_dim: int = 768, local_add_cond_dim: int = 257, timestep_features_dim: int = 256, ff_mult: float = 4.0, num_memory_tokens: int = 64, use_differential_attention: bool = True)

Kaynak

Parametreler:

io_channels (int, varsayılan 256) : Gizli kanal sayısı.

patch_size (int, varsayılan 1) : Transformer'dan önce uygulanan zamansal yama boyutu.

embed_dim (int, varsayılan 1536) : Transformer gizli boyutu.

depth (int, varsayılan 24) : StableAudio3DiTBlock katmanlarının sayısı.

num_heads (int, varsayılan 24) : Dikkat başlarının sayısı.

cond_token_dim (int, varsayılan 768) : Çapraz dikkat bağlam belirteçlerinin boyutu.

global_cond_dim (int, varsayılan 768) : Küresel süre gömme boyutu.

local_add_cond_dim (int, varsayılan 257) : Yerel-eklemeli (inpaint) tensörünün kanalları.

timestep_features_dim (int, varsayılan 256) : Fourier zaman adımlı özelliklerinin çıktı boyutu.

ff_mult (float, varsayılan 4.0) : SwiGLU ileri besleme genişleme çarpanı.

num_memory_tokens (int, varsayılan 64) : Öğrenilebilir bellek jetonlarının sayısı.

use_differential_attention (bool, varsayılan True) : Farklı öz/karşı dikkati etkinleştirir.

Stable Audio 3'ün Diffusion Transformer (DiT) omurgası.

Model, gürültülü ses latentleri bir partisini, skaler bir zaman adımını, çapraz-dikkat bağlamını (projeksiyonlanmış metin ve süre token'ları) ve küresel bir süre gömme değerini alır ve hız alanını (rectified-flow hedefi) tahmin eder.

Koşullandırma:

  • Çapraz dikkat bağlamı (encoder_hidden_states), to_cond_embed tarafından projekte edilir.
  • Küresel süre gömme (global_hidden_states), to_global_embed tarafından yansıtılır, zaman adımı gömmesiyle toplanır ve ardından global_cond_embedder tarafından blok başına AdaLN modülasyonuna genişletilir.
  • local_add_cond (inpainting), to_local_embed tarafından blok bazında projekte edilir.

num_memory_tokens öğrenilebilir token, transformer içinde ses dizisinin başına eklenir ve çıktı projeksiyonundan önce kaldırılır.

forward[[diffusers.StableAudio3DiTModel.forward]]

forward(hidden_states: Tensor, timestep: Tensor, encoder_hidden_states: Tensor, global_hidden_states: Tensor, encoder_attention_mask: typing.Optional[torch.Tensor] = None, local_add_cond: typing.Optional[torch.Tensor] = None, return_dict: bool = True)

Kaynak

Parametreler:

hidden_states (torch.Tensor) : Gürültülü latent ses (batch, io_channels, T).

timestep (torch.Tensor) : [0, 1] aralığında (batch,) boyutlu difüzyon zaman adımı.

encoder_hidden_states (torch.Tensor) : Çapraz dikkat bağlamı (batch, T_ctx, cond_token_dim).

global_hidden_states (torch.Tensor) : Küresel süre gömme (batch, global_cond_dim).

encoder_attention_mask (torch.Tensor, isteğe bağlı) : Bool maskesi (batch, T_ctx), True = geçerli.

local_add_cond (torch.Tensor, isteğe bağlı) : Yerel-eklemeli (inpaint) koşullandırma (batch, local_add_cond_dim, T).

return_dict (bool, varsayılan True) : StableAudio3DiTModelOutput döndürülüp döndürülmemesi.

Dönüş: StableAudio3DiTModelOutput veya tuple

tahmin edilen hız alanı, hidden_states ile aynı şekle sahip.

StableAudio3DiTBlock[[diffusers.models.transformers.transformer_stable_audio3.StableAudio3DiTBlock]]

diffusers.models.transformers.transformer_stable_audio3.StableAudio3DiTBlock[[diffusers.models.transformers.transformer_stable_audio3.StableAudio3DiTBlock]]

diffusers.models.transformers.transformer_stable_audio3.StableAudio3DiTBlock(dim: int, context_dim: int, dim_heads: int = 64, use_differential: bool = True, ff_mult: float = 4.0, local_add_cond_dim: int = 257)

Kaynak

Tek SA3 DiT dönüştürücü bloğu.

İşlem sırası:

  1. AdaLN-modüleli öz-dikkat (kısmi RoPE, RMS QK-norm)
  2. Metin/süre bağlamına çapraz dikkat (sade RMS ön-norm)
  3. AdaLN-modüleli SwiGLU ileri beslemeli

AdaLN modülasyonu to_scale_shift_gate + global_modulation şeklindedir ve altı parçaya (scale_attn, shift_attn, gate_attn, scale_ff, shift_ff, gate_ff) ayrılır. Her kapılı dal sigmoid(1 - gate) ile ölçeklenir. Çapraz dikkat (cross-attention) AdaLN ile modüle edilmez; bu durum referansla uyumludur (cross_attend_norm düz bir RMS normdur).

local_seq sağlandığında (inpainting), to_local_embed tarafından blok bazında projekte edilir ve çapraz dikkat sonrası (ve ileri besleme öncesi) artımsal akıştaki ses konumlarına eklenir; bu, referansla uyumludur.

StableAudio3DiTModelOutput[[diffusers.models.transformers.transformer_stable_audio3.StableAudio3DiTModelOutput]]

diffusers.models.transformers.transformer_stable_audio3.StableAudio3DiTModelOutput[[diffusers.models.transformers.transformer_stable_audio3.StableAudio3DiTModelOutput]]

diffusers.models.transformers.transformer_stable_audio3.StableAudio3DiTModelOutput(sample: Tensor)

Kaynak

Parametreler:

sample (torch.Tensor) : Girdi hidden_states ile aynı şekle sahip tahmini hız alanı.

StableAudio3DiTModel'ün çıktısı.

Xet Storage Details

Size:
7.02 kB
·
Xet hash:
b048cf4e9fad76cae65b2156ca4b7a9ec951c28230891aaafdee5d1fe57cd1e5

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.