Buckets:

hf-doc-build/doc / diffusers /main /tr /api /models /sd3_transformer2d.md
mishig's picture
|
download
raw
6.31 kB
# SD3 Dönüştürücü Modeli
[Stable Diffusion 3](https://hf.co/papers/2403.03206)'te tanıtılan Transformer modeli. Yeniliği, MMDiT transformer bloğunda yatar.
## SD3Transformer2DModel[[diffusers.SD3Transformer2DModel]]
#### diffusers.SD3Transformer2DModel[[diffusers.SD3Transformer2DModel]]
```python
diffusers.SD3Transformer2DModel(sample_size: int = 128, patch_size: int = 2, in_channels: int = 16, num_layers: int = 18, attention_head_dim: int = 64, num_attention_heads: int = 18, joint_attention_dim: int = 4096, caption_projection_dim: int = 1152, pooled_projection_dim: int = 2048, out_channels: int = 16, pos_embed_max_size: int = 96, dual_attention_layers: tuple = (), qk_norm: str | None = None)
```
[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/transformer_sd3.py#L79)
**Parametreler:**
sample_size (`int`, varsayılan `128`) : Latentlerin genişlik/yüksekliği. Bu, pozisyon gömme sayısını öğrenmek için kullanıldığından eğitim sırasında sabittir.
patch_size (`int`, varsayılan `2`) : Girdi verisini küçük yamalar (patch) haline getirmek için kullanılan yama boyutu.
in_channels (`int`, varsayılan `16`) : Girdideki gizli kanal sayısı.
num_layers (`int`, varsayılan `18`) : Kullanılacak transformer bloğu katman sayısı.
attention_head_dim (`int`, varsayılan `64`) : Her baştaki kanal sayısı.
num_attention_heads (`int`, varsayılan `18`) : Çok başlı dikkat için kullanılacak baş sayısı.
joint_attention_dim (`int`, varsayılan `4096`) : Ortak metin-görsel dikkati için kullanılacak gömme boyutu.
caption_projection_dim (`int`, varsayılan `1152`) : Başlık gömme vektörlerinin gömme boyutu.
pooled_projection_dim (`int`, varsayılan `2048`) : Havuzlanmış metin projeksiyonlarının gömme boyutu.
out_channels (`int`, varsayılan `16`) : Çıktıdaki gizli kanal sayısı.
pos_embed_max_size (`int`, varsayılan `96`) : Konumsal gömme (positional embeddings) için en yüksek gizli (latent) yükseklik/genişlik.
dual_attention_layers (`tuple[int, ...]`, varsayılan `()`) : Kullanılacak çift akışlı dönüştürücü bloklarının sayısı.
qk_norm (`str`, *isteğe bağlı*, varsayılan `None`) : Dikkat katmanında sorgu ve anahtar için kullanılacak normalizasyon. `None` ise normalizasyon kullanılmaz.
[Stable Diffusion 3](https://huggingface.co/papers/2403.03206)'te tanıtılan Transformer modeli.
#### enable_forward_chunking[[diffusers.SD3Transformer2DModel.enable_forward_chunking]]
```python
enable_forward_chunking(chunk_size: int | None = None, dim: int = 0)
```
[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/transformer_sd3.py#L175)
**Parametreler:**
chunk_size (`int`, *opsiyonel*) : Feed-forward katmanlarının parça boyutu. Belirtilmezse, feed-forward katmanı `dim` boyutlu her tensör üzerinde ayrı ayrı çalıştırılır.
dim (`int`, *isteğe bağlı*, varsayılan `0`) : Feed-forward hesaplamanın parçalanacağı boyut. dim=0 (batch) veya dim=1 (sequence length) arasında seçim yapın.
Dikkat işleyicisini [feed forward chunking](https://huggingface.co/blog/reformer#2-chunked-feed-forward-layers) kullanacak şekilde ayarlar.
#### forward[[diffusers.SD3Transformer2DModel.forward]]
```python
forward(hidden_states: Tensor, encoder_hidden_states: Tensor = None, pooled_projections: Tensor = None, timestep: LongTensor = None, block_controlnet_hidden_states: list = None, joint_attention_kwargs: dict[str, typing.Any] | None = None, return_dict: bool = True, skip_layers: list[int] | None = None)
```
[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/transformer_sd3.py#L248)
**Parametreler:**
hidden_states (`torch.Tensor`, şekli `(batch size, channel, height, width)`) : Girdi `hidden_states`.
encoder_hidden_states (`torch.Tensor`, şekli `(batch size, sequence_len, embed_dims)`) : Kullanılacak koşullu gömlemeler (giriş koşullarından, örneğin istemlerden hesaplanan gömlemeler).
pooled_projections (`torch.Tensor`, şekli `(batch_size, projection_dim)`) : Girdi koşullarının gömülme değerlerinden yansıtılan gömülme değerleri.
timestep (`torch.LongTensor`) : Gürültü azaltma adımını belirtmek için kullanılır.
block_controlnet_hidden_states (`list` of `torch.Tensor`) : Belirtilirse, transformer bloklarının artıklarına eklenen tensörlerin listesi.
joint_attention_kwargs (`dict`, *isteğe bağlı*) : Belirtilirse, [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py) içinde `self.processor` altında tanımlanan `AttentionProcessor`'a iletilen bir kwargs sözlüğü.
return_dict (`bool`, *isteğe bağlı*, varsayılan `True`) : Düz bir tuple yerine `~models.transformer_2d.Transformer2DModelOutput` döndürülüp döndürülmediğini belirtir.
skip_layers (`list` of `int`, *opsiyonel*) : İleri geçiş sırasında atlanacak katman indekslerinin listesi.
**Dönüş:**
`return_dict` True ise, `~models.transformer_2d.Transformer2DModelOutput` döndürülür, aksi takdirde ilk öğesi örnek tensörü olan bir `tuple` döndürülür.
[SD3Transformer2DModel](/docs/diffusers/main/tr/api/models/sd3_transformer2d#diffusers.SD3Transformer2DModel) ileri yöntemi.
#### fuse_qkv_projections[[diffusers.SD3Transformer2DModel.fuse_qkv_projections]]
```python
fuse_qkv_projections()
```
[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/transformer_sd3.py#L217)
Füzyonlu QKV projeksiyonlarını etkinleştirir. Kendi dikkat (self-attention) modülleri için tüm projeksiyon matrisleri (yani sorgu, anahtar, değer) füzyonlanır. Çapraz dikkat (cross-attention) modülleri için anahtar ve değer projeksiyon matrisleri füzyonlanır.
> [!WARNING] > Bu API 🧪 deneyseldir.
#### unfuse_qkv_projections[[diffusers.SD3Transformer2DModel.unfuse_qkv_projections]]
```python
unfuse_qkv_projections()
```
[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/transformer_sd3.py#L239)
Etkinleştirilmişse birleşik QKV projeksiyonunu devre dışı bırakır.
> [!WARNING] > Bu API 🧪 deneyseldir.

Xet Storage Details

Size:
6.31 kB
·
Xet hash:
9af3808e8fe8ffa65a347d3660ca0738539331b502e6e228bbcb6da467e2244d

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