Buckets:
| # SD3ControlNetModel | |
| SD3ControlNetModel, Stable Diffusion 3 için ControlNet'in bir uygulamasıdır. | |
| ControlNet modeli, Lvmin Zhang, Anyi Rao ve Maneesh Agrawala tarafından [Adding Conditional Control to Text-to-Image Diffusion Models](https://huggingface.co/papers/2302.05543) makalesinde tanıtılmıştır. Kenar haritaları, derinlik haritaları, segmentasyon haritaları ve poz algılama için anahtar noktalar gibi ek girdiler üzerinde modeli koşullandırarak metinden görüntüye üretim üzerinde daha yüksek bir kontrol derecesi sağlar. | |
| Makalenin özeti şudur: | |
| *ControlNet'i sunuyoruz; bu, büyük, önceden eğitilmiş metinden görüntüye difüzyon modellerine uzamsal koşullandırma kontrolleri eklemek için tasarlanmış bir sinir ağı mimarisidir. ControlNet, üretim için hazır büyük difüzyon modellerini kilitler ve milyarlarca görüntüyle önceden eğitilmiş derin ve sağlam kodlama katmanlarını, çeşitli bir koşullu kontrol seti öğrenmek için güçlü bir omurga olarak yeniden kullanır. Sinir mimarisi, parametreleri sıfırdan kademeli olarak büyüten ve finetuning'i (ince ayar) etkileyebilecek zararlı gürültünün olmasını engelleyen "sıfır konvolüsyonlar" (sıfır başlatılmış konvolüsyon katmanları) ile bağlanır. Stable Diffusion ile tekil veya birden fazla koşul kullanarak, istemlerle (prompt) veya istemsiz olarak kenarlar, derinlik, segmentasyon, insan pozu gibi çeşitli koşullandırma kontrollerini test ediyoruz. ControlNet'lerin eğitiminin küçük (<50k) ve büyük (>1m) veri setleriyle sağlam olduğunu gösteriyoruz. Kapsamlı sonuçlar, ControlNet'in görüntü difüzyon modellerini kontrol etmek için daha geniş uygulamaları kolaylaştırabileceğini göstermektedir.* | |
| ## Orijinal formattan yükleme | |
| Varsayılan olarak [SD3ControlNetModel](/docs/diffusers/main/tr/api/models/controlnet_sd3#diffusers.SD3ControlNetModel), [from_pretrained()](/docs/diffusers/main/tr/api/models/overview#diffusers.ModelMixin.from_pretrained) ile yüklenmelidir. | |
| ```py | |
| from diffusers import StableDiffusion3ControlNetPipeline | |
| from diffusers.models import SD3ControlNetModel, SD3MultiControlNetModel | |
| controlnet = SD3ControlNetModel.from_pretrained("InstantX/SD3-Controlnet-Canny") | |
| pipe = StableDiffusion3ControlNetPipeline.from_pretrained("stabilityai/stable-diffusion-3-medium-diffusers", controlnet=controlnet) | |
| ``` | |
| ## SD3ControlNetModel[[diffusers.SD3ControlNetModel]] | |
| #### diffusers.SD3ControlNetModel[[diffusers.SD3ControlNetModel]] | |
| ```python | |
| diffusers.SD3ControlNetModel(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, extra_conditioning_channels: int = 0, dual_attention_layers: tuple = (), qk_norm: str | None = None, pos_embed_type: str | None = 'sincos', use_pos_embed: bool = True, force_zeros_for_pooled_projection: bool = True) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/controlnets/controlnet_sd3.py#L42) | |
| **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. | |
| extra_conditioning_channels (`int`, varsayılan `0`) : Yama gömme için koşullandırmada kullanılacak ek kanal sayısı. | |
| 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. | |
| pos_embed_type (`str`, varsayılan `"sincos"`) : Kullanılacak konumsal gömme türü. `"sincos"` ve `None` arasında seçim yapın. | |
| use_pos_embed (`bool`, varsayılan `True`) : Konumsal gömme kullanılıp kullanılmayacağı. | |
| force_zeros_for_pooled_projection (`bool`, varsayılan `True`) : Havuzlanmış projeksiyon gömme değerleri için sıfırların zorlanıp zorlanmayacağını belirtir. Bu, ControlNet modelinin yapılandırma değerini okuyarak pipeline'lar tarafından ele alınır. | |
| [Stable Diffusion 3](https://huggingface.co/papers/2403.03206) için ControlNet modeli. | |
| #### enable_forward_chunking[[diffusers.SD3ControlNetModel.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/controlnets/controlnet_sd3.py#L178) | |
| **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.SD3ControlNetModel.forward]] | |
| ```python | |
| forward(hidden_states: Tensor, controlnet_cond: Tensor, conditioning_scale: float = 1.0, encoder_hidden_states: Tensor = None, pooled_projections: Tensor = None, timestep: LongTensor = None, joint_attention_kwargs: dict[str, typing.Any] | None = None, return_dict: bool = True) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/controlnets/controlnet_sd3.py#L272) | |
| **Parametreler:** | |
| hidden_states (`torch.Tensor`, şekli `(batch size, channel, height, width)`) : Girdi `hidden_states`. | |
| controlnet_cond (`torch.Tensor`) : `(batch_size, sequence_length, hidden_size)` biçimindeki koşullu girdi tensörü. | |
| conditioning_scale (`float`, varsayılan `1.0`) : ControlNet çıktıları için ölçekleme faktörü. | |
| 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. | |
| 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. | |
| **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.SD3ControlNetModel.fuse_qkv_projections]] | |
| ```python | |
| fuse_qkv_projections() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/controlnets/controlnet_sd3.py#L208) | |
| 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.SD3ControlNetModel.unfuse_qkv_projections]] | |
| ```python | |
| unfuse_qkv_projections() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/controlnets/controlnet_sd3.py#L230) | |
| Etkinleştirilmişse birleşik QKV projeksiyonunu devre dışı bırakır. | |
| > [!WARNING] > Bu API 🧪 deneyseldir. | |
| ## SD3ControlNetOutput[[diffusers.models.controlnets.SD3ControlNetOutput]] | |
| #### diffusers.models.controlnets.SD3ControlNetOutput[[diffusers.models.controlnets.SD3ControlNetOutput]] | |
| ```python | |
| diffusers.models.controlnets.SD3ControlNetOutput(controlnet_block_samples: tuple) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/controlnets/controlnet_sd3.py#L38) | |
Xet Storage Details
- Size:
- 9.61 kB
- Xet hash:
- 152638b73cefa4fa463cf4d8d2cb20cfb50747da98c25d968f219d2eac3c011a
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.