Diffusers documentation
Kandinsky 2.2
Kandinsky 2.2
Kandinsky 2.2, Arseniy Shakhmatov, Anton Razzhigaev, Aleksandr Nikolich, Vladimir Arkhipkin, Igor Pavlov, Andrey Kuznetsov ve Denis Dimitrov tarafından oluşturulmuştur.
GitHub sayfasındaki açıklama şudur:
Kandinsky 2.2, yeni ve daha güçlü bir görüntü kodlayıcı olan CLIP-ViT-G'yi ve ControlNet desteğini tanıtarak, önceki sürümü olan Kandinsky 2.1'e göre önemli iyileştirmeler getiriyor. Görüntü kodlayıcı olarak CLIP-ViT-G'ye geçiş, modelin daha estetik resimler üretme ve metni daha iyi anlama yeteneğini önemli ölçüde artırarak modelin genel performansını geliştiriyor. ControlNet mekanizmasının eklenmesi, modelin görüntü üretim sürecini etkili bir şekilde kontrol etmesini sağlıyor. Bu durum, daha doğru ve görsel olarak çekici çıktılara yol açıyor ve metin yönlendirmeli görüntü manipülasyonu için yeni olanaklar sunuyor.
Orijinal kod tabanı ai-forever/Kandinsky-2 adresinde bulunabilir.
Görselden görsel, metinden görsel ve inpainting gibi görevler için resmi model checkpoint'lerini Hub'daki Kandinsky Community kuruluşunda bulabilirsiniz.
Zamanlayıcı hızı ve kalitesi arasındaki ödünleşimi nasıl keşfedebileceğinizi öğrenmek için zamanlayıcılar kılavuzunu mutlaka inceleyin ve aynı bileşenleri birden fazla boru hattına nasıl verimli bir şekilde yükleyebileceğinizi öğrenmek için boru hatları arasında bileşenleri yeniden kullanma bölümüne göz atın.
KandinskyV22PriorPipeline
sınıf diffusers.KandinskyV22PriorPipeline
< source >( prior: PriorTransformerimage_encoder: CLIPVisionModelWithProjectiontext_encoder: CLIPTextModelWithProjectiontokenizer: CLIPTokenizerscheduler: UnCLIPSchedulerimage_processor: CLIPImageProcessorPil )
Parametreler
- prior (PriorTransformer) — Metin gömümünden görüntü gömümünü yaklaşık olarak elde etmek için kullanılan standart unCLIP önceli.
- image_encoder (
CLIPVisionModelWithProjection) — Donmuş görüntü kodlayıcı. - text_encoder (
CLIPTextModelWithProjection) — Donmuş metin kodlayıcı. - tokenizer (
CLIPTokenizer) — CLIPTokenizer sınıfının tokenization aracı. - scheduler (
UnCLIPScheduler) — Görsel gömme üretmek içinpriorile birlikte kullanılacak bir zamanlayıcı. - image_processor (
CLIPImageProcessor) — clip'ten gelen görüntüleri ön işlemek için kullanılacak bir image_processor.
Kandinsky için görüntü öncesi (prior) üretme hattı
Bu model DiffusionPipeline sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın.
__call__
< source >( prompt: str | list[str]negative_prompt: str | list[str] | None = Nonenum_images_per_prompt: int = 1num_inference_steps: int = 25generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneguidance_scale: float = 4.0output_type: str | None = 'pt'return_dict: bool = Truecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents'] ) → KandinskyPriorPipelineOutput or tuple
Parametreler
- prompt (
strveyalist[str]) — Görsel üretimi yönlendirmek için istem veya istemler. - negative_prompt (
strveyalist[str], isteğe bağlı) — Görsel üretimini yönlendirmemek için kullanılan istem veya istemler. Yönlendirme kullanılmadığında yok sayılır (yaniguidance_scale1'den küçükse yok sayılır). - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - latents (
torch.Tensor, isteğe bağlı) — Gaussian dağılımdan örneklenmiş, gürültülü ve önceden oluşturulmuş latents; görüntü üretimi için girdi olarak kullanılabilir. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgelegeneratorkullanılarak örneklemeye dayalı bir latents tensörü oluşturulur. - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - output_type (
str, isteğe bağlı, varsayılan"pt") — Görsel oluşturma çıktısının biçimi. Şunlardan birini seçin:"np"(np.array) veya"pt"(torch.Tensor). - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine ImagePipelineOutput döndürülüp döndürülmemesi. - callback_on_step_end (
Callable, isteğe bağlı) — Çıkarım sırasında her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict).callback_kwargs,callback_on_step_end_tensor_inputstarafından belirtilen tüm tensörlerin listesini içerir. - callback_on_step_end_tensor_inputs (
list, isteğe bağlı) —callback_on_step_endişlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler,callback_kwargsargümanı olarak geçirilir. Yalnızca pipeline sınıfınızın._callback_tensor_inputsözniteliğinde listelenen değişkenleri dahil edebilirsiniz.
Dönüş değeri
KandinskyPriorPipelineOutput veya tuple
Üretim için pipeline çağrıldığında tetiklenen işlev.
Örnekler:
>>> from diffusers import KandinskyV22Pipeline, KandinskyV22PriorPipeline
>>> import torch
>>> pipe_prior = KandinskyV22PriorPipeline.from_pretrained("kandinsky-community/kandinsky-2-2-prior")
>>> pipe_prior.to("cuda")
>>> prompt = "red cat, 4k photo"
>>> image_emb, negative_image_emb = pipe_prior(prompt).to_tuple()
>>> pipe = KandinskyV22Pipeline.from_pretrained("kandinsky-community/kandinsky-2-2-decoder")
>>> pipe.to("cuda")
>>> image = pipe(
... image_embeds=image_emb,
... negative_image_embeds=negative_image_emb,
... height=768,
... width=768,
... num_inference_steps=50,
... ).images
>>> image[0].save("cat.png")interpolate
< source >( images_and_prompts: listweights: listnum_images_per_prompt: int = 1num_inference_steps: int = 25generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Nonenegative_prior_prompt: str | None = Nonenegative_prompt: str = ''guidance_scale: float = 4.0device = None ) → KandinskyPriorPipelineOutput or tuple
Parametreler
- images_and_prompts (
list[str | PIL.Image.Image | torch.Tensor]) — Görsel üretimini yönlendirmek için istem ve görsellerin listesi. - weights — (
list[float]):images_and_promptsiçindeki her koşul için ağırlıkların listesi - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - latents (
torch.Tensor, isteğe bağlı) — Gaussian dağılımdan örneklenmiş, gürültülü ve önceden oluşturulmuş latents; görüntü üretimi için girdi olarak kullanılabilir. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgelegeneratorkullanılarak örneklemeye dayalı bir latents tensörü oluşturulur. - negative_prior_prompt (
str, isteğe bağlı) — Öncül difüzyon sürecini yönlendirmemek için kullanılan istem. Yönlendirme kullanılmadığında yok sayılır (yaniguidance_scale1'den küçükse yok sayılır). - negative_prompt (
strveyalist[str], isteğe bağlı) — Görsel üretimini yönlendirmemek için kullanılan istem. Yönlendirme kullanılmadığında yok sayılır (yaniguidance_scale1'den küçükse yok sayılır). - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına.
Dönüş değeri
KandinskyPriorPipelineOutput veya tuple
İçpolalama için önceki hattı kullanırken çağrılan işlev.
Örnekler:
>>> from diffusers import KandinskyV22PriorPipeline, KandinskyV22Pipeline
>>> from diffusers.utils import load_image
>>> import PIL
>>> import torch
>>> from torchvision import transforms
>>> pipe_prior = KandinskyV22PriorPipeline.from_pretrained(
... "kandinsky-community/kandinsky-2-2-prior", torch_dtype=torch.float16
... )
>>> pipe_prior.to("cuda")
>>> img1 = load_image(
... "https://huggingface.co/datasets/hf-internal-testing/diffusers-images/resolve/main"
... "/kandinsky/cat.png"
... )
>>> img2 = load_image(
... "https://huggingface.co/datasets/hf-internal-testing/diffusers-images/resolve/main"
... "/kandinsky/starry_night.jpeg"
... )
>>> images_texts = ["a cat", img1, img2]
>>> weights = [0.3, 0.3, 0.4]
>>> out = pipe_prior.interpolate(images_texts, weights)
>>> pipe = KandinskyV22Pipeline.from_pretrained(
... "kandinsky-community/kandinsky-2-2-decoder", torch_dtype=torch.float16
... )
>>> pipe.to("cuda")
>>> image = pipe(
... image_embeds=out.image_embeds,
... negative_image_embeds=out.negative_image_embeds,
... height=768,
... width=768,
... num_inference_steps=50,
... ).images[0]
>>> image.save("starry_cat.png")KandinskyV22Pipeline
sınıf diffusers.KandinskyV22Pipeline
< source >( unet: UNet2DConditionModelscheduler: DDPMSchedulermovq: VQModel )
Parametreler
- scheduler (
DDIMScheduler|DDPMScheduler) — Görsel latentlerini üretmek içinunetile birlikte kullanılacak bir zamanlayıcı. - unet (UNet2DConditionModel) — Görsel gömümünü gürültüden arındırmak için koşullu U-Net mimarisi.
- movq (VQModel) — Latentlerden görüntü üretmek için MoVQ Dekodlayıcı.
Kandinsky kullanılarak metinden görüntüye üretim hattı
Bu model DiffusionPipeline sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın.
__call__
< source >( image_embeds: typing.Union[torch.Tensor, list[torch.Tensor]]negative_image_embeds: typing.Union[torch.Tensor, list[torch.Tensor]]height: int = 512width: int = 512num_inference_steps: int = 100guidance_scale: float = 4.0num_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Truecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']**kwargs ) → ImagePipelineOutput or tuple
Parametreler
- image_embeds (
torch.Tensorveyalist[torch.Tensor]) — Görsel üretimi koşullandırmak için kullanılacak metin istemine ait klip görsel gömme değerleri. - negative_image_embeds (
torch.Tensorveyalist[torch.Tensor]) — Negatif metin istemi için CLIP gömme görselleri, görsel üretimini koşullandırmak için kullanılacaktır. - height (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden yüksekliği. - width (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden genişliği. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - latents (
torch.Tensor, isteğe bağlı) — Gaussian dağılımdan örneklenmiş, gürültülü ve önceden oluşturulmuş latents; görüntü üretimi için girdi olarak kullanılabilir. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgelegeneratorkullanılarak örneklemeye dayalı bir latents tensörü oluşturulur. - output_type (
str, isteğe bağlı, varsayılan"pil") — Görsel oluşturma çıktısının biçimi. Şunlardan birini seçin:"pil"(PIL.Image.Image),"np"(np.array) veya"pt"(torch.Tensor). - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine ImagePipelineOutput döndürülüp döndürülmemesi. - callback_on_step_end (
Callable, isteğe bağlı) — Çıkarım sırasında her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict).callback_kwargs,callback_on_step_end_tensor_inputstarafından belirtilen tüm tensörlerin listesini içerir. - callback_on_step_end_tensor_inputs (
list, isteğe bağlı) —callback_on_step_endişlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler,callback_kwargsargümanı olarak geçirilir. Yalnızca pipeline sınıfınızın._callback_tensor_inputsözniteliğinde listelenen değişkenleri dahil edebilirsiniz.
Dönüş değeri
ImagePipelineOutput veya tuple
Üretim için pipeline çağrıldığında tetiklenen işlev.
Örnekler:
>>> from diffusers import KandinskyV22Pipeline, KandinskyV22PriorPipeline
>>> import torch
>>> pipe_prior = KandinskyV22PriorPipeline.from_pretrained("kandinsky-community/kandinsky-2-2-prior")
>>> pipe_prior.to("cuda")
>>> prompt = "red cat, 4k photo"
>>> out = pipe_prior(prompt)
>>> image_emb = out.image_embeds
>>> zero_image_emb = out.negative_image_embeds
>>> pipe = KandinskyV22Pipeline.from_pretrained("kandinsky-community/kandinsky-2-2-decoder")
>>> pipe.to("cuda")
>>> image = pipe(
... image_embeds=image_emb,
... negative_image_embeds=zero_image_emb,
... height=768,
... width=768,
... num_inference_steps=50,
... ).images
>>> image[0].save("cat.png")KandinskyV22CombinedPipeline
sınıf diffusers.KandinskyV22CombinedPipeline
< source >( unet: UNet2DConditionModelscheduler: DDPMSchedulermovq: VQModelprior_prior: PriorTransformerprior_image_encoder: CLIPVisionModelWithProjectionprior_text_encoder: CLIPTextModelWithProjectionprior_tokenizer: CLIPTokenizerprior_scheduler: UnCLIPSchedulerprior_image_processor: CLIPImageProcessorPil )
Parametreler
- scheduler (
DDIMScheduler|DDPMScheduler) — Görsel latentlerini üretmek içinunetile birlikte kullanılacak bir zamanlayıcı. - unet (UNet2DConditionModel) — Görsel gömümünü gürültüden arındırmak için koşullu U-Net mimarisi.
- movq (VQModel) — Latentlerden görüntü üretmek için MoVQ Dekodlayıcı.
- prior_prior (PriorTransformer) — Metin gömümünden görüntü gömümünü yaklaşık olarak elde etmek için kullanılan standart unCLIP önceli.
- prior_image_encoder (
CLIPVisionModelWithProjection) — Donmuş görüntü kodlayıcı. - prior_text_encoder (
CLIPTextModelWithProjection) — Donmuş metin kodlayıcı. - prior_tokenizer (
CLIPTokenizer) — CLIPTokenizer sınıfının tokenizer'ı. - prior_scheduler (
UnCLIPScheduler) —priorile birlikte kullanılarak gömme (embedding) üretmek için kullanılacak bir zamanlayıcı (scheduler). - prior_image_processor (
CLIPImageProcessor) — clip'ten gelen görüntüleri ön işlemek için kullanılacak bir image_processor.
Kandinsky kullanılarak metinden görüntüye üretim için Birleşik Pipeline
Bu model DiffusionPipeline sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın.
__call__
< source >( prompt: str | list[str]negative_prompt: str | list[str] | None = Nonenum_inference_steps: int = 100guidance_scale: float = 4.0num_images_per_prompt: int = 1height: int = 512width: int = 512prior_guidance_scale: float = 4.0prior_num_inference_steps: int = 25generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'callback: typing.Optional[typing.Callable[[int, int, torch.Tensor], NoneType]] = Nonecallback_steps: int = 1return_dict: bool = Trueprior_callback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Noneprior_callback_on_step_end_tensor_inputs: list = ['latents']callback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents'] ) → ImagePipelineOutput or tuple
Parametreler
- prompt (
strveyalist[str]) — Görsel üretimi yönlendirmek için istem veya istemler. - negative_prompt (
strveyalist[str], isteğe bağlı) — Görsel üretimini yönlendirmemek için kullanılan istem veya istemler. Yönlendirme kullanılmadığında yok sayılır (yaniguidance_scale1'den küçükse yok sayılır). - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - height (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden yüksekliği. - width (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden genişliği. - prior_guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'ın 2. denklemindekiwolarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptmetniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - prior_num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - latents (
torch.Tensor, isteğe bağlı) — Gaussian dağılımdan örneklenmiş, gürültülü ve önceden oluşturulmuş latents; görüntü üretimi için girdi olarak kullanılabilir. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgelegeneratorkullanılarak örneklemeye dayalı bir latents tensörü oluşturulur. - output_type (
str, isteğe bağlı, varsayılan"pil") — Görsel oluşturma çıktısının biçimi. Şunlardan birini seçin:"pil"(PIL.Image.Image),"np"(np.array) veya"pt"(torch.Tensor). - callback (
Callable, isteğe bağlı) — Çıkarım sırasında hercallback_stepsadımda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback(step: int, timestep: int, latents: torch.Tensor). - callback_steps (
int, isteğe bağlı, varsayılan 1) —callbackişlevinin çağrılma sıklığı. Belirtilmezse, callback her adımda çağrılır. - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine ImagePipelineOutput döndürülüp döndürülmemesi. - prior_callback_on_step_end (
Callable, isteğe bağlı) — Öncül (prior) hattının çıkarımı sırasında, her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:prior_callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict). - prior_callback_on_step_end_tensor_inputs (
list, isteğe bağlı) —prior_callback_on_step_endişlevi için girdi tensörlerinin listesi. Listede belirtilen tensörlercallback_kwargsargümanı olarak geçirilir. Öncelik hattı sınıfınızın._callback_tensor_inputsözniteliğinde listelenen değişkenleri dahil edebilirsiniz. - callback_on_step_end (
Callable, isteğe bağlı) — Decoder hattının çıkarımı sırasında, her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict).callback_kwargs,callback_on_step_end_tensor_inputstarafından belirtildiği üzere, tüm tensörlerin listesini içerir. - callback_on_step_end_tensor_inputs (
list, isteğe bağlı) —callback_on_step_endişlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler,callback_kwargsargümanı olarak geçirilir. Yalnızca pipeline sınıfınızın._callback_tensor_inputsözniteliğinde listelenen değişkenleri dahil edebilirsiniz.
Dönüş değeri
ImagePipelineOutput veya tuple
Üretim için pipeline çağrıldığında tetiklenen işlev.
Örnekler:
from diffusers import AutoPipelineForText2Image
import torch
pipe = AutoPipelineForText2Image.from_pretrained(
"kandinsky-community/kandinsky-2-2-decoder", torch_dtype=torch.float16
)
pipe.enable_model_cpu_offload()
prompt = "A lion in galaxies, spirals, nebulae, stars, smoke, iridescent, intricate detail, octane render, 8k"
image = pipe(prompt=prompt, num_inference_steps=25).images[0]enable_sequential_cpu_offload
< source >( gpu_id: int | None = Nonedevice: typing.Union[torch.device, str] = None )
Offloads all models to CPU using accelerate, significantly reducing memory usage. When called, unet,
text_encoder, vae and safety checker have their state dicts saved to CPU and then are moved to a torch.device('meta') and loaded to GPU only when their specific submodule has itsforwardmethod called. Note that offloading happens on a submodule basis. Memory savings are higher than withenable_model_cpu_offload`, but performance is lower.
KandinskyV22ControlnetPipeline
sınıf diffusers.KandinskyV22ControlnetPipeline
< source >( unet: UNet2DConditionModelscheduler: DDPMSchedulermovq: VQModel )
Parametreler
- scheduler (DDIMScheduler) —
Görsel latentleri üretmek için
unetile birlikte kullanılacak bir zamanlayıcı. - unet (UNet2DConditionModel) — Görsel gömümünü gürültüden arındırmak için koşullu U-Net mimarisi.
- movq (VQModel) — Latentlerden görüntü üretmek için MoVQ Dekodlayıcı.
Kandinsky kullanılarak metinden görüntüye üretim hattı
Bu model DiffusionPipeline sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın.
__call__
< source >( image_embeds: typing.Union[torch.Tensor, list[torch.Tensor]]negative_image_embeds: typing.Union[torch.Tensor, list[torch.Tensor]]hint: Tensorheight: int = 512width: int = 512num_inference_steps: int = 100guidance_scale: float = 4.0num_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'callback: typing.Optional[typing.Callable[[int, int, torch.Tensor], NoneType]] = Nonecallback_steps: int = 1return_dict: bool = True ) → ImagePipelineOutput or tuple
Parametreler
- hint (
torch.Tensor) — Controlnet koşulu. - image_embeds (
torch.Tensorveyalist[torch.Tensor]) — Görsel üretimi koşullandırmak için kullanılacak metin istemine ait klip görsel gömme değerleri. - negative_image_embeds (
torch.Tensorveyalist[torch.Tensor]) — Negatif metin istemi için CLIP gömme görselleri, görsel üretimini koşullandırmak için kullanılacaktır. - height (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden yüksekliği. - width (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden genişliği. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - latents (
torch.Tensor, isteğe bağlı) — Gaussian dağılımdan örneklenmiş, gürültülü ve önceden oluşturulmuş latents; görüntü üretimi için girdi olarak kullanılabilir. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgelegeneratorkullanılarak örneklemeye dayalı bir latents tensörü oluşturulur. - output_type (
str, isteğe bağlı, varsayılan"pil") — Görsel oluşturma çıktısının biçimi. Şunlardan birini seçin:"pil"(PIL.Image.Image),"np"(np.array) veya"pt"(torch.Tensor). - callback (
Callable, isteğe bağlı) — Çıkarım sırasında hercallback_stepsadımda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback(step: int, timestep: int, latents: torch.Tensor). - callback_steps (
int, isteğe bağlı, varsayılan 1) —callbackişlevinin çağrılma sıklığı. Belirtilmezse, callback her adımda çağrılır. - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine ImagePipelineOutput döndürülüp döndürülmemesi.
Dönüş değeri
ImagePipelineOutput veya tuple
Üretim için pipeline çağrıldığında tetiklenen işlev.
Örnekler:
KandinskyV22PriorEmb2EmbPipeline
sınıf diffusers.KandinskyV22PriorEmb2EmbPipeline
< source >( prior: PriorTransformerimage_encoder: CLIPVisionModelWithProjectiontext_encoder: CLIPTextModelWithProjectiontokenizer: CLIPTokenizerscheduler: UnCLIPSchedulerimage_processor: CLIPImageProcessorPil )
Parametreler
- prior (PriorTransformer) — Metin gömümünden görüntü gömümünü yaklaşık olarak elde etmek için kullanılan standart unCLIP önceli.
- image_encoder (
CLIPVisionModelWithProjection) — Donmuş görüntü kodlayıcı. - text_encoder (
CLIPTextModelWithProjection) — Donmuş metin kodlayıcı. - tokenizer (
CLIPTokenizer) — CLIPTokenizer sınıfının tokenization aracı. - scheduler (
UnCLIPScheduler) — Görsel gömme üretmek içinpriorile birlikte kullanılacak bir zamanlayıcı.
Kandinsky için görüntü öncesi (prior) üretme hattı
Bu model DiffusionPipeline sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın.
__call__
< source >( prompt: str | list[str]image: typing.Union[torch.Tensor, list[torch.Tensor], PIL.Image.Image, list[PIL.Image.Image]]strength: float = 0.3negative_prompt: str | list[str] | None = Nonenum_images_per_prompt: int = 1num_inference_steps: int = 25generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Noneguidance_scale: float = 4.0output_type: str | None = 'pt'return_dict: bool = True ) → KandinskyPriorPipelineOutput or tuple
Parametreler
- prompt (
strveyalist[str]) — Görsel üretimi yönlendirmek için istem veya istemler. - image (
torch.Tensor,PIL.Image.Image,list[torch.Tensor]veyalist[PIL.Image.Image]) — Gömme için başlangıç noktası olarak kullanılacakImageveya bir görüntü partisini temsil eden tensör. Doğrudan latentler geçiriliyorsa,imageolarak görüntü latentlerini de kabul edebilir; bu durumda tekrar kodlanmaz. - strength (
float, isteğe bağlı, varsayılan 0.8) — Kavramsal olarak, referansimage'in ne kadar dönüştürüleceğini belirtir. 0 ile 1 arasında olmalıdır.imagebir başlangıç noktası olarak kullanılacak vestrengthdeğeri arttıkça ona daha fazla gürültü eklenecektir. Gürültü azaltma adımlarının sayısı, başlangıçta eklenen gürültü miktarına bağlıdır. - negative_prompt (
strveyalist[str], isteğe bağlı) — Görsel üretimini yönlendirmemek için kullanılan istem veya istemler. Yönlendirme kullanılmadığında yok sayılır (yaniguidance_scale1'den küçükse yok sayılır). - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - output_type (
str, isteğe bağlı, varsayılan"pt") — Görsel oluşturma çıktısının biçimi. Şunlardan birini seçin:"np"(np.array) veya"pt"(torch.Tensor). - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine ImagePipelineOutput döndürülüp döndürülmemesi.
Dönüş değeri
KandinskyPriorPipelineOutput veya tuple
Üretim için pipeline çağrıldığında tetiklenen işlev.
Örnekler:
>>> from diffusers import KandinskyV22Pipeline, KandinskyV22PriorEmb2EmbPipeline
>>> import torch
>>> pipe_prior = KandinskyPriorPipeline.from_pretrained(
... "kandinsky-community/kandinsky-2-2-prior", torch_dtype=torch.float16
... )
>>> pipe_prior.to("cuda")
>>> prompt = "red cat, 4k photo"
>>> img = load_image(
... "https://huggingface.co/datasets/hf-internal-testing/diffusers-images/resolve/main"
... "/kandinsky/cat.png"
... )
>>> image_emb, nagative_image_emb = pipe_prior(prompt, image=img, strength=0.2).to_tuple()
>>> pipe = KandinskyPipeline.from_pretrained(
... "kandinsky-community/kandinsky-2-2-decoder, torch_dtype=torch.float16"
... )
>>> pipe.to("cuda")
>>> image = pipe(
... image_embeds=image_emb,
... negative_image_embeds=negative_image_emb,
... height=768,
... width=768,
... num_inference_steps=100,
... ).images
>>> image[0].save("cat.png")interpolate
< source >( images_and_prompts: listweights: listnum_images_per_prompt: int = 1num_inference_steps: int = 25generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Nonenegative_prior_prompt: str | None = Nonenegative_prompt: str = ''guidance_scale: float = 4.0device = None ) → KandinskyPriorPipelineOutput or tuple
Parametreler
- images_and_prompts (
list[str | PIL.Image.Image | torch.Tensor]) — Görsel üretimini yönlendirmek için istem ve görsellerin listesi. - weights — (
list[float]):images_and_promptsiçindeki her koşul için ağırlıkların listesi - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - latents (
torch.Tensor, isteğe bağlı) — Gaussian dağılımdan örneklenmiş, gürültülü ve önceden oluşturulmuş latents; görüntü üretimi için girdi olarak kullanılabilir. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgelegeneratorkullanılarak örneklemeye dayalı bir latents tensörü oluşturulur. - negative_prior_prompt (
str, isteğe bağlı) — Öncül difüzyon sürecini yönlendirmemek için kullanılan istem. Yönlendirme kullanılmadığında yok sayılır (yaniguidance_scale1'den küçükse yok sayılır). - negative_prompt (
strveyalist[str], isteğe bağlı) — Görsel üretimini yönlendirmemek için kullanılan istem. Yönlendirme kullanılmadığında yok sayılır (yaniguidance_scale1'den küçükse yok sayılır). - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına.
Dönüş değeri
KandinskyPriorPipelineOutput veya tuple
İçpolalama için önceki hattı kullanırken çağrılan işlev.
Örnekler:
>>> from diffusers import KandinskyV22PriorEmb2EmbPipeline, KandinskyV22Pipeline
>>> from diffusers.utils import load_image
>>> import PIL
>>> import torch
>>> from torchvision import transforms
>>> pipe_prior = KandinskyV22PriorPipeline.from_pretrained(
... "kandinsky-community/kandinsky-2-2-prior", torch_dtype=torch.float16
... )
>>> pipe_prior.to("cuda")
>>> img1 = load_image(
... "https://huggingface.co/datasets/hf-internal-testing/diffusers-images/resolve/main"
... "/kandinsky/cat.png"
... )
>>> img2 = load_image(
... "https://huggingface.co/datasets/hf-internal-testing/diffusers-images/resolve/main"
... "/kandinsky/starry_night.jpeg"
... )
>>> images_texts = ["a cat", img1, img2]
>>> weights = [0.3, 0.3, 0.4]
>>> image_emb, zero_image_emb = pipe_prior.interpolate(images_texts, weights)
>>> pipe = KandinskyV22Pipeline.from_pretrained(
... "kandinsky-community/kandinsky-2-2-decoder", torch_dtype=torch.float16
... )
>>> pipe.to("cuda")
>>> image = pipe(
... image_embeds=image_emb,
... negative_image_embeds=zero_image_emb,
... height=768,
... width=768,
... num_inference_steps=150,
... ).images[0]
>>> image.save("starry_cat.png")KandinskyV22Img2ImgPipeline
sınıf diffusers.KandinskyV22Img2ImgPipeline
< source >( unet: UNet2DConditionModelscheduler: DDPMSchedulermovq: VQModel )
Parametreler
- scheduler (DDIMScheduler) —
Görsel latentleri üretmek için
unetile birlikte kullanılacak bir zamanlayıcı. - unet (UNet2DConditionModel) — Görsel gömümünü gürültüden arındırmak için koşullu U-Net mimarisi.
- movq (VQModel) — Latentlerden görüntü üretmek için MoVQ Dekodlayıcı.
Kandinsky kullanılarak görüntüden görüntüye üretim için Pipeline
Bu model DiffusionPipeline sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın.
__call__
< source >( image_embeds: typing.Union[torch.Tensor, list[torch.Tensor]]image: typing.Union[torch.Tensor, list[torch.Tensor], PIL.Image.Image, list[PIL.Image.Image]]negative_image_embeds: typing.Union[torch.Tensor, list[torch.Tensor]]height: int = 512width: int = 512num_inference_steps: int = 100guidance_scale: float = 4.0strength: float = 0.3num_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Noneoutput_type: str | None = 'pil'return_dict: bool = Truecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']**kwargs ) → ImagePipelineOutput or tuple
Parametreler
- image_embeds (
torch.Tensorveyalist[torch.Tensor]) — Görsel üretimi koşullandırmak için kullanılacak metin istemine ait klip görsel gömme değerleri. - image (
torch.Tensor,PIL.Image.Image,np.ndarray,list[torch.Tensor],list[PIL.Image.Image]veyalist[np.ndarray]) — Süreç için başlangıç noktası olarak kullanılacakImageveya bir görüntü partisini temsil eden tensör. Doğrudan latentler geçiriliyorsa,imageolarak görüntü latentlerini de kabul edebilir; bu durumda yeniden kodlanmaz. - strength (
float, isteğe bağlı, varsayılan 0.8) — Kavramsal olarak, referansimage'in ne kadar dönüştürüleceğini belirtir. 0 ile 1 arasında olmalıdır.imagebir başlangıç noktası olarak kullanılacak vestrengthdeğeri arttıkça ona daha fazla gürültü eklenecektir. Gürültü azaltma adımlarının sayısı, başlangıçta eklenen gürültü miktarına bağlıdır.strength1 olduğunda, eklenen gürültü maksimum seviyeye ulaşacak ve gürültü azaltma süreci,num_inference_stepsiçinde belirtilen tam tekrar sayısı kadar çalışacaktır. Dolayısıyla 1 değeri,image'i fiilen yok sayar. - negative_image_embeds (
torch.Tensorveyalist[torch.Tensor]) — Negatif metin istemi için CLIP gömme görselleri, görsel üretimini koşullandırmak için kullanılacaktır. - height (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden yüksekliği. - width (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden genişliği. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - output_type (
str, isteğe bağlı, varsayılan"pil") — Görsel oluşturma çıktısının biçimi. Şunlardan birini seçin:"pil"(PIL.Image.Image),"np"(np.array) veya"pt"(torch.Tensor). - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine ImagePipelineOutput döndürülüp döndürülmemesi. - callback_on_step_end (
Callable, isteğe bağlı) — Çıkarım sırasında her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict).callback_kwargs,callback_on_step_end_tensor_inputstarafından belirtilen tüm tensörlerin listesini içerir. - callback_on_step_end_tensor_inputs (
list, isteğe bağlı) —callback_on_step_endişlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler,callback_kwargsargümanı olarak geçirilir. Yalnızca pipeline sınıfınızın._callback_tensor_inputsözniteliğinde listelenen değişkenleri dahil edebilirsiniz.
Dönüş değeri
ImagePipelineOutput veya tuple
Üretim için pipeline çağrıldığında tetiklenen işlev.
Örnekler:
KandinskyV22Img2ImgCombinedPipeline
sınıf diffusers.KandinskyV22Img2ImgCombinedPipeline
< source >( unet: UNet2DConditionModelscheduler: DDPMSchedulermovq: VQModelprior_prior: PriorTransformerprior_image_encoder: CLIPVisionModelWithProjectionprior_text_encoder: CLIPTextModelWithProjectionprior_tokenizer: CLIPTokenizerprior_scheduler: UnCLIPSchedulerprior_image_processor: CLIPImageProcessorPil )
Parametreler
- scheduler (
DDIMScheduler|DDPMScheduler) — Görsel latentlerini üretmek içinunetile birlikte kullanılacak bir zamanlayıcı. - unet (UNet2DConditionModel) — Görsel gömümünü gürültüden arındırmak için koşullu U-Net mimarisi.
- movq (VQModel) — Latentlerden görüntü üretmek için MoVQ Dekodlayıcı.
- prior_prior (PriorTransformer) — Metin gömümünden görüntü gömümünü yaklaşık olarak elde etmek için kullanılan standart unCLIP önceli.
- prior_image_encoder (
CLIPVisionModelWithProjection) — Donmuş görüntü kodlayıcı. - prior_text_encoder (
CLIPTextModelWithProjection) — Donmuş metin kodlayıcı. - prior_tokenizer (
CLIPTokenizer) — CLIPTokenizer sınıfının tokenizer'ı. - prior_scheduler (
UnCLIPScheduler) —priorile birlikte kullanılarak gömme (embedding) üretmek için kullanılacak bir zamanlayıcı (scheduler). - prior_image_processor (
CLIPImageProcessor) — clip'ten gelen görüntüleri ön işlemek için kullanılacak bir image_processor.
Kandinsky kullanılarak görüntüden görüntüye üretim için Birleşik Pipeline
Bu model DiffusionPipeline sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın.
__call__
< source >( prompt: str | list[str]image: typing.Union[torch.Tensor, list[torch.Tensor], PIL.Image.Image, list[PIL.Image.Image]]negative_prompt: str | list[str] | None = Nonenum_inference_steps: int = 100guidance_scale: float = 4.0strength: float = 0.3num_images_per_prompt: int = 1height: int = 512width: int = 512prior_guidance_scale: float = 4.0prior_num_inference_steps: int = 25generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'callback: typing.Optional[typing.Callable[[int, int, torch.Tensor], NoneType]] = Nonecallback_steps: int = 1return_dict: bool = Trueprior_callback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Noneprior_callback_on_step_end_tensor_inputs: list = ['latents']callback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents'] ) → ImagePipelineOutput or tuple
Parametreler
- prompt (
strveyalist[str]) — Görsel üretimi yönlendirmek için istem veya istemler. - image (
torch.Tensor,PIL.Image.Image,np.ndarray,list[torch.Tensor],list[PIL.Image.Image]veyalist[np.ndarray]) — Süreç için başlangıç noktası olarak kullanılacakImageveya bir görüntü partisini temsil eden tensör. Doğrudan latentler geçiriliyorsa,imageolarak görüntü latentlerini de kabul edebilir; bu durumda yeniden kodlanmaz. - negative_prompt (
strveyalist[str], isteğe bağlı) — Görsel üretimini yönlendirmemek için kullanılan istem veya istemler. Yönlendirme kullanılmadığında yok sayılır (yaniguidance_scale1'den küçükse yok sayılır). - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - strength (
float, isteğe bağlı, varsayılan 0.3) — Kavramsal olarak, referansimage'in ne kadar dönüştürüleceğini belirtir. 0 ile 1 arasında olmalıdır.imagebir başlangıç noktası olarak kullanılacak vestrengthdeğeri arttıkça ona daha fazla gürültü eklenecektir. Gürültü azaltma adımlarının sayısı, başlangıçta eklenen gürültü miktarına bağlıdır.strength1 olduğunda, eklenen gürültü maksimum seviyeye ulaşacak ve gürültü azaltma süreci,num_inference_stepsiçinde belirtilen tam tekrar sayısı kadar çalışacaktır. Dolayısıyla 1 değeri,image'i fiilen yok sayar. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - height (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden yüksekliği. - width (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden genişliği. - prior_guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'ın 2. denklemindekiwolarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptmetniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - prior_num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - latents (
torch.Tensor, isteğe bağlı) — Gaussian dağılımdan örneklenmiş, gürültülü ve önceden oluşturulmuş latents; görüntü üretimi için girdi olarak kullanılabilir. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgelegeneratorkullanılarak örneklemeye dayalı bir latents tensörü oluşturulur. - output_type (
str, isteğe bağlı, varsayılan"pil") — Görsel oluşturma çıktısının biçimi. Şunlardan birini seçin:"pil"(PIL.Image.Image),"np"(np.array) veya"pt"(torch.Tensor). - callback (
Callable, isteğe bağlı) — Çıkarım sırasında hercallback_stepsadımda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback(step: int, timestep: int, latents: torch.Tensor). - callback_steps (
int, isteğe bağlı, varsayılan 1) —callbackişlevinin çağrılma sıklığı. Belirtilmezse, callback her adımda çağrılır. - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine ImagePipelineOutput döndürülüp döndürülmemesi. - prior_callback_on_step_end (
Callable, isteğe bağlı) — Öncül (prior) hattının çıkarımı sırasında, her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:prior_callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict). - prior_callback_on_step_end_tensor_inputs (
list, isteğe bağlı) —prior_callback_on_step_endişlevi için girdi tensörlerinin listesi. Listede belirtilen tensörlercallback_kwargsargümanı olarak geçirilir. Öncelik hattı sınıfınızın._callback_tensor_inputsözniteliğinde listelenen değişkenleri dahil edebilirsiniz. - callback_on_step_end (
Callable, isteğe bağlı) — Decoder hattının çıkarımı sırasında, her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict).callback_kwargs,callback_on_step_end_tensor_inputstarafından belirtildiği üzere, tüm tensörlerin listesini içerir. - callback_on_step_end_tensor_inputs (
list, isteğe bağlı) —callback_on_step_endişlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler,callback_kwargsargümanı olarak geçirilir. Yalnızca pipeline sınıfınızın._callback_tensor_inputsözniteliğinde listelenen değişkenleri dahil edebilirsiniz.
Dönüş değeri
ImagePipelineOutput veya tuple
Üretim için pipeline çağrıldığında tetiklenen işlev.
Örnekler:
from diffusers import AutoPipelineForImage2Image
import torch
import requests
from io import BytesIO
from PIL import Image
import os
pipe = AutoPipelineForImage2Image.from_pretrained(
"kandinsky-community/kandinsky-2-2-decoder", torch_dtype=torch.float16
)
pipe.enable_model_cpu_offload()
prompt = "A fantasy landscape, Cinematic lighting"
negative_prompt = "low quality, bad quality"
url = "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/assets/stable-samples/img2img/sketch-mountains-input.jpg"
response = requests.get(url)
image = Image.open(BytesIO(response.content)).convert("RGB")
image.thumbnail((768, 768))
image = pipe(prompt=prompt, image=original_image, num_inference_steps=25).images[0]enable_model_cpu_offload
< source >( gpu_id: int | None = Nonedevice: typing.Union[torch.device, str] = None )
Tüm modelleri accelerate kullanarak CPU'ya taşır ve performansa düşük etkiyle bellek kullanımını azaltır. enable_sequential_cpu_offload ile karşılaştırıldığında, bu yöntem bir modelin forward metodu çağrıldığında o modeli bir bütün olarak GPU'ya taşır ve model, bir sonraki model çalışana kadar GPU'da kalır. Bellek tasarrufu enable_sequential_cpu_offload ile karşılaştırıldığında daha düşüktür, ancak unet'in iteratif çalıştırılması sayesinde performans çok daha iyidir.
enable_sequential_cpu_offload
< source >( gpu_id: int | None = Nonedevice: typing.Union[torch.device, str] = None )
Offloads all models to CPU using accelerate, significantly reducing memory usage. When called, unet,
text_encoder, vae and safety checker have their state dicts saved to CPU and then are moved to a torch.device('meta') and loaded to GPU only when their specific submodule has itsforwardmethod called. Note that offloading happens on a submodule basis. Memory savings are higher than withenable_model_cpu_offload`, but performance is lower.
KandinskyV22ControlnetImg2ImgPipeline
sınıf diffusers.KandinskyV22ControlnetImg2ImgPipeline
< source >( unet: UNet2DConditionModelscheduler: DDPMSchedulermovq: VQModel )
Parametreler
- scheduler (DDIMScheduler) —
Görsel latentleri üretmek için
unetile birlikte kullanılacak bir zamanlayıcı. - unet (UNet2DConditionModel) — Görsel gömümünü gürültüden arındırmak için koşullu U-Net mimarisi.
- movq (VQModel) — Latentlerden görüntü üretmek için MoVQ Dekodlayıcı.
Kandinsky kullanılarak görüntüden görüntüye üretim için Pipeline
Bu model DiffusionPipeline sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın.
__call__
< source >( image_embeds: typing.Union[torch.Tensor, list[torch.Tensor]]image: typing.Union[torch.Tensor, list[torch.Tensor], PIL.Image.Image, list[PIL.Image.Image]]negative_image_embeds: typing.Union[torch.Tensor, list[torch.Tensor]]hint: Tensorheight: int = 512width: int = 512num_inference_steps: int = 100guidance_scale: float = 4.0strength: float = 0.3num_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Noneoutput_type: str | None = 'pil'callback: typing.Optional[typing.Callable[[int, int, torch.Tensor], NoneType]] = Nonecallback_steps: int = 1return_dict: bool = True ) → ImagePipelineOutput or tuple
Parametreler
- image_embeds (
torch.Tensorveyalist[torch.Tensor]) — Görsel üretimi koşullandırmak için kullanılacak metin istemine ait klip görsel gömme değerleri. - image (
torch.Tensor,PIL.Image.Image,np.ndarray,list[torch.Tensor],list[PIL.Image.Image]veyalist[np.ndarray]) — Süreç için başlangıç noktası olarak kullanılacakImageveya bir görüntü partisini temsil eden tensör. Doğrudan latentler geçiriliyorsa,imageolarak görüntü latentlerini de kabul edebilir; bu durumda yeniden kodlanmaz. - strength (
float, isteğe bağlı, varsayılan 0.8) — Kavramsal olarak, referansimage'in ne kadar dönüştürüleceğini belirtir. 0 ile 1 arasında olmalıdır.imagebir başlangıç noktası olarak kullanılacak vestrengthdeğeri arttıkça ona daha fazla gürültü eklenecektir. Gürültü azaltma adımlarının sayısı, başlangıçta eklenen gürültü miktarına bağlıdır.strength1 olduğunda, eklenen gürültü maksimum seviyeye ulaşacak ve gürültü azaltma süreci,num_inference_stepsiçinde belirtilen tam tekrar sayısı kadar çalışacaktır. Dolayısıyla 1 değeri,image'i fiilen yok sayar. - hint (
torch.Tensor) — Controlnet koşulu. - negative_image_embeds (
torch.Tensorveyalist[torch.Tensor]) — Negatif metin istemi için CLIP gömme görselleri, görsel üretimini koşullandırmak için kullanılacaktır. - height (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden yüksekliği. - width (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden genişliği. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - output_type (
str, isteğe bağlı, varsayılan"pil") — Görsel oluşturma çıktısının biçimi. Şunlardan birini seçin:"pil"(PIL.Image.Image),"np"(np.array) veya"pt"(torch.Tensor). - callback (
Callable, isteğe bağlı) — Çıkarım sırasında hercallback_stepsadımda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback(step: int, timestep: int, latents: torch.Tensor). - callback_steps (
int, isteğe bağlı, varsayılan 1) —callbackişlevinin çağrılma sıklığı. Belirtilmezse, callback her adımda çağrılır. - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine ImagePipelineOutput döndürülüp döndürülmemesi.
Dönüş değeri
ImagePipelineOutput veya tuple
Üretim için pipeline çağrıldığında tetiklenen işlev.
Örnekler:
KandinskyV22InpaintPipeline
sınıf diffusers.KandinskyV22InpaintPipeline
< source >( unet: UNet2DConditionModelscheduler: DDPMSchedulermovq: VQModel )
Parametreler
- scheduler (DDIMScheduler) —
Görsel latentleri üretmek için
unetile birlikte kullanılacak bir zamanlayıcı. - unet (UNet2DConditionModel) — Görsel gömümünü gürültüden arındırmak için koşullu U-Net mimarisi.
- movq (VQModel) — Latentlerden görüntü üretmek için MoVQ Dekodlayıcı.
Kandinsky2.1 kullanarak metin yönlendirmeli görsel inpainting için Pipeline
Bu model DiffusionPipeline sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın.
__call__
< source >( image_embeds: typing.Union[torch.Tensor, list[torch.Tensor]]image: typing.Union[torch.Tensor, PIL.Image.Image]mask_image: typing.Union[PIL.Image.Image, torch.Tensor, numpy.ndarray]negative_image_embeds: typing.Union[torch.Tensor, list[torch.Tensor]]height: int = 512width: int = 512num_inference_steps: int = 100guidance_scale: float = 4.0num_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Truecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']**kwargs ) → ImagePipelineOutput or tuple
Parametreler
- image_embeds (
torch.Tensorveyalist[torch.Tensor]) — Görsel üretimi koşullandırmak için kullanılacak metin istemine ait klip görsel gömme değerleri. - image (
PIL.Image.Image) — İnpainting işlemine tabi tutulacakImageveya bir görüntü partisini temsil eden tensör, yani görüntünün bazı kısımlarımask_imageile maskeleme yapılarakprompt’a göre yeniden boyanacaktır. - mask_image (
np.array) —image’i maskelemek için bir görüntü partisini temsil eden tensör. Maske içindeki beyaz pikseller yeniden boyanırken siyah pikseller korunur.mask_imagebir PIL görüntüsü ise, kullanılmadan önce tek kanala (parlaklık) dönüştürülür. Bir tensör ise, 3 kanal yerine tek bir renk kanalı (L) içermelidir; bu durumda beklenen şekil(B, H, W, 1)olur. - negative_image_embeds (
torch.Tensorveyalist[torch.Tensor]) — Negatif metin istemi için CLIP gömme görselleri, görsel üretimini koşullandırmak için kullanılacaktır. - height (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden yüksekliği. - width (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden genişliği. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - latents (
torch.Tensor, isteğe bağlı) — Gaussian dağılımdan örneklenmiş, gürültülü ve önceden oluşturulmuş latents; görüntü üretimi için girdi olarak kullanılabilir. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgelegeneratorkullanılarak örneklemeye dayalı bir latents tensörü oluşturulur. - output_type (
str, isteğe bağlı, varsayılan"pil") — Görsel oluşturma çıktısının biçimi. Şunlardan birini seçin:"pil"(PIL.Image.Image),"np"(np.array) veya"pt"(torch.Tensor). - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine ImagePipelineOutput döndürülüp döndürülmemesi. - callback_on_step_end (
Callable, isteğe bağlı) — Çıkarım sırasında her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict).callback_kwargs,callback_on_step_end_tensor_inputstarafından belirtilen tüm tensörlerin listesini içerir. - callback_on_step_end_tensor_inputs (
list, isteğe bağlı) —callback_on_step_endişlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler,callback_kwargsargümanı olarak geçirilir. Yalnızca pipeline sınıfınızın._callback_tensor_inputsözniteliğinde listelenen değişkenleri dahil edebilirsiniz.
Dönüş değeri
ImagePipelineOutput veya tuple
Üretim için pipeline çağrıldığında tetiklenen işlev.
Örnekler:
KandinskyV22InpaintCombinedPipeline
sınıf diffusers.KandinskyV22InpaintCombinedPipeline
< source >( unet: UNet2DConditionModelscheduler: DDPMSchedulermovq: VQModelprior_prior: PriorTransformerprior_image_encoder: CLIPVisionModelWithProjectionprior_text_encoder: CLIPTextModelWithProjectionprior_tokenizer: CLIPTokenizerprior_scheduler: UnCLIPSchedulerprior_image_processor: CLIPImageProcessorPil )
Parametreler
- scheduler (
DDIMScheduler|DDPMScheduler) — Görsel latentlerini üretmek içinunetile birlikte kullanılacak bir zamanlayıcı. - unet (UNet2DConditionModel) — Görsel gömümünü gürültüden arındırmak için koşullu U-Net mimarisi.
- movq (VQModel) — Latentlerden görüntü üretmek için MoVQ Dekodlayıcı.
- prior_prior (PriorTransformer) — Metin gömümünden görüntü gömümünü yaklaşık olarak elde etmek için kullanılan standart unCLIP önceli.
- prior_image_encoder (
CLIPVisionModelWithProjection) — Donmuş görüntü kodlayıcı. - prior_text_encoder (
CLIPTextModelWithProjection) — Donmuş metin kodlayıcı. - prior_tokenizer (
CLIPTokenizer) — CLIPTokenizer sınıfının tokenizer'ı. - prior_scheduler (
UnCLIPScheduler) —priorile birlikte kullanılarak gömme (embedding) üretmek için kullanılacak bir zamanlayıcı (scheduler). - prior_image_processor (
CLIPImageProcessor) — clip'ten gelen görüntüleri ön işlemek için kullanılacak bir image_processor.
Kandinsky kullanılarak inpainting üretimi için Birleşik Pipeline
Bu model DiffusionPipeline sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın.
__call__
< source >( prompt: str | list[str]image: typing.Union[torch.Tensor, list[torch.Tensor], PIL.Image.Image, list[PIL.Image.Image]]mask_image: typing.Union[torch.Tensor, list[torch.Tensor], PIL.Image.Image, list[PIL.Image.Image]]negative_prompt: str | list[str] | None = Nonenum_inference_steps: int = 100guidance_scale: float = 4.0num_images_per_prompt: int = 1height: int = 512width: int = 512prior_guidance_scale: float = 4.0prior_num_inference_steps: int = 25generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueprior_callback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Noneprior_callback_on_step_end_tensor_inputs: list = ['latents']callback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']**kwargs ) → ImagePipelineOutput or tuple
Parametreler
- prompt (
strveyalist[str]) — Görsel üretimi yönlendirmek için istem veya istemler. - image (
torch.Tensor,PIL.Image.Image,np.ndarray,list[torch.Tensor],list[PIL.Image.Image]veyalist[np.ndarray]) — Süreç için başlangıç noktası olarak kullanılacakImageveya bir görüntü partisini temsil eden tensör. Doğrudan latentler geçiriliyorsa,imageolarak görüntü latentlerini de kabul edebilir; bu durumda yeniden kodlanmaz. - mask_image (
np.array) —image’i maskelemek için bir görüntü partisini temsil eden tensör. Maske içindeki beyaz pikseller yeniden boyanırken siyah pikseller korunur.mask_imagebir PIL görüntüsü ise, kullanılmadan önce tek kanala (parlaklık) dönüştürülür. Bir tensör ise, 3 kanal yerine tek bir renk kanalı (L) içermelidir; bu durumda beklenen şekil(B, H, W, 1)olur. - negative_prompt (
strveyalist[str], isteğe bağlı) — Görsel üretimini yönlendirmemek için kullanılan istem veya istemler. Yönlendirme kullanılmadığında yok sayılır (yaniguidance_scale1'den küçükse yok sayılır). - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'daki 2. denkleminw'si olarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - height (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden yüksekliği. - width (
int, isteğe bağlı, varsayılan 512) — Oluşturulan görüntünün piksel cinsinden genişliği. - prior_guidance_scale (
float, isteğe bağlı, varsayılan 4.0) — Classifier-Free Diffusion Guidance'de tanımlandığı gibi yönlendirme ölçeği.guidance_scale, Imagen Paper'ın 2. denklemindekiwolarak tanımlanır. Yönlendirme ölçeği,guidance_scale > 1olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği,promptmetniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle daha düşük görsel kalitesi pahasına. - prior_num_inference_steps (
int, isteğe bağlı, varsayılan 100) — Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir görüntüye yol açar. - generator (
torch.Generatorveyalist[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya torch üreteci listesi. - latents (
torch.Tensor, isteğe bağlı) — Gaussian dağılımdan örneklenmiş, gürültülü ve önceden oluşturulmuş latents; görüntü üretimi için girdi olarak kullanılabilir. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgelegeneratorkullanılarak örneklemeye dayalı bir latents tensörü oluşturulur. - output_type (
str, isteğe bağlı, varsayılan"pil") — Görsel oluşturma çıktısının biçimi. Şunlardan birini seçin:"pil"(PIL.Image.Image),"np"(np.array) veya"pt"(torch.Tensor). - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine ImagePipelineOutput döndürülüp döndürülmemesi. - prior_callback_on_step_end (
Callable, isteğe bağlı) — Çıkarım sırasında her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:prior_callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict). - prior_callback_on_step_end_tensor_inputs (
list, isteğe bağlı) —prior_callback_on_step_endişlevi için girdi tensörlerinin listesi. Listede belirtilen tensörlercallback_kwargsargümanı olarak geçirilir. Sadece pipeline sınıfınızın._callback_tensor_inputsözniteliğinde listelenen değişkenleri dahil edebilirsiniz. - callback_on_step_end (
Callable, isteğe bağlı) — Çıkarım sırasında her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev aşağıdaki argümanlarla çağrılır:callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict).callback_kwargs,callback_on_step_end_tensor_inputstarafından belirtilen tüm tensörlerin listesini içerir. - callback_on_step_end_tensor_inputs (
list, isteğe bağlı) —callback_on_step_endişlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler,callback_kwargsargümanı olarak geçirilir. Yalnızca pipeline sınıfınızın._callback_tensor_inputsözniteliğinde listelenen değişkenleri dahil edebilirsiniz.
Dönüş değeri
ImagePipelineOutput veya tuple
Üretim için pipeline çağrıldığında tetiklenen işlev.
Örnekler:
from diffusers import AutoPipelineForInpainting
from diffusers.utils import load_image
import torch
import numpy as np
pipe = AutoPipelineForInpainting.from_pretrained(
"kandinsky-community/kandinsky-2-2-decoder-inpaint", torch_dtype=torch.float16
)
pipe.enable_model_cpu_offload()
prompt = "A fantasy landscape, Cinematic lighting"
negative_prompt = "low quality, bad quality"
original_image = load_image(
"https://huggingface.co/datasets/hf-internal-testing/diffusers-images/resolve/main" "/kandinsky/cat.png"
)
mask = np.zeros((768, 768), dtype=np.float32)
# Let's mask out an area above the cat's head
mask[:250, 250:-250] = 1
image = pipe(prompt=prompt, image=original_image, mask_image=mask, num_inference_steps=25).images[0]enable_sequential_cpu_offload
< source >( gpu_id: int | None = Nonedevice: typing.Union[torch.device, str] = None )
Offloads all models to CPU using accelerate, significantly reducing memory usage. When called, unet,
text_encoder, vae and safety checker have their state dicts saved to CPU and then are moved to a torch.device('meta') and loaded to GPU only when their specific submodule has itsforwardmethod called. Note that offloading happens on a submodule basis. Memory savings are higher than withenable_model_cpu_offload`, but performance is lower.