Diffusers documentation

AutoPipeline

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.42.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

AutoPipeline

AutoPipeline, belirli bir pipeline sınıfını bilmek zorunda kalmadan bir görev için checkpoint yüklemeyi kolaylaştırmak üzere tasarlanmıştır. Göreve göre AutoPipeline, doğru pipeline sınıfını checkpoint model_index.json dosyasından otomatik olarak alır.

Bu API'yi nasıl kullanacağınızı öğrenmek için AutoPipeline eğitimine göz atın!

AutoPipelineForText2Image

sınıf diffusers.AutoPipelineForText2Image

< >

( *args**kwargs )

AutoPipelineForText2Image, bir metinden görüntüye dönüştürme (text-to-image) hattı sınıfını örnekleyen genel bir hat sınıfıdır. Altta yatan belirli hat sınıfı, from_pretrained() veya from_pipe() yöntemlerinden biri tarafından otomatik olarak seçilir.

Bu sınıf __init__() kullanılarak örneklenemez (hata fırlatır).

Sınıf özellikleri:

  • config_name (str) — Tüm difüzyon hattı bileşenlerinin sınıf ve modül adlarını saklayan yapılandırma dosya adı.

from_pretrained

< >

( pretrained_model_or_path**kwargs )

Parametreler

  • pretrained_model_or_path (str veya os.PathLike, isteğe bağlı) — Şu olabilir:
    • Hub'da barındırılan önceden eğitilmiş bir pipeline'ın repo id'si (örneğin CompVis/ldm-text2im-large-256) olan bir dize.
    • save_pretrained() kullanılarak kaydedilen pipeline ağırlıklarını içeren bir dizin (örneğin ./my_pipeline_directory/) yoluna
  • 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.
  • 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.
  • proxies (dict[str, str], isteğe bağlı) — Protokole veya uç noktaya göre 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, opsiyonel, varsayılan olarak False) — Eksik anahtarlar, beklenmeyen anahtarlar ve hata mesajlarını içeren bir sözlüğü 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ı 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ı) — Uzak 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.
  • custom_revision (str, isteğe bağlı, varsayılan "main") — Kullanılacak belirli model sürümü. Hub'dan özel bir pipeline yüklenirken revision ile benzer şekilde bir dal adı, etiket adı veya commit kimliği olabilir. GitHub'dan özel bir pipeline yüklenirken bir 🤗 Diffusers sürümü olabilir, aksi takdirde Hub'dan yüklenirken varsayılan olarak "main" kullanılır.
  • mirror (str, isteğe bağlı) — Çin'de bir model indirirken erişilebilirlik sorunlarını çözmek için kullanılacak ayna kaynağı. Kaynağın güncelliğini veya güvenliğini garanti etmiyoruz; daha fazla bilgi için lütfen ayna sitesine başvurun.
  • device_map (str veya dict[str, int | str | torch.device], isteğe bağlı) — Her alt modülün nereye yerleştirileceğ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.

    🤗 Accelerate'in en optimize device_map'i otomatik olarak hesaplaması için device_map="auto" ayarlayın. Her seçenek hakkında daha fazla bilgi için cihaz haritası tasarımı bölümüne bakın.

  • 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 olur.
  • offload_folder (str veya os.PathLike, isteğe bağlı) — "disk" değerini içeren bir device_map varsa, ağırlıkların taşınacağı yol.
  • offload_state_dict (bool, isteğe bağlı) — True ise, CPU state dict + checkpoint'in en büyük shard'ı sığmıyorsa CPU RAM'inin dolmasını önlemek için CPU state dict'i geçici olarak sabit diske taşır. Disk offload varsa varsayılan olarak True olur.
  • low_cpu_mem_usage (bool, isteğe bağlı, varsayılan olarak torch sürümü >= 1.9.0 ise True, aksi halde False) — Modeli yalnızca önceden eğitilmiş ağırlıkları yükleyerek ve ağırlıkları başlatmadan yüklemeyi 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.
  • 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 zorla safetensors ağırlıklarından yüklenir. False olarak ayarlanırsa, safetensors ağırlıkları yüklenmez.
  • kwargs (geri kalan anahtar kelime argümanları sözlüğü, isteğe bağlı) — Yükleme ve kaydedilebilir değişkenleri (belirli pipeline sınıfının pipeline bileşenlerini) geçersiz kılmak için kullanılabilir. Geçersiz kılınan bileşenler doğrudan pipeline'ın __init__ yöntemine iletilir. Daha fazla bilgi için aşağıdaki örneğe bakın.
  • variant (str, isteğe bağlı) — Ağırlıkları, "fp16" veya "ema" gibi belirtilen bir varyant dosya adından yükler.

Önceden eğitilmiş pipeline ağırlıklarından bir metinden görüntüye Pytorch difüzyon pipeline'ı örnekler.

from_pretrained() metodu, doğru pipeline sınıfı örneğini döndürmek için şunları yapar:

  1. pretrained_model_or_path'in config nesnesinin _class_name özelliğine dayanarak pipeline sınıfını algıla
  2. Pipeline sınıfı adında desen eşleştirme kullanarak pipeline sınıfına bağlı metinden görüntüye pipeline'ı bulun.

controlnet argümanı geçirilirse, bir StableDiffusionControlNetPipeline nesnesi oluşturulur.

Hattın varsayılan olarak değerlendirme modunda (model.eval()) ayarlanır.

Aşağıdaki hata mesajını alıyorsanız, aşağı akış göreviniz için ağırlıkları ince ayar yapmanız gerekir:

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.

> Özel veya korumalı modelleri kullanmak için hf > auth login ile oturum açın.

Örnekler:

>>> from diffusers import AutoPipelineForText2Image

>>> pipeline = AutoPipelineForText2Image.from_pretrained("stable-diffusion-v1-5/stable-diffusion-v1-5")
>>> image = pipeline(prompt).images[0]

from_pipe

< >

( pipeline**kwargs )

Parametreler

  • pipeline (DiffusionPipeline) — oluşturulmuş bir DiffusionPipeline nesnesi

Diğer bir örneklenmiş difüzyon hattı sınıfından bir metinden görüntüye Pytorch difüzyon hattı örnekler.

from_pipe() metodu, pipeline sınıf adında desen eşleştirme kullanarak pipeline sınıfına bağlı metinden görüntüye pipeline'ı bularak doğru pipeline sınıf örneğini döndürmekten sorumludur.

Hattın içerdiği tüm modüller, ek bellek tahsisi yapılmadan yeni hattı başlatmak için kullanılacaktır.

Hattın varsayılan olarak değerlendirme modunda (model.eval()) ayarlanır.

>>> from diffusers import AutoPipelineForText2Image, AutoPipelineForImage2Image

>>> pipe_i2i = AutoPipelineForImage2Image.from_pretrained(
...     "stable-diffusion-v1-5/stable-diffusion-v1-5", requires_safety_checker=False
... )

>>> pipe_t2i = AutoPipelineForText2Image.from_pipe(pipe_i2i)
>>> image = pipe_t2i(prompt).images[0]

AutoPipelineForImage2Image

sınıf diffusers.AutoPipelineForImage2Image

< >

( *args**kwargs )

AutoPipelineForImage2Image, görüntüden görüntüye bir pipeline sınıfı örnekleyen genel bir pipeline sınıfıdır. Altta yatan belirli pipeline sınıfı, from_pretrained() veya from_pipe() yöntemlerinden biri tarafından otomatik olarak seçilir.

Bu sınıf __init__() kullanılarak örneklenemez (hata fırlatır).

Sınıf özellikleri:

  • config_name (str) — Tüm difüzyon hattı bileşenlerinin sınıf ve modül adlarını saklayan yapılandırma dosya adı.

from_pretrained

< >

( pretrained_model_or_path**kwargs )

Parametreler

  • pretrained_model_or_path (str veya os.PathLike, isteğe bağlı) — Şu olabilir:
    • Hub'da barındırılan önceden eğitilmiş bir pipeline'ın repo id'si (örneğin CompVis/ldm-text2im-large-256) olan bir dize.
    • save_pretrained() kullanılarak kaydedilen pipeline ağırlıklarını içeren bir dizin (örneğin ./my_pipeline_directory/) yoluna
  • dtype (str veya torch.dtype, isteğe bağlı) — Varsayılan torch.dtype değerini geçersiz kılın ve modeli başka bir dtype ile yükleyin.
  • 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.
  • 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.
  • proxies (dict[str, str], isteğe bağlı) — Protokole veya uç noktaya göre 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, opsiyonel, varsayılan olarak False) — Eksik anahtarlar, beklenmeyen anahtarlar ve hata mesajlarını içeren bir sözlüğü 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ı 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ı) — Uzak 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.
  • custom_revision (str, isteğe bağlı, varsayılan "main") — Kullanılacak belirli model sürümü. Hub'dan özel bir pipeline yüklenirken revision ile benzer şekilde bir dal adı, etiket adı veya commit kimliği olabilir. GitHub'dan özel bir pipeline yüklenirken bir 🤗 Diffusers sürümü olabilir, aksi takdirde Hub'dan yüklenirken varsayılan olarak "main" kullanılır.
  • mirror (str, isteğe bağlı) — Çin'de bir model indirirken erişilebilirlik sorunlarını çözmek için kullanılacak ayna kaynağı. Kaynağın güncelliğini veya güvenliğini garanti etmiyoruz; daha fazla bilgi için lütfen ayna sitesine başvurun.
  • device_map (str veya dict[str, int | str | torch.device], isteğe bağlı) — Her alt modülün nereye yerleştirileceğ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.

    🤗 Accelerate'in en optimize device_map'i otomatik olarak hesaplaması için device_map="auto" ayarlayın. Her seçenek hakkında daha fazla bilgi için cihaz haritası tasarımı bölümüne bakın.

  • 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 olur.
  • offload_folder (str veya os.PathLike, isteğe bağlı) — "disk" değerini içeren bir device_map varsa, ağırlıkların taşınacağı yol.
  • offload_state_dict (bool, isteğe bağlı) — True ise, CPU state dict + checkpoint'in en büyük shard'ı sığmıyorsa CPU RAM'inin dolmasını önlemek için CPU state dict'i geçici olarak sabit diske taşır. Disk offload varsa varsayılan olarak True olur.
  • low_cpu_mem_usage (bool, isteğe bağlı, varsayılan olarak torch sürümü >= 1.9.0 ise True, aksi halde False) — Modeli yalnızca önceden eğitilmiş ağırlıkları yükleyerek ve ağırlıkları başlatmadan yüklemeyi 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.
  • 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 zorla safetensors ağırlıklarından yüklenir. False olarak ayarlanırsa, safetensors ağırlıkları yüklenmez.
  • kwargs (geri kalan anahtar kelime argümanları sözlüğü, isteğe bağlı) — Yükleme ve kaydedilebilir değişkenleri (belirli pipeline sınıfının pipeline bileşenlerini) geçersiz kılmak için kullanılabilir. Geçersiz kılınan bileşenler doğrudan pipeline'ın __init__ yöntemine iletilir. Daha fazla bilgi için aşağıdaki örneğe bakın.
  • variant (str, isteğe bağlı) — Ağırlıkları, "fp16" veya "ema" gibi belirtilen bir varyant dosya adından yükler.

Önceden eğitilmiş pipeline ağırlıklarından bir görüntüden-görüntüye Pytorch difüzyon pipeline'ı örnekler.

from_pretrained() metodu, doğru pipeline sınıfı örneğini döndürmek için şunları yapar:

  1. pretrained_model_or_path'in config nesnesinin _class_name özelliğine dayanarak pipeline sınıfını algıla
  2. Pipeline sınıfı adında desen eşleştirme kullanarak pipeline sınıfına bağlı image-to-image hattını bulun.

controlnet argümanı geçirilirse, bir StableDiffusionControlNetImg2ImgPipeline nesnesi oluşturulur.

Hattın varsayılan olarak değerlendirme modunda (model.eval()) ayarlanır.

Aşağıdaki hata mesajını alıyorsanız, aşağı akış göreviniz için ağırlıkları ince ayar yapmanız gerekir:

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.

> Özel veya korumalı modelleri kullanmak için hf > auth login ile oturum açın.

Örnekler:

>>> from diffusers import AutoPipelineForImage2Image

>>> pipeline = AutoPipelineForImage2Image.from_pretrained("stable-diffusion-v1-5/stable-diffusion-v1-5")
>>> image = pipeline(prompt, image).images[0]

from_pipe

< >

( pipeline**kwargs )

Parametreler

  • pipeline (DiffusionPipeline) — oluşturulmuş bir DiffusionPipeline nesnesi

Diğer bir örneklenmiş difüzyon hattı sınıfından bir görüntüden-görüntüye Pytorch difüzyon hattı örnekler.

from_pipe() yöntemi, pipeline sınıf adında desen eşleştirme kullanarak pipeline sınıfına bağlı image-to-image pipeline'ını bularak doğru pipeline sınıf örneğini döndürmekten sorumludur.

Hattın içerdiği tüm modüller, ek bellek tahsisi yapılmadan yeni hattı başlatmak için kullanılacaktır.

Hattın varsayılan olarak değerlendirme modunda (model.eval()) ayarlanır.

Örnekler:

>>> from diffusers import AutoPipelineForText2Image, AutoPipelineForImage2Image

>>> pipe_t2i = AutoPipelineForText2Image.from_pretrained(
...     "stable-diffusion-v1-5/stable-diffusion-v1-5", requires_safety_checker=False
... )

>>> pipe_i2i = AutoPipelineForImage2Image.from_pipe(pipe_t2i)
>>> image = pipe_i2i(prompt, image).images[0]

AutoPipelineForInpainting

sınıf diffusers.AutoPipelineForInpainting

< >

( *args**kwargs )

AutoPipelineForInpainting, bir inpainting pipeline sınıfı örnekleyen genel bir pipeline sınıfıdır. Altta yatan belirli pipeline sınıfı, from_pretrained() veya from_pipe() yöntemlerinden biri tarafından otomatik olarak seçilir.

Bu sınıf __init__() kullanılarak örneklenemez (hata fırlatır).

Sınıf özellikleri:

  • config_name (str) — Tüm difüzyon hattı bileşenlerinin sınıf ve modül adlarını saklayan yapılandırma dosya adı.

from_pretrained

< >

( pretrained_model_or_path**kwargs )

Parametreler

  • pretrained_model_or_path (str veya os.PathLike, isteğe bağlı) — Şu olabilir:
    • Hub'da barındırılan önceden eğitilmiş bir pipeline'ın repo id'si (örneğin CompVis/ldm-text2im-large-256) olan bir dize.
    • save_pretrained() kullanılarak kaydedilen pipeline ağırlıklarını içeren bir dizin (örneğin ./my_pipeline_directory/) yoluna
  • dtype (str veya torch.dtype, isteğe bağlı) — Varsayılan torch.dtype değerini geçersiz kılın ve modeli başka bir dtype ile yükleyin.
  • 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.
  • 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.
  • proxies (dict[str, str], isteğe bağlı) — Protokole veya uç noktaya göre 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, opsiyonel, varsayılan olarak False) — Eksik anahtarlar, beklenmeyen anahtarlar ve hata mesajlarını içeren bir sözlüğü 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ı 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ı) — Uzak 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.
  • custom_revision (str, isteğe bağlı, varsayılan "main") — Kullanılacak belirli model sürümü. Hub'dan özel bir pipeline yüklenirken revision ile benzer şekilde bir dal adı, etiket adı veya commit kimliği olabilir. GitHub'dan özel bir pipeline yüklenirken bir 🤗 Diffusers sürümü olabilir, aksi takdirde Hub'dan yüklenirken varsayılan olarak "main" kullanılır.
  • mirror (str, isteğe bağlı) — Çin'de bir model indirirken erişilebilirlik sorunlarını çözmek için kullanılacak ayna kaynağı. Kaynağın güncelliğini veya güvenliğini garanti etmiyoruz; daha fazla bilgi için lütfen ayna sitesine başvurun.
  • device_map (str veya dict[str, int | str | torch.device], isteğe bağlı) — Her alt modülün nereye yerleştirileceğ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.

    🤗 Accelerate'in en optimize device_map'i otomatik olarak hesaplaması için device_map="auto" ayarlayın. Her seçenek hakkında daha fazla bilgi için cihaz haritası tasarımı bölümüne bakın.

  • 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 olur.
  • offload_folder (str veya os.PathLike, isteğe bağlı) — "disk" değerini içeren bir device_map varsa, ağırlıkların taşınacağı yol.
  • offload_state_dict (bool, isteğe bağlı) — True ise, CPU state dict + checkpoint'in en büyük shard'ı sığmıyorsa CPU RAM'inin dolmasını önlemek için CPU state dict'i geçici olarak sabit diske taşır. Disk offload varsa varsayılan olarak True olur.
  • low_cpu_mem_usage (bool, isteğe bağlı, varsayılan olarak torch sürümü >= 1.9.0 ise True, aksi halde False) — Modeli yalnızca önceden eğitilmiş ağırlıkları yükleyerek ve ağırlıkları başlatmadan yüklemeyi 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.
  • 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 zorla safetensors ağırlıklarından yüklenir. False olarak ayarlanırsa, safetensors ağırlıkları yüklenmez.
  • kwargs (geri kalan anahtar kelime argümanları sözlüğü, isteğe bağlı) — Yükleme ve kaydedilebilir değişkenleri (belirli pipeline sınıfının pipeline bileşenlerini) geçersiz kılmak için kullanılabilir. Geçersiz kılınan bileşenler doğrudan pipeline'ın __init__ yöntemine iletilir. Daha fazla bilgi için aşağıdaki örneğe bakın.
  • variant (str, isteğe bağlı) — Ağırlıkları, "fp16" veya "ema" gibi belirtilen bir varyant dosya adından yükler.

Önceden eğitilmiş pipeline ağırlıklarından bir inpainting Pytorch difüzyon pipeline'ı örnekler.

from_pretrained() metodu, doğru pipeline sınıfı örneğini döndürmek için şunları yapar:

  1. pretrained_model_or_path'in config nesnesinin _class_name özelliğine dayanarak pipeline sınıfını algıla
  2. Pipeline sınıfının adında desen eşleştirme kullanarak pipeline sınıfına bağlı inpainting hattını bulun.

controlnet argümanı geçirilirse, bir StableDiffusionControlNetInpaintPipeline nesnesi oluşturulur.

Hattın varsayılan olarak değerlendirme modunda (model.eval()) ayarlanır.

Aşağıdaki hata mesajını alıyorsanız, aşağı akış göreviniz için ağırlıkları ince ayar yapmanız gerekir:

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.

> Özel veya korumalı modelleri kullanmak için hf > auth login ile oturum açın.

Örnekler:

>>> from diffusers import AutoPipelineForInpainting

>>> pipeline = AutoPipelineForInpainting.from_pretrained("stable-diffusion-v1-5/stable-diffusion-v1-5")
>>> image = pipeline(prompt, image=init_image, mask_image=mask_image).images[0]

from_pipe

< >

( pipeline**kwargs )

Parametreler

  • pipeline (DiffusionPipeline) — oluşturulmuş bir DiffusionPipeline nesnesi

Diğer bir örneklenmiş difüzyon hattı sınıfından inpainting Pytorch difüzyon hattı örnekler.

from_pipe() yöntemi, pipeline sınıf adında desen eşleştirme kullanarak pipeline sınıfına bağlı inpainting pipeline'ını bulup doğru pipeline sınıf örneğini döndürmekten sorumludur.

Pipeline sınıfının içerdiği tüm modüller, ek bellek tahsisi yapılmadan yeni pipeline'ı başlatmak için kullanılacaktır.

Hattın varsayılan olarak değerlendirme modunda (model.eval()) ayarlanır.

Örnekler:

>>> from diffusers import AutoPipelineForText2Image, AutoPipelineForInpainting

>>> pipe_t2i = AutoPipelineForText2Image.from_pretrained(
...     "DeepFloyd/IF-I-XL-v1.0", requires_safety_checker=False
... )

>>> pipe_inpaint = AutoPipelineForInpainting.from_pipe(pipe_t2i)
>>> image = pipe_inpaint(prompt, image=init_image, mask_image=mask_image).images[0]

AutoPipelineForText2Audio

sınıf diffusers.AutoPipelineForText2Audio

< >

( *args**kwargs )

AutoPipelineForText2Audio, bir metinden ses üretimine (text-to-audio) yönelik pipeline sınıfını örnekleyen genel bir pipeline sınıfıdır. Altta yatan belirli pipeline sınıfı, from_pretrained() veya from_pipe() yöntemlerinden biri tarafından otomatik olarak seçilir.

Bu sınıf __init__() kullanılarak örneklenemez (hata fırlatır).

Sınıf özellikleri:

  • config_name (str) — Tüm difüzyon hattı bileşenlerinin sınıf ve modül adlarını saklayan yapılandırma dosya adı.

from_pretrained

< >

( pretrained_model_or_path**kwargs )

Parametreler

  • pretrained_model_or_path (str veya os.PathLike, isteğe bağlı) — Şu olabilir:
    • Bir dize, Hub üzerinde barındırılan önceden eğitilmiş bir hattın repo kimliği (örneğin stabilityai/stable-audio-open-1.0).
    • save_pretrained() kullanılarak kaydedilen pipeline ağırlıklarını içeren bir dizin (örneğin ./my_pipeline_directory/) yoluna
  • 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.
  • 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.
  • proxies (dict[str, str], isteğe bağlı) — Protokole veya uç noktaya göre 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, opsiyonel, varsayılan olarak False) — Eksik anahtarlar, beklenmeyen anahtarlar ve hata mesajlarını içeren bir sözlüğü 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ı 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ı) — Uzak 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.
  • custom_revision (str, isteğe bağlı, varsayılan "main") — Kullanılacak belirli model sürümü. Hub'dan özel bir pipeline yüklenirken revision ile benzer şekilde bir dal adı, etiket adı veya commit kimliği olabilir. GitHub'dan özel bir pipeline yüklenirken bir 🤗 Diffusers sürümü olabilir, aksi takdirde Hub'dan yüklenirken varsayılan olarak "main" kullanılır.
  • mirror (str, isteğe bağlı) — Çin'de bir model indirirken erişilebilirlik sorunlarını çözmek için kullanılacak ayna kaynağı. Kaynağın güncelliğini veya güvenliğini garanti etmiyoruz; daha fazla bilgi için lütfen ayna sitesine başvurun.
  • device_map (str veya dict[str, int | str | torch.device], isteğe bağlı) — Her alt modülün nereye yerleştirileceğ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.

    🤗 Accelerate'in en optimize device_map'i otomatik olarak hesaplaması için device_map="auto" ayarlayın. Her seçenek hakkında daha fazla bilgi için cihaz haritası tasarımı bölümüne bakın.

  • 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 olur.
  • offload_folder (str veya os.PathLike, isteğe bağlı) — "disk" değerini içeren bir device_map varsa, ağırlıkların taşınacağı yol.
  • offload_state_dict (bool, isteğe bağlı) — True ise, CPU state dict + checkpoint'in en büyük shard'ı sığmıyorsa CPU RAM'inin dolmasını önlemek için CPU state dict'i geçici olarak sabit diske taşır. Disk offload varsa varsayılan olarak True olur.
  • low_cpu_mem_usage (bool, isteğe bağlı, varsayılan olarak torch sürümü >= 1.9.0 ise True, aksi halde False) — Modeli yalnızca önceden eğitilmiş ağırlıkları yükleyerek ve ağırlıkları başlatmadan yüklemeyi 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.
  • 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 zorla safetensors ağırlıklarından yüklenir. False olarak ayarlanırsa, safetensors ağırlıkları yüklenmez.
  • kwargs (geri kalan anahtar kelime argümanları sözlüğü, isteğe bağlı) — Yükleme ve kaydedilebilir değişkenleri (belirli pipeline sınıfının pipeline bileşenlerini) geçersiz kılmak için kullanılabilir. Geçersiz kılınan bileşenler doğrudan pipeline'ın __init__ yöntemine iletilir. Daha fazla bilgi için aşağıdaki örneğe bakın.
  • variant (str, isteğe bağlı) — Ağırlıkları, "fp16" veya "ema" gibi belirtilen bir varyant dosya adından yükler.

Önceden eğitilmiş pipeline ağırlıklarından bir metinden sese Pytorch difüzyon pipeline'ı örnekler.

from_pretrained() metodu, doğru pipeline sınıfı örneğini döndürmek için şunları yapar:

  1. pretrained_model_or_path'in config nesnesinin _class_name özelliğine dayanarak pipeline sınıfını algıla
  2. Pipeline sınıfı adında desen eşleştirme kullanarak pipeline sınıfına bağlı metinden ses üretim hattını bulun.

Hattın varsayılan olarak değerlendirme modunda (model.eval()) ayarlanır.

> Özel veya korumalı modelleri kullanmak için hf > auth login ile oturum açın.

Örnekler:

>>> import torch
>>> import soundfile as sf
>>> from diffusers import AutoPipelineForText2Audio

>>> pipeline = AutoPipelineForText2Audio.from_pretrained(
...     "stabilityai/stable-audio-open-1.0", torch_dtype=torch.float16
... )
>>> pipeline = pipeline.to("cuda")

>>> output = pipeline(
...     "Generate a male voice reading a paragraph",
...     num_inference_steps=200,
...     audio_end_in_s=10.0,
... )
>>> audio = output.audios[0].T.float().cpu().numpy()
>>> sf.write("audio.wav", audio, pipeline.vae.sampling_rate)

from_pipe

< >

( pipeline**kwargs )

Parametreler

  • pipeline (DiffusionPipeline) — oluşturulmuş bir DiffusionPipeline nesnesi

Diğer bir örneklenmiş difüzyon hattı sınıfından bir metinden sese Pytorch difüzyon hattı örnekler.

from_pipe() metodu, pipeline sınıf adında desen eşleştirme kullanarak pipeline sınıfına bağlı metinden sese pipeline'ı bulup doğru pipeline sınıf örneğini döndürmekten sorumludur.

Hattın içerdiği tüm modüller, ek bellek tahsisi yapılmadan yeni hattı başlatmak için kullanılacaktır.

Hattın varsayılan olarak değerlendirme modunda (model.eval()) ayarlanır.

>>> import torch
>>> import soundfile as sf
>>> from diffusers import AutoPipelineForText2Audio, StableAudioPipeline

>>> pipe = StableAudioPipeline.from_pretrained("stabilityai/stable-audio-open-1.0", torch_dtype=torch.float16)

>>> pipe_audio = AutoPipelineForText2Audio.from_pipe(pipe)
>>> output = pipe_audio(
...     "Generate a sound",
...     num_inference_steps=200,
...     audio_end_in_s=10.0,
... )
>>> audio = output.audios[0].T.float().cpu().numpy()
>>> sf.write("audio.wav", audio, pipe_audio.vae.sampling_rate)
Update on GitHub