# StableAudioDiTModel

Model Transformer untuk gelombang audio dari [Stable Audio Open](https://huggingface.co/papers/2407.14358).

## StableAudioDiTModel[[diffusers.StableAudioDiTModel]]

#### diffusers.StableAudioDiTModel[[diffusers.StableAudioDiTModel]]

```python
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)
```

[Sumber](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/stable_audio_transformer.py#L183)

**Parameter:**

sample_size ( `int`, *opsional*, defaultnya 1024) : Ukuran sampel input.

in_channels (`int`, *opsional*, defaultnya 64) : Jumlah channel pada input.

num_layers (`int`, *opsional*, defaultnya 24) : Jumlah lapisan blok Transformer yang akan digunakan.

attention_head_dim (`int`, *opsional*, defaultnya 64) : Jumlah channel di setiap head.

num_attention_heads (`int`, *opsional*, defaultnya 24) : Jumlah kepala yang digunakan untuk keadaan query.

num_key_value_attention_heads (`int`, *opsional*, default 12) : Jumlah kepala yang digunakan untuk state kunci dan nilai.

out_channels (`int`, defaultnya 64) : Jumlah saluran output.

cross_attention_dim ( `int`, *opsional*, defaultnya 768) : Dimensi dari proyeksi cross-attention.

time_proj_dim ( `int`, *opsional*, default 256) : Dimensi dari proyeksi internal timestep.

global_states_input_dim ( `int`, *opsional*, default 1536) : Dimensi input dari proyeksi keadaan tersembunyi global.

cross_attention_input_dim ( `int`, *opsional*, defaultnya 768) : Dimensi input dari proyeksi cross-attention

Model Diffusion Transformer yang diperkenalkan dalam Stable Audio.

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

#### forward[[diffusers.StableAudioDiTModel.forward]]

```python
forward(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: typing.Optional[torch.LongTensor] = None, encoder_attention_mask: typing.Optional[torch.LongTensor] = None)
```

[Sumber](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/stable_audio_transformer.py#L282)

**Parameter:**

hidden_states (`torch.FloatTensor` dengan bentuk `(batch size, in_channels, sequence_len)`) : Input `hidden_states`.

timestep ( `torch.LongTensor`) : Digunakan untuk menunjukkan langkah denoising.

encoder_hidden_states (`torch.FloatTensor` dengan bentuk `(batch size, encoder_sequence_len, cross_attention_input_dim)`) : Embeddings kondisional (embeddings yang dihitung dari kondisi input seperti prompts) yang akan digunakan.

global_hidden_states (`torch.FloatTensor` dengan bentuk `(batch size, global_sequence_len, global_states_input_dim)`) : Embedding global yang akan ditambahkan di depan hidden states.

rotary_embedding (`torch.Tensor`) : Embedding rotasi yang diterapkan pada tensor query dan key selama perhitungan attention.

return_dict (`bool`, *opsional*, defaultnya `True`) : Apakah akan mengembalikan `~models.transformer_2d.Transformer2DModelOutput` alih-alih tuple biasa.

attention_mask (`torch.Tensor` dengan bentuk `(batch_size, sequence_len)`, *opsional*) : Mask untuk menghindari pelaksanaan perhatian pada indeks token padding, yang dibentuk dengan menggabungkan mask perhatian untuk kedua encoder teks. Nilai mask yang dipilih dalam `[0, 1]`: - 1 untuk token yang **tidak dimask**, - 0 untuk token yang **dimask**.

encoder_attention_mask (`torch.Tensor` dengan bentuk `(batch_size, sequence_len)`, *opsional*) : Mask untuk menghindari pelaksanaan perhatian pada indeks cross-attention token padding, yang dibentuk dengan menggabungkan mask perhatian untuk kedua encoder teks. Nilai mask yang dipilih dalam `[0, 1]`: - 1 untuk token yang **tidak dimask**, - 0 untuk token yang **dimask**.

**Mengembalikan:**

Jika `return_dict` bernilai True, sebuah `~models.transformer_2d.Transformer2DModelOutput` akan dikembalikan, selain itu sebuah `tuple` di mana elemen pertama adalah tensor sampel.

Metode forward dari [StableAudioDiTModel](/docs/diffusers/main/id/api/models/stable_audio_transformer#diffusers.StableAudioDiTModel).

#### set_default_attn_processor[[diffusers.StableAudioDiTModel.set_default_attn_processor]]

```python
set_default_attn_processor()
```

[Sumber](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/stable_audio_transformer.py#L276)

Menonaktifkan prosesor perhatian kustom dan mengatur implementasi perhatian default.

