Buckets:
| # Modeller | |
| 🤗 Diffusers, popüler algoritmalar için önceden eğitilmiş modeller ve özel difüzyon sistemleri oluşturmak için modüller sağlar. Modellerin ana işlevi, \\(p_{\theta}(x_{t-1}|x_{t})\\) dağılımı tarafından modellenen bir girdi örneğinin gürültüsünü azaltmaktır. | |
| Tüm modeller, yerel olarak ve Hugging Face Hub'dan modellerin kaydedilmesi ve yüklenmesi için temel işlevselliği sağlayan [`torch.nn.Module`](https://pytorch.org/docs/stable/generated/torch.nn.Module.html) olan temel [ModelMixin](/docs/diffusers/main/tr/api/models/overview#diffusers.ModelMixin) sınıfından oluşturulur. | |
| ## ModelMixin[[diffusers.ModelMixin]] | |
| #### diffusers.ModelMixin[[diffusers.ModelMixin]] | |
| ```python | |
| diffusers.ModelMixin() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L243) | |
| Tüm modellerin temel sınıfı. | |
| [ModelMixin](/docs/diffusers/main/tr/api/models/overview#diffusers.ModelMixin), model yapılandırmasının depolanmasından sorumlu olup modelleri yükleme, indirme ve kaydetme yöntemleri sağlar. | |
| - **config_name** (`str`) -- [save_pretrained()](/docs/diffusers/main/tr/api/models/overview#diffusers.ModelMixin.save_pretrained) çağrıldığında bir modelin kaydedileceği dosya adı. | |
| #### compile_repeated_blocks[[diffusers.ModelMixin.compile_repeated_blocks]] | |
| ```python | |
| compile_repeated_blocks(*args, **kwargs) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L1678) | |
| Bir modelin yalnızca sık tekrarlanan alt modüllerini (ör. Transformer katmanları) *derler*, tüm modeli derlemez. Bu teknik—genellikle **bölgesel derleme** olarak adlandırılır (PyTorch tarifi: https://docs.pytorch.org/tutorials/recipes/regional_compilation.html)—tam bir `torch.compile`'den beklenen çalışma zamanı hızlandırmalarını korurken uçtan uca derleme süresini önemli ölçüde azaltabilir. | |
| Derlenecek alt modüllerin kümesi, model tanımındaki **`_repeated_blocks`** özniteliğinin varlığıyla belirlenir. Bu özniteliği, model alt sınıfınızda sınıf adlarının (dizelerin) bir listesi/tuplü olarak tanımlayın. Sınıf adı eşleşen her modül derlenecektir. | |
| Keşfedildikten sonra, her eşleşen alt modül `submodule.compile(*args, **kwargs)` çağrılarak derlenir. `compile_repeated_blocks` fonksiyonuna sağladığınız konumsal veya anahtar kelime argümanları, `torch.compile` fonksiyonuna olduğu gibi aktarılır. | |
| #### cuda[[diffusers.ModelMixin.cuda]] | |
| ```python | |
| cuda(*args, **kwargs) | |
| ``` | |
| Noktalı bir yol için sahte bir değer (ör. `torch.float32`): öznitelik erişim zincirleri, çağrılar geçiş (pass-through) dekoratörleri gibi davranır, `repr` noktalı yoldur ve bir taban sınıf olarak kullanıldığında düz bir `type` tabanı yerine geçer (PEP 560 `__mro_entries__`), böylece gerçek alt sınıflar normal bir meta sınıfı korur ve `inspect.signature` sahtenin yerine gerçek `__init__` değerlerini okur. | |
| #### dequantize[[diffusers.ModelMixin.dequantize]] | |
| ```python | |
| dequantize() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L894) | |
| Eğer model, dequantizasyonu destekleyen bir kuantizasyon yöntemiyle kuantize edilmişse, modelin dequantize edilmesini potansiyel olarak gerçekleştirin. | |
| #### disable_gradient_checkpointing[[diffusers.ModelMixin.disable_gradient_checkpointing]] | |
| ```python | |
| disable_gradient_checkpointing() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L327) | |
| Mevcut model için gradyan denetleme noktasını devre dışı bırakır (diğer çerçevelerde *aktivasyon denetleme noktası* veya *aktivasyon denetleme noktaları* olarak da adlandırılabilir). | |
| #### disable_npu_flash_attention[[diffusers.ModelMixin.disable_npu_flash_attention]] | |
| ```python | |
| disable_npu_flash_attention() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L358) | |
| torch_npu'dan npu flash attention'ı devre dışı bırak | |
| #### disable_xformers_memory_efficient_attention[[diffusers.ModelMixin.disable_xformers_memory_efficient_attention]] | |
| ```python | |
| disable_xformers_memory_efficient_attention() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L441) | |
| [xFormers](https://facebookresearch.github.io/xformers/) için bellek verimli dikkati devre dışı bırakın. | |
| #### disable_xla_flash_attention[[diffusers.ModelMixin.disable_xla_flash_attention]] | |
| ```python | |
| disable_xla_flash_attention() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L388) | |
| torch_xla için flash attention pallals çekirdeğini devre dışı bırakın. | |
| #### enable_gradient_checkpointing[[diffusers.ModelMixin.enable_gradient_checkpointing]] | |
| ```python | |
| enable_gradient_checkpointing(gradient_checkpointing_func: typing.Optional[typing.Callable] = None) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L297) | |
| **Parametreler:** | |
| gradient_checkpointing_func (`Callable`, *isteğe bağlı*) : Gradyan denetleme noktası için kullanılacak işlev. `None` ise, varsayılan PyTorch denetleme noktası işlevi kullanılır (`torch.utils.checkpoint.checkpoint`). | |
| Mevcut model için gradyan denetleme noktasını etkinleştirir (diğer çerçevelerde *aktivasyon denetleme noktası* veya *aktivasyon denetleme noktaları* olarak da adlandırılabilir). | |
| #### enable_group_offload[[diffusers.ModelMixin.enable_group_offload]] | |
| ```python | |
| enable_group_offload(onload_device: device, offload_device: device = torch.device(), offload_type: str = 'block_level', num_blocks_per_group: int | None = None, non_blocking: bool = False, use_stream: bool = False, record_stream: bool = False, low_cpu_mem_usage = False, offload_to_disk_path: str | None = None, block_modules: str | None = None, exclude_kwargs: str | None = None) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L532) | |
| Mevcut model için grup boşaltmayı etkinleştirir. | |
| Daha fazla bilgi için [apply_group_offloading()](/docs/diffusers/main/tr/api/utilities#diffusers.hooks.apply_group_offloading) bölümüne bakın. | |
| Örnek: | |
| ```python | |
| >>> from diffusers import CogVideoXTransformer3DModel | |
| >>> transformer = CogVideoXTransformer3DModel.from_pretrained( | |
| ... "THUDM/CogVideoX-5b", subfolder="transformer", torch_dtype=torch.bfloat16 | |
| ... ) | |
| >>> transformer.enable_group_offload( | |
| ... onload_device=torch.device("cuda"), | |
| ... offload_device=torch.device("cpu"), | |
| ... offload_type="leaf_level", | |
| ... use_stream=True, | |
| ... ) | |
| ``` | |
| #### enable_layerwise_casting[[diffusers.ModelMixin.enable_layerwise_casting]] | |
| ```python | |
| enable_layerwise_casting(storage_dtype: dtype = torch.float8_e4m3fn, compute_dtype: typing.Optional[torch.dtype] = None, skip_modules_pattern: tuple[str, ...] | None = None, skip_modules_classes: tuple[typing.Type[torch.nn.Module], ...] | None = None, non_blocking: bool = False) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L447) | |
| **Parametreler:** | |
| storage_dtype (`torch.dtype`) : Modelin depolama için dönüştürülmesi gereken dtype. | |
| compute_dtype (`torch.dtype`) : İleri geçiş sırasında model ağırlıklarının dönüştürüleceği dtype. | |
| skip_modules_pattern (`tuple[str, ...]`, *isteğe bağlı*) : Katman bazlı dökümleme işlemi sırasında atlanacak modül adlarını eşleştirmek için desenlerin listesi. `None` olarak ayarlanırsa, modüllerin ve PEFT katmanlarının belirli iç katmanlarını yok saymak için varsayılan atlama desenleri kullanılır. | |
| skip_modules_classes (`tuple[Type[torch.nn.Module], ...]`, *isteğe bağlı*) : Katman bazlı dökümleme işlemi sırasında atlanacak modül sınıflarının listesi. | |
| non_blocking (`bool`, *isteğe bağlı*, varsayılan `False`) : `True` ise, ağırlık dönüştürme işlemleri engellenmez. | |
| Mevcut model için katman bazlı dökümlemeyi etkinleştirir. | |
| Katman bazlı dönüştürme (casting), model ağırlıklarını depolama için daha düşük hassasiyetli bir veri türüne (dtype) dönüştüren, ancak hesaplama sırasında bunları anlık olarak daha yüksek hassasiyetli bir veri türüne yükselten bir tekniktir. Bu işlem, model ağırlıklarından kaynaklanan bellek kullanımını önemli ölçüde azaltabilir, ancak çıktılarda bazı kalite düşüşlerine yol açabilir. Çoğu düşüş ihmal edilebilir düzeydedir ve büyük ölçüde normalizasyon ve modülasyon katmanlarındaki ağırlık dönüştürmesinden kaynaklanır. | |
| Varsayılan olarak, diffusers'taki modellerin çoğu, yama gömme, konumsal gömme ve normalizasyon katmanlarını yok saymak için `_skip_layerwise_casting_patterns` özniteliğini ayarlar. Bunun nedeni, bu katmanların kalite açısından büyük olasılıkla hassasiyet açısından kritik olmasıdır. Bu davranışı değiştirmek isterseniz, `_skip_layerwise_casting_patterns` özniteliğini `None` olarak ayarlayabilir veya [apply_layerwise_casting()](/docs/diffusers/main/tr/api/utilities#diffusers.hooks.apply_layerwise_casting) fonksiyonunu özel argümanlarla çağırabilirsiniz. | |
| Örnek: | |
| [enable_layerwise_casting()](/docs/diffusers/main/tr/api/models/overview#diffusers.ModelMixin.enable_layerwise_casting) kullanılarak: | |
| ```python | |
| >>> from diffusers import CogVideoXTransformer3DModel | |
| >>> transformer = CogVideoXTransformer3DModel.from_pretrained( | |
| ... "THUDM/CogVideoX-5b", subfolder="transformer", torch_dtype=torch.bfloat16 | |
| ... ) | |
| >>> # Enable layerwise casting via the model, which ignores certain modules by default | |
| >>> transformer.enable_layerwise_casting(storage_dtype=torch.float8_e4m3fn, compute_dtype=torch.bfloat16) | |
| ``` | |
| #### enable_npu_flash_attention[[diffusers.ModelMixin.enable_npu_flash_attention]] | |
| ```python | |
| enable_npu_flash_attention() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L351) | |
| torch_npu'dan npu flash attention'ı etkinleştirin | |
| #### enable_xformers_memory_efficient_attention[[diffusers.ModelMixin.enable_xformers_memory_efficient_attention]] | |
| ```python | |
| enable_xformers_memory_efficient_attention(attention_op: typing.Optional[typing.Callable] = None) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L409) | |
| **Parametreler:** | |
| attention_op (`Callable`, *isteğe bağlı*) : xFormers'in [`memory_efficient_attention()`](https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.memory_efficient_attention) fonksiyonunda `op` argümanı olarak kullanılmak üzere varsayılan `None` operatörünü geçersiz kılar. | |
| [xFormers](https://facebookresearch.github.io/xformers/) ile bellek verimli dikkati etkinleştirin. | |
| Bu seçenek etkinleştirildiğinde, GPU bellek kullanımının daha düşük olduğunu ve çıkarım sırasında olası bir hızlanma gözlemlemelisiniz. Eğitim sırasında hızlanma garanti edilmez. | |
| > [!WARNING] > ⚠️ Hem memory efficient attention hem de sliced attention etkinleştirildiğinde, memory efficient | |
| attention, > önceliğine sahiptir. | |
| Örnekler: | |
| ```py | |
| >>> import torch | |
| >>> from diffusers import UNet2DConditionModel | |
| >>> from xformers.ops import MemoryEfficientAttentionFlashAttentionOp | |
| >>> model = UNet2DConditionModel.from_pretrained( | |
| ... "stabilityai/stable-diffusion-2-1", subfolder="unet", torch_dtype=torch.float16 | |
| ... ) | |
| >>> model = model.to("cuda") | |
| >>> model.enable_xformers_memory_efficient_attention(attention_op=MemoryEfficientAttentionFlashAttentionOp) | |
| ``` | |
| #### enable_xla_flash_attention[[diffusers.ModelMixin.enable_xla_flash_attention]] | |
| ```python | |
| enable_xla_flash_attention(partition_spec: typing.Optional[typing.Callable] = None, **kwargs) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L382) | |
| torch_xla için flash attention pallals çekirdeğini etkinleştirin. | |
| #### from_pretrained[[diffusers.ModelMixin.from_pretrained]] | |
| ```python | |
| from_pretrained(pretrained_model_name_or_path: str | os.PathLike | None, **kwargs) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L906) | |
| **Parametreler:** | |
| pretrained_model_name_or_path (`str` veya `os.PathLike`, *isteğe bağlı*) : Şunlardan biri olabilir: - Hub'da barındırılan önceden eğitilmiş bir modelin *model kimliği* (örneğin `google/ddpm-celebahq-256`) olan bir dize. - [save_pretrained()](/docs/diffusers/main/tr/api/models/overview#diffusers.ModelMixin.save_pretrained) ile kaydedilmiş model ağırlıklarını içeren bir *dizin* yolu (örneğin `./my_model_directory`). | |
| cache_dir (`str | os.PathLike`, *isteğe bağlı*) : Standart önbellek kullanılmıyorsa, indirilen önceden eğitilmiş model yapılandırmasının önbelleğe alındığı dizinin yolu. | |
| dtype (`torch.dtype`, *isteğe bağlı*) : Varsayılan `torch.dtype` değerini geçersiz kılar ve modeli başka bir dtype ile yükler. | |
| force_download (`bool`, *isteğe bağlı*, varsayılan `False`) : Model ağırlıklarının ve yapılandırma dosyalarının (yeniden) indirilmesinin zorlanıp zorlanmayacağını belirler; önbellekteki sürümler varsa bunların üzerine yazar. | |
| proxies (`dict[str, str]`, *isteğe bağlı*) : Protokol veya uç nokta bazında kullanılacak vekil sunucuların sözlüğü, örneğin `{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}`. Vekiller her istekte kullanılır. | |
| output_loading_info (`bool`, *isteğe bağlı*, varsayılan `False`) : Eksik anahtarlar, beklenmeyen anahtarlar ve hata mesajlarını içeren bir sözlüğün de döndürülüp döndürülmeyeceğini belirtir. | |
| local_files_only(`bool`, *isteğe bağlı*, varsayılan `False`) : Yalnızca yerel model ağırlıklarının ve yapılandırma dosyalarının yüklenip yüklenmeyeceğini belirtir. `True` olarak ayarlanırsa, model Hub'dan indirilmez. | |
| token (`str` veya *bool*, *isteğe bağlı*) : Uzaktaki dosyalar için HTTP bearer yetkilendirmesi olarak kullanılacak jeton. `True` ise, `diffusers-cli login` ile oluşturulan jeton (`~/.huggingface` içinde saklanır) kullanılır. | |
| revision (`str`, *isteğe bağlı*, varsayılan `"main"`) : Kullanılacak belirli model sürümü. Bir dal adı, etiket adı, commit kimliği veya Git tarafından izin verilen herhangi bir tanımlayıcı olabilir. | |
| subfolder (`str`, *isteğe bağlı*, varsayılan `""`) : Hub'da veya yerel olarak daha büyük bir model deposu içindeki bir model dosyasının alt klasör konumu. | |
| mirror (`str`, *isteğe bağlı*) : Çin'de bir model indiriyorsanız erişilebilirlik sorunlarını çözmek için ayna kaynağı. Kaynağın güncelliğini veya güvenliğini garanti etmiyoruz; daha fazla bilgi için ayna sitesine başvurmalısınız. | |
| device_map (`int | str | torch.device` veya `dict[str, int | str | torch.device]`, *isteğe bağlı*) : Her alt modülün nereye gönderileceğini belirten bir eşleme. Her parametre/buffer adı için tanımlanması gerekmez; belirli bir modül adı bir kez dahil edildiğinde, onun tüm alt modülleri aynı cihaza gönderilir. Varsayılan olarak `None`'dır, bu da modelin CPU üzerinde yükleneceği anlamına gelir. Örnekler: ```py >>> from diffusers import AutoModel >>> import torch >>> # This works. >>> model = AutoModel.from_pretrained( ... "stabilityai/stable-diffusion-xl-base-1.0", subfolder="unet", device_map="cuda" ... ) >>> # This also works (integer accelerator device ID). >>> model = AutoModel.from_pretrained( ... "stabilityai/stable-diffusion-xl-base-1.0", subfolder="unet", device_map=0 ... ) >>> # Specifying a supported offloading strategy like "auto" also works. >>> model = AutoModel.from_pretrained( ... "stabilityai/stable-diffusion-xl-base-1.0", subfolder="unet", device_map="auto" ... ) >>> # Specifying a dictionary as `device_map` also works. >>> model = AutoModel.from_pretrained( ... "stabilityai/stable-diffusion-xl-base-1.0", ... subfolder="unet", ... device_map={"": torch.device("cuda")}, ... ) ``` En optimize `device_map`'i 🤗 Accelerate tarafından otomatik olarak hesaplatmak için `device_map="auto"` ayarlayın. Her seçenek hakkında daha fazla bilgi için [cihar haritası tasarımı](https://huggingface.co/docs/accelerate/en/concept_guides/big_model_inference#the-devicemap) bölümüne bakın. Daha somut örnekler için [Diffusers'a özgü dokümantasyona](https://huggingface.co/docs/diffusers/main/en/training/distributed_inference#model-sharding) da başvurabilirsiniz. | |
| max_memory (`Dict`, *isteğe bağlı*) : Maksimum bellek için bir sözlük cihaz tanımlayıcısı. Ayarlanmazsa, varsayılan olarak her GPU için kullanılabilir maksimum bellek ve kullanılabilir CPU RAM'i olacaktır. | |
| offload_folder (`str` veya `os.PathLike`, *isteğe bağlı*) : `device_map` değeri `"disk"` içeriyorsa ağırlıkların taşınacağı yol. | |
| offload_state_dict (`bool`, *isteğe bağlı*) : `True` ise, CPU durum sözlüğünün ağırlığı + checkpoint'in en büyük dilimi sığmıyorsa CPU RAM'inin dolmasını önlemek için CPU durum sözlüğü geçici olarak sabit diske aktarılır. Disk aktarımı varsa varsayılan olarak `True` değerine ayarlanır. | |
| low_cpu_mem_usage (`bool`, *isteğe bağlı*, varsayılan olarak PyTorch sürümü >= 1.9.0 ise `True`, aksi halde `False`) : Ağırlıkları başlatmadan yalnızca önceden eğitilmiş ağırlıkları yükleyerek model yüklemesini hızlandırır. Bu, model yüklenirken (tepe bellek dahil) CPU belleğinde model boyutunun 1 katından fazlasını kullanmamaya da çalışır. Yalnızca PyTorch >= 1.9.0 için desteklenir. PyTorch'un daha eski bir sürümünü kullanıyorsanız, bu argümanı `True` olarak ayarlamak bir hata verecektir. | |
| variant (`str`, *isteğe bağlı*) : Ağırlıkları, `"fp16"` veya `"ema"` gibi belirli bir `variant` dosya adından yükler. | |
| use_safetensors (`bool`, *isteğe bağlı*, varsayılan `None`) : `None` olarak ayarlanırsa, `safetensors` ağırlıkları mevcut **ve** `safetensors` kütüphanesi yüklüyse indirilir. `True` olarak ayarlanırsa, model `safetensors` ağırlıklarından zorla yüklenir. `False` olarak ayarlanırsa, `safetensors` ağırlıkları yüklenmez. | |
| disable_mmap ('bool', *isteğe bağlı*, varsayılan 'False') : Bir Safetensors modeli yüklenirken mmap'in devre dışı bırakılıp bırakılmayacağını belirtir. Model bir ağ biriminde veya sabit diskte olduğunda, bu ortamın mmap'in rastgele erişim (seek) davranışını iyi yönetememesi nedeniyle bu seçenek daha iyi performans gösterebilir. | |
| use_flashpack (`bool`, *isteğe bağlı*, varsayılan `False`) : `True` olarak ayarlanırsa, model `flashpack` ağırlıklarından yüklenir. | |
| flashpack_kwargs(`dict[str, Any]`, *isteğe bağlı*, varsayılan `{}`) : [`flashpack.deserialization.assign_from_file`](https://github.com/fal-ai/flashpack/blob/f1aa91c5cd9532a3dbf5bcc707ab9b01c274b76c/src/flashpack/deserialization.py#L408-L422) fonksiyonuna aktarılan Kwargs | |
| Önceden eğitilmiş bir model yapılandırmasından önceden eğitilmiş bir PyTorch modeli örnekleyin. | |
| Model varsayılan olarak değerlendirme moduna ayarlanır - `model.eval()` - ve dropout modülleri devre dışı bırakılır. Modeli eğitmek için `model.train()` ile eğitim moduna geri ayarlayın. | |
| > [!TIP] > Özel veya [korumalı modelleri](https://huggingface.co/docs/hub/models-gated#gated-models) kullanmak için oturum açın | |
| `hf > auth login` ile. Bu yöntemi bir > ["offline-mode"](https://huggingface.co/diffusers/installation.html#offline-mode) ile etkinleştirerek > güvenlik duvarlı bir ortamda da kullanabilirsiniz. | |
| Örnek: | |
| ```py | |
| from diffusers import UNet2DConditionModel | |
| unet = UNet2DConditionModel.from_pretrained("stable-diffusion-v1-5/stable-diffusion-v1-5", subfolder="unet") | |
| ``` | |
| Aşağıdaki hata mesajını alıyorsanız, aşağı akış göreviniz için ağırlıkları ince ayar yapmanız gerekir: | |
| ```bash | |
| Some weights of UNet2DConditionModel were not initialized from the model checkpoint at stable-diffusion-v1-5/stable-diffusion-v1-5 and are newly initialized because the shapes did not match: | |
| - conv_in.weight: found shape torch.Size([320, 4, 3, 3]) in the checkpoint and torch.Size([320, 9, 3, 3]) in the model instantiated | |
| You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference. | |
| ``` | |
| #### get_memory_footprint[[diffusers.ModelMixin.get_memory_footprint]] | |
| ```python | |
| get_memory_footprint(return_buffers = True) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L2186) | |
| **Parametreler:** | |
| return_buffers (`bool`, *isteğe bağlı*, varsayılan `True`) : Bellek ayak izinin hesaplanmasında tampon tensörlerinin boyutunun döndürülüp döndürülmeyeceğini belirtir. Tamponlar, gradyan gerektirmeyen ve parametre olarak kaydedilmeyen tensörlerdir. Örneğin, batch norm katmanlarındaki ortalama ve standart sapma. Lütfen şuraya bakın: https://discuss.pytorch.org/t/what-pytorch-means-by-buffers/120266/2 | |
| Bir modelin bellek ayak izini alın. Bu, mevcut modelin bayt cinsinden bellek ayak izini döndürür. Mevcut modelin bellek ayak izini ölçmek ve bazı testler tasarlamak için faydalıdır. Çözüm, PyTorch tartışmalarından ilham alınarak oluşturulmuştur: https://discuss.pytorch.org/t/gpu-memory-that-model-uses/56822/2 | |
| #### num_parameters[[diffusers.ModelMixin.num_parameters]] | |
| ```python | |
| num_parameters(only_trainable: bool = False, exclude_embeddings: bool = False) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L2122) | |
| **Parametreler:** | |
| only_trainable (`bool`, *isteğe bağlı*, varsayılan `False`) : Yalnızca eğilebilir parametre sayısını döndürüp döndürmeyeceğini belirtir. | |
| exclude_embeddings (`bool`, *isteğe bağlı*, varsayılan `False`) : Yalnızca gömme olmayan parametre sayısını döndürüp döndürmeyeceğini belirtir. | |
| **Dönüş:** `int` | |
| Parametre sayısı. | |
| Modüldeki (eğitilebilir veya gömme olmayan) parametre sayısını alın. | |
| Örnek: | |
| ```py | |
| from diffusers import UNet2DConditionModel | |
| model_id = "stable-diffusion-v1-5/stable-diffusion-v1-5" | |
| unet = UNet2DConditionModel.from_pretrained(model_id, subfolder="unet") | |
| unet.num_parameters(only_trainable=True) | |
| 859520964 | |
| ``` | |
| #### reset_attention_backend[[diffusers.ModelMixin.reset_attention_backend]] | |
| ```python | |
| reset_attention_backend() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L667) | |
| Model için dikkat (attention) arka ucunu sıfırlar. `forward` çağrılarının ardından, ayarlanmışsa ortam varsayılanı, aksi halde torch yerel ölçekli nokta çarpımı dikkati (scaled dot product attention) kullanılır. | |
| #### save_pretrained[[diffusers.ModelMixin.save_pretrained]] | |
| ```python | |
| save_pretrained(save_directory: str | os.PathLike, is_main_process: bool = True, save_function: typing.Optional[typing.Callable] = None, safe_serialization: bool = True, variant: str | None = None, max_shard_size: int | str = '10GB', push_to_hub: bool = False, use_flashpack: bool = False, **kwargs) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L686) | |
| **Parametreler:** | |
| save_directory (`str` veya `os.PathLike`) : Bir model ve yapılandırma dosyasının kaydedileceği dizin. Var değilse oluşturulur. | |
| is_main_process (`bool`, *isteğe bağlı*, varsayılan `True`) : Bu işlemi çağıran sürecin ana süreç olup olmadığı. Dağıtık eğitim sırasında ve bu fonksiyonu tüm süreçlerde çağırmanız gerektiğinde kullanışlıdır. Bu durumda, yarış durumlarını (race condition) önlemek için `is_main_process=True` değerini yalnızca ana süreçte ayarlayın. | |
| save_function (`Callable`) : Durum sözlüğünü (state dictionary) kaydetmek için kullanılacak işlev. Dağıtık eğitim sırasında `torch.save` yerine başka bir yöntem kullanmanız gerektiğinde faydalıdır. `DIFFUSERS_SAVE_MODE` ortam değişkeni ile yapılandırılabilir. | |
| safe_serialization (`bool`, *isteğe bağlı*, varsayılan `True`) : Modelin `safetensors` ile mi yoksa geleneksel PyTorch yöntemiyle `pickle` kullanılarak mı kaydedileceğini belirtir. | |
| variant (`str`, *isteğe bağlı*) : Belirtilirse, ağırlıklar `pytorch_model.<variant>.bin` biçiminde kaydedilir. | |
| max_shard_size (`int` veya `str`, varsayılan `"10GB"`) : Bir kontrol noktasının parçalanmadan önceki maksimum boyutu. Parçalanan kontrol noktalarının her biri bu boyuttan küçük olacaktır. Dize olarak ifade ediliyorsa, birimden (örneğin `"5GB"`) önce rakamlar gelmelidir. Tamsayı olarak ifade ediliyorsa birim bayttır. Belirli bir süre sonra (Ekim 2024'ten itibaren) `diffusers`'ın en son sürümüne yükseltme yapabilmeleri için kullanıcıların bu sınırın düşürüleceğini unutmayın. Bu, Hugging Face ekosistemindeki farklı kütüphaneler (örneğin `transformers` ve `accelerate`) için bu argümana yönelik ortak bir varsayılan boyut belirlemek içindir. | |
| push_to_hub (`bool`, *isteğe bağlı*, varsayılan `False`) : Modelinizi kaydettikten sonra Hugging Face Hub'a gönderip göndermeyeceğinizi belirtir. Göndermek istediğiniz depoyu `repo_id` ile belirleyebilirsiniz (varsayılan olarak ad alanınızdaki `save_directory` adı kullanılır). | |
| kwargs (`dict[str, Any]`, *isteğe bağlı*) : [push_to_hub()](/docs/diffusers/main/tr/api/schedulers/overview#diffusers.utils.PushToHubMixin.push_to_hub) yöntemine iletilen ek anahtar kelime argümanları. | |
| Bir modeli ve yapılandırma dosyasını, [from_pretrained()](/docs/diffusers/main/tr/api/models/overview#diffusers.ModelMixin.from_pretrained) sınıf yöntemiyle yeniden yüklenebilmesi için bir dizine kaydedin. | |
| #### set_attention_backend[[diffusers.ModelMixin.set_attention_backend]] | |
| ```python | |
| set_attention_backend(backend: str) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L608) | |
| **Parametreler:** | |
| backend (`str`) : Ayarlanacak backend'in adı. `AttentionBackendName` içinde tanımlanan mevcut backend'lerden biri olmalıdır. Kullanılabilir backend'ler `diffusers.attention_dispatch.AttentionBackendName` içinde bulunabilir. Varsayılan olarak backend olarak torch native scaled dot product attention kullanılır. | |
| Model için dikkat (attention) arka ucunu ayarlayın. | |
| #### set_use_npu_flash_attention[[diffusers.ModelMixin.set_use_npu_flash_attention]] | |
| ```python | |
| set_use_npu_flash_attention(valid: bool) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/modeling_utils.py#L335) | |
| npu flash attention için anahtarı ayarlayın. | |
| #### 'e[[diffusers.ModelMixin.to]] | |
| ```python | |
| to(*args, **kwargs) | |
| ``` | |
| Noktalı bir yol için sahte bir değer (ör. `torch.float32`): öznitelik erişim zincirleri, çağrılar geçiş (pass-through) dekoratörleri gibi davranır, `repr` noktalı yoldur ve bir taban sınıf olarak kullanıldığında düz bir `type` tabanı yerine geçer (PEP 560 `__mro_entries__`), böylece gerçek alt sınıflar normal bir meta sınıfı korur ve `inspect.signature` sahtenin yerine gerçek `__init__` değerlerini okur. | |
| ## PushToHubMixin[[diffusers.utils.PushToHubMixin]] | |
| #### diffusers.utils.PushToHubMixin[[diffusers.utils.PushToHubMixin]] | |
| ```python | |
| diffusers.utils.PushToHubMixin() | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/utils/hub_utils.py#L491) | |
| Bir model, zamanlayıcı veya hattı Hugging Face Hub'a göndermek için bir Mixin. | |
| #### push_to_hub[[diffusers.utils.PushToHubMixin.push_to_hub]] | |
| ```python | |
| push_to_hub(repo_id: str, commit_message: str | None = None, private: bool | None = None, token: str | None = None, create_pr: bool = False, safe_serialization: bool = True, variant: str | None = None, subfolder: str | None = None) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/utils/hub_utils.py#L526) | |
| **Parametreler:** | |
| repo_id (`str`) : Model, zamanlayıcı veya pipeline dosyalarınızı itmek istediğiniz depoyun adı. Bir organizasyona itme işlemi sırasında organizasyon adınızı içermelidir. `repo_id` ayrıca yerel bir dizine giden bir yol da olabilir. | |
| commit_message (`str`, *isteğe bağlı*) : İterken commit edilecek mesaj. Varsayılan olarak `"Upload {object}"`. | |
| private (`bool`, *isteğe bağlı*) : Depoyu özel yapılıp yapılmayacağını belirtir. `None` (varsayılan) ise, organizasyonun varsayılanı özel değilse depo herkese açık olur. Depo zaten mevcutsa bu değer yok sayılır. | |
| token (`str`, *isteğe bağlı*) : Uzaktaki dosyalar için HTTP bearer yetkilendirmesi olarak kullanılacak jeton. `hf auth login` çalıştırıldığında oluşturulan jeton (`~/.huggingface` içinde saklanır). | |
| create_pr (`bool`, *isteğe bağlı*, varsayılan `False`) : Yüklenen dosyalarla bir PR oluşturulup oluşturulmayacağı veya doğrudan commit atılıp atılmayacağı. | |
| safe_serialization (`bool`, *isteğe bağlı*, varsayılan `True`) : Model ağırlıklarının `safetensors` biçimine dönüştürülüp dönüştürülmeyeceği. | |
| variant (`str`, *isteğe bağlı*) : Belirtilirse, ağırlıklar `pytorch_model.<variant>.bin` biçiminde kaydedilir. | |
| Model, zamanlayıcı veya boru hattı dosyalarını 🤗 Hugging Face Hub'a yükleyin. | |
| Örnekler: | |
| ```python | |
| from diffusers import UNet2DConditionModel | |
| unet = UNet2DConditionModel.from_pretrained("stabilityai/stable-diffusion-2", subfolder="unet") | |
| # Push the `unet` to your namespace with the name "my-finetuned-unet". | |
| unet.push_to_hub("my-finetuned-unet") | |
| # Push the `unet` to an organization with the name "my-finetuned-unet". | |
| unet.push_to_hub("your-org/my-finetuned-unet") | |
| ``` | |
Xet Storage Details
- Size:
- 30 kB
- Xet hash:
- b8f2176a2d6ee394805eafb79ef5d776ffe23b4c8e747183f1d946b9aba37445
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.