Buckets:
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:
- Kendine dikkat — döner konum gömme (RoPE) ile diferansiyel çok başlı dikkat.
- Cross-attention — T5Gemma metin kodlayıcısından gelen token dizisine dikkat eder.
- İ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)
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_embedtarafından projekte edilir. - Küresel süre gömme (
global_hidden_states),to_global_embedtarafından yansıtılır, zaman adımı gömmesiyle toplanır ve ardındanglobal_cond_embeddertarafından blok başına AdaLN modülasyonuna genişletilir. local_add_cond(inpainting),to_local_embedtarafı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)
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)
Tek SA3 DiT dönüştürücü bloğu.
İşlem sırası:
- AdaLN-modüleli öz-dikkat (kısmi RoPE, RMS QK-norm)
- Metin/süre bağlamına çapraz dikkat (sade RMS ön-norm)
- 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)
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.