Diffusers documentation

QwenImage

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

QwenImage

LoRA

Qwen ekibinden Qwen-Image, Qwen serisinde karmaşık metin işleme ve hassas görüntü düzenleme alanlarında önemli ilerlemeler sağlayan bir görüntü oluşturma temel modelidir. Deneyler, hem görüntü oluşturma hem de düzenleme konusunda güçlü genel yetenekler gösterdiğini, özellikle Çin dili için metin işlemede olağanüstü performans sergilediğini ortaya koymaktadır.

Qwen-Image aşağıdaki varyantlarda gelir:

model türümodel kimliği
Qwen-ImageQwen/Qwen-Image
Qwen-Image-EditQwen/Qwen-Image-Edit
Qwen-Image-Edit PlusQwen/Qwen-Image-Edit-2509

Ara çıktıları depolayarak ve yeniden kullanarak çıkarımı hızlandırmak için Önbellekleme kılavuzuna bakın.

Daha hızlı çıkarım için LoRA

lightx2v/Qwen-Image-Lightning kaynaklı bir LoRA kullanarak adım sayısını azaltmak ve çıkarımı hızlandırmak için aşağıdaki kod parçasına bakın:

Code
from diffusers import DiffusionPipeline, FlowMatchEulerDiscreteScheduler
import torch 
import math

ckpt_id = "Qwen/Qwen-Image"

# From
# https://github.com/ModelTC/Qwen-Image-Lightning/blob/342260e8f5468d2f24d084ce04f55e101007118b/generate_with_diffusers.py#L82C9-L97C10
scheduler_config = {
    "base_image_seq_len": 256,
    "base_shift": math.log(3),  # We use shift=3 in distillation
    "invert_sigmas": False,
    "max_image_seq_len": 8192,
    "max_shift": math.log(3),  # We use shift=3 in distillation
    "num_train_timesteps": 1000,
    "shift": 1.0,
    "shift_terminal": None,  # set shift_terminal to None
    "stochastic_sampling": False,
    "time_shift_type": "exponential",
    "use_beta_sigmas": False,
    "use_dynamic_shifting": True,
    "use_exponential_sigmas": False,
    "use_karras_sigmas": False,
}
scheduler = FlowMatchEulerDiscreteScheduler.from_config(scheduler_config)
pipe = DiffusionPipeline.from_pretrained(
    ckpt_id, scheduler=scheduler, dtype=torch.bfloat16
).to("cuda")  # or "mps", "xpu", "cpu"
pipe.load_lora_weights(
    "lightx2v/Qwen-Image-Lightning", weight_name="Qwen-Image-Lightning-8steps-V1.0.safetensors"
)

prompt = "a tiny astronaut hatching from an egg on the moon, Ultra HD, 4K, cinematic composition."
negative_prompt = " "
image = pipe(
    prompt=prompt,
    negative_prompt=negative_prompt,
    width=1024,
    height=1024,
    num_inference_steps=8,
    true_cfg_scale=1.0,
    generator=torch.manual_seed(0),
).images[0]
image.save("qwen_fewsteps.png")

Pipeline'daki guidance_scale parametresi, ileride çıkacak guidance-distilled modelleri desteklemek için orada durmaktadır. Dikkat edin, pipeline'a guidance_scale geçirmek etkisizdir. Classifier-free guidance'ı etkinleştirmek için lütfen true_cfg_scale ve negative_prompt (” ” gibi boş bir negatif prompt bile) geçirin; bu, classifier-free guidance hesaplamalarını etkinleştirmelidir.

QwenImageEditPlusPipeline ile çoklu görüntü referansı

QwenImageEditPlusPipeline ile birden fazla görüntü girdi referansı olarak sağlanabilir.

import torch
from PIL import Image
from diffusers import QwenImageEditPlusPipeline
from diffusers.utils import load_image

pipe = QwenImageEditPlusPipeline.from_pretrained(
    "Qwen/Qwen-Image-Edit-2509", dtype=torch.bfloat16
).to("cuda")  # or "mps", "xpu", "cpu"

image_1 = load_image("https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/grumpy.jpg")
image_2 = load_image("https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/peng.png")
image = pipe(
    image=[image_1, image_2],
    prompt='''put the penguin and the cat at a game show called "Qwen Edit Plus Games"''',
    num_inference_steps=50
).images[0]

Performans

torch.compile

Dönüştürücüde torch.compile kullanmak ~2.4x hızlanma sağlar (A100 80GB: 4.70s → 1.93s):

import torch
from diffusers import QwenImagePipeline

pipe = QwenImagePipeline.from_pretrained("Qwen/Qwen-Image", dtype=torch.bfloat16).to("cuda")  # or "mps", "xpu", "cpu"
pipe.transformer = torch.compile(pipe.transformer)

# First call triggers compilation (~7s overhead)
# Subsequent calls run at ~2.4x faster
image = pipe("a cat", num_inference_steps=50).images[0]

Değişken Uzunlukta İfadelerle Toplu Çıkarım

Farklı uzunluklarda istemlerle classifier-free guidance (CFG) kullanıldığında, pipeline, attention masking yoluyla padding'i doğru şekilde işler. Bu, padding token'larının üretilen çıktıyı etkilememesini sağlar.

# CFG with different prompt lengths works correctly
image = pipe(
    prompt="A cat",
    negative_prompt="blurry, low quality, distorted",
    true_cfg_scale=3.5,
    num_inference_steps=50,
).images[0]

Ayrıntılı kıyaslama betikleri ve sonuçları için bu gist'e bakın.

QwenImagePipeline

sınıf diffusers.QwenImagePipeline

< >

( scheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLQwenImagetext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2Tokenizertransformer: QwenImageTransformer2DModel )

Parametreler

Metinden görüntüye üretim için QwenImage hattı.

__call__

< >

( prompt: str | list[str] = Nonenegative_prompt: str | list[str] = Nonetrue_cfg_scale: float = 4.0height: int | None = Nonewidth: int | None = Nonenum_inference_steps: int = 50sigmas: list[float] | None = Noneguidance_scale: float | None = Nonenum_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_mask: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = Nonecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']max_sequence_length: int = 512 ) → ~pipelines.qwenimage.QwenImagePipelineOutput or tuple

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa bunun yerine prompt_embeds geçirilmelidir.
  • negative_prompt (str veya list[str], isteğe bağlı) — Görsel üretimini yönlendirmemesi istenen istem veya istemler. Tanımlanmazsa, bunun yerine negative_prompt_embeds geçirilmelidir. Yönlendirme kullanılmadığında yok sayılır (yani true_cfg_scale, 1'den büyük değilse yok sayılır).
  • true_cfg_scale (float, isteğe bağlı, varsayılan 1.0) — Classifier-Free Diffusion Guidance makalesinde tanımlanan yönlendirme ölçeği. true_cfg_scale, Imagen Paper makalesindeki 2. denklemindeki w olarak tanımlanır. Classifier-free guidance, true_cfg_scale > 1 olarak ayarlanarak ve bir negative_prompt sağlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği, prompt metniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur.
  • height (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden yüksekliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • width (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden genişliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • num_inference_steps (int, isteğe bağlı, varsayılan 50) — 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.
  • sigmas (list[float], isteğe bağlı) — set_timesteps yöntemlerinde sigmas argümanını destekleyen zamanlayıcılarla gürültü azaltma sürecinde kullanılacak özel sigmalar. Tanımlanmamışsa, num_inference_steps geçirildiğinde varsayılan davranış kullanılır.
  • guidance_scale (float, isteğe bağlı, varsayılan None) — Guidance distille edilmiş modeller için bir guidance scale değeri. Geleneksel classifier-free guidance'dan farklı olarak, guidance scale'in çıkarım sırasında gürültü tahmini yeniden ölçeklendirmesi yoluyla uygulandığı bu yöntemde, guidance distille edilmiş modeller guidance scale'i doğrudan forward pass sırasında bir giriş parametresi olarak alır. Guidance scale, guidance_scale > 1 olarak ayarlanarak etkinleştirilir. Daha yüksek guidance scale, prompt ile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur. Pipeline'daki bu parametre, gelecekte ortaya çıkacak guidance-distille edilmiş modelleri desteklemek için orada durmaktadır. Guidance distille edilmiş modeller kullanılmadığında yok sayılır. Geleneksel classifier-free guidance'i etkinleştirmek için lütfen true_cfg_scale > 1.0 ve negative_prompt (boş bir negatif prompt bile, örneğin ” ”, classifier-free guidance hesaplamalarını etkinleştirmelidir) iletin.
  • num_images_per_prompt (int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı.
  • generator (torch.Generator veya list[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 rastgele generator kullanılarak örneklemeye dayalı bir latents tensörü oluşturulur.
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.
  • prompt_embeds_mask (torch.Tensor, isteğe bağlı) — prompt_embeds için dikkat maskesi.
  • negative_prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş negatif metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. istem ağırlıklandırması. Sağlanmazsa, negative_prompt_embeds, negative_prompt girdi argümanından oluşturulur.
  • negative_prompt_embeds_mask (torch.Tensor, isteğe bağlı) — negative_prompt_embeds için dikkat maskesi.
  • 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 veya np.array.
  • return_dict (bool, isteğe bağlı, varsayılan True) — Düz bir tuple yerine ~pipelines.qwenimage.QwenImagePipelineOutput döndürülüp döndürülmemesi.
  • attention_kwargs (dict, isteğe bağlı) — Belirtilirse, diffusers.models.attention_processor içindeki self.processor altında tanımlanan AttentionProcessor'a iletilen bir kwargs sözlüğü.
  • 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_inputs tarafından belirtilen tüm tensörlerin listesini içerir.
  • callback_on_step_end_tensor_inputs (list, isteğe bağlı) — callback_on_step_end işlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler, callback_kwargs argümanı olarak geçirilir. Yalnızca pipeline sınıfınızın ._callback_tensor_inputs özniteliğinde listelenen değişkenleri dahil edebilirsiniz.
  • max_sequence_length (int, varsayılan 512) — prompt ile kullanılacak maksimum dizi uzunluğu.

Dönüş değeri

~pipelines.qwenimage.QwenImagePipelineOutput veya tuple

return_dict True ise ~pipelines.qwenimage.QwenImagePipelineOutput, aksi halde tuple. Tuple döndürülürken, ilk öğe üretilen görsellerin listesidir.

Üretim için pipeline çağrıldığında tetiklenen işlev.

Örnekler:

>>> import torch
>>> from diffusers import QwenImagePipeline

>>> pipe = QwenImagePipeline.from_pretrained("Qwen/Qwen-Image", torch_dtype=torch.bfloat16)
>>> pipe.to("cuda")
>>> prompt = "A cat holding a sign that says hello world"
>>> # Depending on the variant being used, the pipeline call will slightly vary.
>>> # Refer to the pipeline documentation for more details.
>>> image = pipe(prompt, num_inference_steps=50).images[0]
>>> image.save("qwenimage.png")

encode_prompt

< >

( prompt: str | list[str]device: typing.Optional[torch.device] = Nonenum_images_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int = 1024 )

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — kodlanacak prompt
  • device — (torch.device): torch cihazı
  • num_images_per_prompt (int) — her prompt için oluşturulacak görsel sayısı
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.

QwenImageImg2ImgPipeline

sınıf diffusers.QwenImageImg2ImgPipeline

< >

( scheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLQwenImagetext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2Tokenizertransformer: QwenImageTransformer2DModel )

Parametreler

Metinden görüntüye üretim için QwenImage hattı.

__call__

< >

( prompt: str | list[str] = Nonenegative_prompt: str | list[str] = Nonetrue_cfg_scale: float = 4.0image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]] = Noneheight: int | None = Nonewidth: int | None = Nonestrength: float = 0.6num_inference_steps: int = 50sigmas: list[float] | None = Noneguidance_scale: float | None = Nonenum_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_mask: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = Nonecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']max_sequence_length: int = 512 ) → ~pipelines.qwenimage.QwenImagePipelineOutput or tuple

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa bunun yerine prompt_embeds geçirilmelidir.
  • negative_prompt (str veya list[str], isteğe bağlı) — Görsel üretimini yönlendirmemesi istenen istem veya istemler. Tanımlanmazsa, bunun yerine negative_prompt_embeds geçirilmelidir. Yönlendirme kullanılmadığında yok sayılır (yani true_cfg_scale, 1'den büyük değilse yok sayılır).
  • image (torch.Tensor, PIL.Image.Image, np.ndarray, list[torch.Tensor], list[PIL.Image.Image] veya list[np.ndarray]) — Başlangıç noktası olarak kullanılacak bir görüntü partisyonunu temsil eden Image, numpy dizisi veya tensör. Hem numpy dizisi hem de pytorch tensörü için beklenen değer aralığı [0, 1] arasındadır. Tensör veya tensör listesi ise beklenen şekil (B, C, H, W) veya (C, H, W) olmalıdır. Numpy dizisi veya dizi listesi ise beklenen şekil (B, H, W, C) veya (H, W, C) olmalıdır. Ayrıca görüntü latentlerini de image olarak kabul edebilir, ancak latentler doğrudan geçirilirse tekrar kodlanmaz.
  • true_cfg_scale (float, isteğe bağlı, varsayılan 1.0) — Classifier-Free Diffusion Guidance makalesinde tanımlanan yönlendirme ölçeği. true_cfg_scale, Imagen Paper makalesindeki 2. denklemindeki w olarak tanımlanır. Classifier-free guidance, true_cfg_scale > 1 olarak ayarlanarak ve bir negative_prompt sağlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği, prompt metniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur.
  • height (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden yüksekliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • width (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden genişliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • strength (float, isteğe bağlı, varsayılan 1.0) — Referans image'in dönüştürülme derecesini belirtir. 0 ile 1 arasında olmalıdır. image bir başlangıç noktası olarak kullanılır ve strength değeri arttıkça daha fazla gürültü eklenir. Gürültü azaltma adımlarının sayısı, başlangıçta eklenen gürültü miktarına bağlıdır. strength 1 olduğunda eklenen gürültü maksimumdur ve gürültü azaltma süreci, num_inference_steps içinde belirtilen tam tekrar sayısı kadar çalışır. 1 değeri, image'i temelde yok sayar.
  • num_inference_steps (int, isteğe bağlı, varsayılan 50) — 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.
  • sigmas (list[float], isteğe bağlı) — set_timesteps yöntemlerinde sigmas argümanını destekleyen zamanlayıcılarla gürültü azaltma sürecinde kullanılacak özel sigmalar. Tanımlanmamışsa, num_inference_steps geçirildiğinde varsayılan davranış kullanılır.
  • guidance_scale (float, isteğe bağlı, varsayılan None) — Guidance distille edilmiş modeller için bir guidance scale değeri. Geleneksel classifier-free guidance'dan farklı olarak, guidance scale'in çıkarım sırasında gürültü tahmini yeniden ölçeklendirmesi yoluyla uygulandığı bu yöntemde, guidance distille edilmiş modeller guidance scale'i doğrudan forward pass sırasında bir giriş parametresi olarak alır. Guidance scale, guidance_scale > 1 olarak ayarlanarak etkinleştirilir. Daha yüksek guidance scale, prompt ile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur. Pipeline'daki bu parametre, gelecekte ortaya çıkacak guidance-distille edilmiş modelleri desteklemek için orada durmaktadır. Guidance distille edilmiş modeller kullanılmadığında yok sayılır. Geleneksel classifier-free guidance'i etkinleştirmek için lütfen true_cfg_scale > 1.0 ve negative_prompt (boş bir negatif prompt bile, örneğin ” ”, classifier-free guidance hesaplamalarını etkinleştirmelidir) iletin.
  • num_images_per_prompt (int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı.
  • generator (torch.Generator veya list[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 rastgele generator kullanılarak örneklemeye dayalı bir latents tensörü oluşturulur.
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.
  • prompt_embeds_mask (torch.Tensor, isteğe bağlı) — prompt_embeds için dikkat maskesi.
  • negative_prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş negatif metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. istem ağırlıklandırması. Sağlanmazsa, negative_prompt_embeds, negative_prompt girdi argümanından oluşturulur.
  • negative_prompt_embeds_mask (torch.Tensor, isteğe bağlı) — negative_prompt_embeds için dikkat maskesi.
  • 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 veya np.array.
  • return_dict (bool, isteğe bağlı, varsayılan True) — Düz bir tuple yerine ~pipelines.qwenimage.QwenImagePipelineOutput döndürülüp döndürülmemesi.
  • attention_kwargs (dict, isteğe bağlı) — Belirtilirse, diffusers.models.attention_processor içindeki self.processor altında tanımlanan AttentionProcessor'a iletilen bir kwargs sözlüğü.
  • 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_inputs tarafından belirtilen tüm tensörlerin listesini içerir.
  • callback_on_step_end_tensor_inputs (list, isteğe bağlı) — callback_on_step_end işlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler, callback_kwargs argümanı olarak geçirilir. Yalnızca pipeline sınıfınızın ._callback_tensor_inputs özniteliğinde listelenen değişkenleri dahil edebilirsiniz.
  • max_sequence_length (int, varsayılan 512) — prompt ile kullanılacak maksimum dizi uzunluğu.

Dönüş değeri

~pipelines.qwenimage.QwenImagePipelineOutput veya tuple

return_dict True ise ~pipelines.qwenimage.QwenImagePipelineOutput, aksi halde tuple. Tuple döndürülürken, ilk öğe üretilen görsellerin listesidir.

Üretim için pipeline çağrıldığında tetiklenen işlev.

Örnekler:

>>> import torch
>>> from diffusers import QwenImageImg2ImgPipeline
>>> from diffusers.utils import load_image

>>> pipe = QwenImageImg2ImgPipeline.from_pretrained("Qwen/Qwen-Image", torch_dtype=torch.bfloat16)
>>> pipe = pipe.to("cuda")
>>> url = "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/assets/stable-samples/img2img/sketch-mountains-input.jpg"
>>> init_image = load_image(url).resize((1024, 1024))
>>> prompt = "cat wizard, gandalf, lord of the rings, detailed, fantasy, cute, adorable, Pixar, Disney"
>>> images = pipe(prompt=prompt, negative_prompt=" ", image=init_image, strength=0.95).images[0]
>>> images.save("qwenimage_img2img.png")

encode_prompt

< >

( prompt: str | list[str]device: typing.Optional[torch.device] = Nonenum_images_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int = 1024 )

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — kodlanacak prompt
  • device — (torch.device): torch cihazı
  • num_images_per_prompt (int) — her prompt için oluşturulacak görsel sayısı
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.

QwenImageInpaintPipeline

sınıf diffusers.QwenImageInpaintPipeline

< >

( scheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLQwenImagetext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2Tokenizertransformer: QwenImageTransformer2DModel )

Parametreler

Metinden görüntüye üretim için QwenImage hattı.

__call__

< >

( prompt: str | list[str] = Nonenegative_prompt: str | list[str] = Nonetrue_cfg_scale: float = 4.0image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]] = Nonemask_image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]] = Nonemasked_image_latents: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]] = Noneheight: int | None = Nonewidth: int | None = Nonepadding_mask_crop: int | None = Nonestrength: float = 0.6num_inference_steps: int = 50sigmas: list[float] | None = Noneguidance_scale: float | None = Nonenum_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_mask: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = Nonecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']max_sequence_length: int = 512 ) → ~pipelines.qwenimage.QwenImagePipelineOutput or tuple

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa bunun yerine prompt_embeds geçirilmelidir.
  • negative_prompt (str veya list[str], isteğe bağlı) — Görsel üretimini yönlendirmemesi istenen istem veya istemler. Tanımlanmazsa, bunun yerine negative_prompt_embeds geçirilmelidir. Yönlendirme kullanılmadığında yok sayılır (yani true_cfg_scale, 1'den büyük değilse yok sayılır).
  • image (torch.Tensor, PIL.Image.Image, np.ndarray, list[torch.Tensor], list[PIL.Image.Image] veya list[np.ndarray]) — Başlangıç noktası olarak kullanılacak bir görüntü partisyonunu temsil eden Image, numpy dizisi veya tensör. Hem numpy dizisi hem de pytorch tensörü için beklenen değer aralığı [0, 1] arasındadır. Tensör veya tensör listesi ise beklenen şekil (B, C, H, W) veya (C, H, W) olmalıdır. Numpy dizisi veya dizi listesi ise beklenen şekil (B, H, W, C) veya (H, W, C) olmalıdır. Ayrıca görüntü latentlerini de image olarak kabul edebilir, ancak latentler doğrudan geçirilirse tekrar kodlanmaz.
  • true_cfg_scale (float, isteğe bağlı, varsayılan 1.0) — Classifier-Free Diffusion Guidance makalesinde tanımlanan yönlendirme ölçeği. true_cfg_scale, Imagen Paper makalesindeki 2. denklemindeki w olarak tanımlanır. Classifier-free guidance, true_cfg_scale > 1 olarak ayarlanarak ve bir negative_prompt sağlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği, prompt metniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur.
  • mask_image (torch.Tensor, PIL.Image.Image, np.ndarray, list[torch.Tensor], list[PIL.Image.Image] veya list[np.ndarray]) — image için maske uygulanacak bir görüntü partisini temsil eden Image, numpy dizisi veya tensör. Maske içindeki beyaz pikseller yeniden boyanırken siyah pikseller korunur. mask_image bir PIL görüntüsü ise, kullanılmadan önce tek kanala (parlaklık) dönüştürülür. Numpy dizisi veya pytorch tensörü ise 3 yerine tek bir renk kanalı (L) içermelidir; bu nedenle pytorch tensörü için beklenen şekil (B, 1, H, W), (B, H, W), (1, H, W) veya (H, W) olur. Numpy dizisi için ise beklenen şekiller (B, H, W, 1), (B, H, W), (H, W, 1) veya (H, W) şeklindedir.
  • masked_image_latents (torch.Tensor, list[torch.Tensor]) — VAE tarafından üretilen image görselini maskelemek için bir görsel partisini temsil eden Tensor. Sağlanmazsa, maske latents tensor'ı mask_image tarafından oluşturulur.
  • height (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden yüksekliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • width (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden genişliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • padding_mask_crop (int, isteğe bağlı, varsayılan None) — Görsel ve maskelemeye uygulanacak kırpma için kenar boşluğu boyutu. None ise görsel ve mask_image üzerinde kırpma uygulanmaz. padding_mask_crop None değilse, önce görselle aynı en-boy oranına sahip ve tüm maskelenmiş alanı içeren dikdörtgen bir bölge bulunur, ardından bu alan padding_mask_crop değerine göre genişletilir. Ardından görsel ve mask_image, inpainting için orijinal görsel boyutuna yeniden boyutlandırılmadan önce genişletilen alana göre kırpılır. Bu, maskelenmiş alanın küçükken görselin büyük olması ve inpainting için alakasız bilgiler (örneğin arka plan) içermesi durumunda faydalıdır.
  • strength (float, isteğe bağlı, varsayılan 1.0) — Referans image'in dönüştürülme derecesini belirtir. 0 ile 1 arasında olmalıdır. image bir başlangıç noktası olarak kullanılır ve strength değeri arttıkça daha fazla gürültü eklenir. Gürültü azaltma adımlarının sayısı, başlangıçta eklenen gürültü miktarına bağlıdır. strength 1 olduğunda eklenen gürültü maksimumdur ve gürültü azaltma süreci, num_inference_steps içinde belirtilen tam tekrar sayısı kadar çalışır. 1 değeri, image'i temelde yok sayar.
  • num_inference_steps (int, isteğe bağlı, varsayılan 50) — 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.
  • sigmas (list[float], isteğe bağlı) — set_timesteps yöntemlerinde sigmas argümanını destekleyen zamanlayıcılarla gürültü azaltma sürecinde kullanılacak özel sigmalar. Tanımlanmamışsa, num_inference_steps geçirildiğinde varsayılan davranış kullanılır.
  • guidance_scale (float, isteğe bağlı, varsayılan None) — Guidance distille edilmiş modeller için bir guidance scale değeri. Geleneksel classifier-free guidance'dan farklı olarak, guidance scale'in çıkarım sırasında gürültü tahmini yeniden ölçeklendirmesi yoluyla uygulandığı bu yöntemde, guidance distille edilmiş modeller guidance scale'i doğrudan forward pass sırasında bir giriş parametresi olarak alır. Guidance scale, guidance_scale > 1 olarak ayarlanarak etkinleştirilir. Daha yüksek guidance scale, prompt ile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur. Pipeline'daki bu parametre, gelecekte ortaya çıkacak guidance-distille edilmiş modelleri desteklemek için orada durmaktadır. Guidance distille edilmiş modeller kullanılmadığında yok sayılır. Geleneksel classifier-free guidance'i etkinleştirmek için lütfen true_cfg_scale > 1.0 ve negative_prompt (boş bir negatif prompt bile, örneğin ” ”, classifier-free guidance hesaplamalarını etkinleştirmelidir) iletin.
  • num_images_per_prompt (int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı.
  • generator (torch.Generator veya list[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 rastgele generator kullanılarak örneklemeye dayalı bir latents tensörü oluşturulur.
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.
  • prompt_embeds_mask (torch.Tensor, isteğe bağlı) — prompt_embeds için dikkat maskesi.
  • negative_prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş negatif metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. istem ağırlıklandırması. Sağlanmazsa, negative_prompt_embeds, negative_prompt girdi argümanından oluşturulur.
  • negative_prompt_embeds_mask (torch.Tensor, isteğe bağlı) — negative_prompt_embeds için dikkat maskesi.
  • 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 veya np.array.
  • return_dict (bool, isteğe bağlı, varsayılan True) — Düz bir tuple yerine ~pipelines.qwenimage.QwenImagePipelineOutput döndürülüp döndürülmemesi.
  • attention_kwargs (dict, isteğe bağlı) — Belirtilirse, diffusers.models.attention_processor içindeki self.processor altında tanımlanan AttentionProcessor'a iletilen bir kwargs sözlüğü.
  • 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_inputs tarafından belirtilen tüm tensörlerin listesini içerir.
  • callback_on_step_end_tensor_inputs (list, isteğe bağlı) — callback_on_step_end işlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler, callback_kwargs argümanı olarak geçirilir. Yalnızca pipeline sınıfınızın ._callback_tensor_inputs özniteliğinde listelenen değişkenleri dahil edebilirsiniz.
  • max_sequence_length (int, varsayılan 512) — prompt ile kullanılacak maksimum dizi uzunluğu.

Dönüş değeri

~pipelines.qwenimage.QwenImagePipelineOutput veya tuple

return_dict True ise ~pipelines.qwenimage.QwenImagePipelineOutput, aksi halde tuple. Tuple döndürülürken, ilk öğe üretilen görsellerin listesidir.

Üretim için pipeline çağrıldığında tetiklenen işlev.

Örnekler:

>>> import torch
>>> from diffusers import QwenImageInpaintPipeline
>>> from diffusers.utils import load_image

>>> pipe = QwenImageInpaintPipeline.from_pretrained("Qwen/Qwen-Image", torch_dtype=torch.bfloat16)
>>> pipe.to("cuda")
>>> prompt = "Face of a yellow cat, high resolution, sitting on a park bench"
>>> img_url = "https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png"
>>> mask_url = "https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo_mask.png"
>>> source = load_image(img_url)
>>> mask = load_image(mask_url)
>>> image = pipe(prompt=prompt, negative_prompt=" ", image=source, mask_image=mask, strength=0.85).images[0]
>>> image.save("qwenimage_inpainting.png")

encode_prompt

< >

( prompt: str | list[str]device: typing.Optional[torch.device] = Nonenum_images_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int = 1024 )

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — kodlanacak prompt
  • device — (torch.device): torch cihazı
  • num_images_per_prompt (int) — her prompt için oluşturulacak görsel sayısı
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.

QwenImageEditPipeline

sınıf diffusers.QwenImageEditPipeline

< >

( scheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLQwenImagetext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2Tokenizerprocessor: Qwen2VLProcessortransformer: QwenImageTransformer2DModel )

Parametreler

Görsel düzenleme için Qwen-Image-Edit hattı.

__call__

< >

( image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor], NoneType] = Noneprompt: str | list[str] = Nonenegative_prompt: str | list[str] = Nonetrue_cfg_scale: float = 4.0height: int | None = Nonewidth: int | None = Nonenum_inference_steps: int = 50sigmas: list[float] | None = Noneguidance_scale: float | None = Nonenum_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_mask: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = Nonecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']max_sequence_length: int = 512 ) → ~pipelines.qwenimage.QwenImagePipelineOutput or tuple

Parametreler

  • image (torch.Tensor, PIL.Image.Image, np.ndarray, list[torch.Tensor], list[PIL.Image.Image] veya list[np.ndarray]) — Başlangıç noktası olarak kullanılacak bir görüntü partisyonunu temsil eden Image, numpy dizisi veya tensör. Hem numpy dizisi hem de pytorch tensörü için beklenen değer aralığı [0, 1] arasındadır. Tensör veya tensör listesi ise beklenen şekil (B, C, H, W) veya (C, H, W) olmalıdır. Numpy dizisi veya dizi listesi ise beklenen şekil (B, H, W, C) veya (H, W, C) olmalıdır. Ayrıca görüntü latentlerini de image olarak kabul edebilir, ancak latentler doğrudan geçirilirse tekrar kodlanmaz.
  • prompt (str veya list[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa bunun yerine prompt_embeds geçirilmelidir.
  • negative_prompt (str veya list[str], isteğe bağlı) — Görsel üretimini yönlendirmemesi istenen istem veya istemler. Tanımlanmazsa, bunun yerine negative_prompt_embeds geçirilmelidir. Yönlendirme kullanılmadığında yok sayılır (yani true_cfg_scale, 1'den büyük değilse yok sayılır).
  • true_cfg_scale (float, isteğe bağlı, varsayılan 1.0) — true_cfg_scale (float, isteğe bağlı, varsayılan 1.0): Classifier-Free Diffusion Guidance makalesinde tanımlanan yönlendirme ölçeği. true_cfg_scale, Imagen Paper makalesindeki 2. denklemindeki w olarak tanımlanır. Classifier-free guidance, true_cfg_scale > 1 olarak ayarlanarak ve bir negative_prompt sağlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği, prompt metniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bunun bedeli olarak görsel kalitesinde düşüş yaşanır.
  • height (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden yüksekliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • width (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden genişliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • num_inference_steps (int, isteğe bağlı, varsayılan 50) — 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.
  • sigmas (list[float], isteğe bağlı) — set_timesteps yöntemlerinde sigmas argümanını destekleyen zamanlayıcılarla gürültü azaltma sürecinde kullanılacak özel sigmalar. Tanımlanmamışsa, num_inference_steps geçirildiğinde varsayılan davranış kullanılır.
  • guidance_scale (float, isteğe bağlı, varsayılan None) — Guidance distille edilmiş modeller için bir guidance scale değeri. Geleneksel classifier-free guidance'dan farklı olarak, guidance scale'in çıkarım sırasında gürültü tahmini yeniden ölçeklendirmesi yoluyla uygulandığı bu yöntemde, guidance distille edilmiş modeller guidance scale'i doğrudan forward pass sırasında bir giriş parametresi olarak alır. Guidance scale, guidance_scale > 1 olarak ayarlanarak etkinleştirilir. Daha yüksek guidance scale, prompt ile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur. Pipeline'daki bu parametre, gelecekte ortaya çıkacak guidance-distille edilmiş modelleri desteklemek için orada durmaktadır. Guidance distille edilmiş modeller kullanılmadığında yok sayılır. Geleneksel classifier-free guidance'i etkinleştirmek için lütfen true_cfg_scale > 1.0 ve negative_prompt (boş bir negatif prompt bile, örneğin ” ”, classifier-free guidance hesaplamalarını etkinleştirmelidir) iletin.
  • num_images_per_prompt (int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı.
  • generator (torch.Generator veya list[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 rastgele generator kullanılarak örneklemeye dayalı bir latents tensörü oluşturulur.
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.
  • prompt_embeds_mask (torch.Tensor, isteğe bağlı) — prompt_embeds için dikkat maskesi.
  • negative_prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş negatif metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. istem ağırlıklandırması. Sağlanmazsa, negative_prompt_embeds, negative_prompt girdi argümanından oluşturulur.
  • negative_prompt_embeds_mask (torch.Tensor, isteğe bağlı) — negative_prompt_embeds için dikkat maskesi.
  • 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 veya np.array.
  • return_dict (bool, isteğe bağlı, varsayılan True) — Düz bir tuple yerine ~pipelines.qwenimage.QwenImagePipelineOutput döndürülüp döndürülmemesi.
  • attention_kwargs (dict, isteğe bağlı) — Belirtilirse, diffusers.models.attention_processor içindeki self.processor altında tanımlanan AttentionProcessor'a iletilen bir kwargs sözlüğü.
  • 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_inputs tarafından belirtilen tüm tensörlerin listesini içerir.
  • callback_on_step_end_tensor_inputs (list, isteğe bağlı) — callback_on_step_end işlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler, callback_kwargs argümanı olarak geçirilir. Yalnızca pipeline sınıfınızın ._callback_tensor_inputs özniteliğinde listelenen değişkenleri dahil edebilirsiniz.
  • max_sequence_length (int, varsayılan 512) — prompt ile kullanılacak maksimum dizi uzunluğu.

Dönüş değeri

~pipelines.qwenimage.QwenImagePipelineOutput veya tuple

return_dict True ise ~pipelines.qwenimage.QwenImagePipelineOutput, aksi halde tuple. Tuple döndürülürken, ilk öğe üretilen görsellerin listesidir.

Üretim için pipeline çağrıldığında tetiklenen işlev.

Örnekler:

>>> import torch
>>> from PIL import Image
>>> from diffusers import QwenImageEditPipeline
>>> from diffusers.utils import load_image

>>> pipe = QwenImageEditPipeline.from_pretrained("Qwen/Qwen-Image-Edit", torch_dtype=torch.bfloat16)
>>> pipe.to("cuda")
>>> image = load_image(
...     "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/yarn-art-pikachu.png"
... ).convert("RGB")
>>> prompt = (
...     "Make Pikachu hold a sign that says 'Qwen Edit is awesome', yarn art style, detailed, vibrant colors"
... )
>>> # Depending on the variant being used, the pipeline call will slightly vary.
>>> # Refer to the pipeline documentation for more details.
>>> image = pipe(image, prompt, num_inference_steps=50).images[0]
>>> image.save("qwenimage_edit.png")

encode_prompt

< >

( prompt: str | list[str]image: typing.Optional[torch.Tensor] = Nonedevice: typing.Optional[torch.device] = Nonenum_images_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int = 1024 )

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — kodlanacak prompt
  • image (torch.Tensor, isteğe bağlı) — kodlanacak görüntü
  • device — (torch.device): torch cihazı
  • num_images_per_prompt (int) — her prompt için oluşturulacak görsel sayısı
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.

QwenImageEditInpaintPipeline

sınıf diffusers.QwenImageEditInpaintPipeline

< >

( scheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLQwenImagetext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2Tokenizerprocessor: Qwen2VLProcessortransformer: QwenImageTransformer2DModel )

Parametreler

Görsel düzenleme için Qwen-Image-Edit hattı.

__call__

< >

( image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor], NoneType] = Noneprompt: str | list[str] = Nonenegative_prompt: str | list[str] = Nonemask_image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]] = Nonemasked_image_latents: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]] = Nonetrue_cfg_scale: float = 4.0height: int | None = Nonewidth: int | None = Nonepadding_mask_crop: int | None = Nonestrength: float = 0.6num_inference_steps: int = 50sigmas: list[float] | None = Noneguidance_scale: float | None = Nonenum_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_mask: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = Nonecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']max_sequence_length: int = 512 ) → ~pipelines.qwenimage.QwenImagePipelineOutput or tuple

Parametreler

  • image (torch.Tensor, PIL.Image.Image, np.ndarray, list[torch.Tensor], list[PIL.Image.Image] veya list[np.ndarray]) — Başlangıç noktası olarak kullanılacak bir görüntü partisyonunu temsil eden Image, numpy dizisi veya tensör. Hem numpy dizisi hem de pytorch tensörü için beklenen değer aralığı [0, 1] arasındadır. Tensör veya tensör listesi ise beklenen şekil (B, C, H, W) veya (C, H, W) olmalıdır. Numpy dizisi veya dizi listesi ise beklenen şekil (B, H, W, C) veya (H, W, C) olmalıdır. Ayrıca görüntü latentlerini de image olarak kabul edebilir, ancak latentler doğrudan geçirilirse tekrar kodlanmaz.
  • prompt (str veya list[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa bunun yerine prompt_embeds geçirilmelidir.
  • negative_prompt (str veya list[str], isteğe bağlı) — Görsel üretimini yönlendirmemesi istenen istem veya istemler. Tanımlanmazsa, bunun yerine negative_prompt_embeds geçirilmelidir. Yönlendirme kullanılmadığında yok sayılır (yani true_cfg_scale, 1'den büyük değilse yok sayılır).
  • true_cfg_scale (float, isteğe bağlı, varsayılan 1.0) — true_cfg_scale (float, isteğe bağlı, varsayılan 1.0): Classifier-Free Diffusion Guidance makalesinde tanımlanan yönlendirme ölçeği. true_cfg_scale, Imagen Paper makalesindeki 2. denklemindeki w olarak tanımlanır. Classifier-free guidance, true_cfg_scale > 1 olarak ayarlanarak ve bir negative_prompt sağlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği, prompt metniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bunun bedeli olarak görsel kalitesinde düşüş yaşanır.
  • mask_image (torch.Tensor, PIL.Image.Image, np.ndarray, list[torch.Tensor], list[PIL.Image.Image] veya list[np.ndarray]) — image için maske uygulanacak bir görüntü partisini temsil eden Image, numpy dizisi veya tensör. Maske içindeki beyaz pikseller yeniden boyanırken siyah pikseller korunur. mask_image bir PIL görüntüsü ise, kullanılmadan önce tek kanala (parlaklık) dönüştürülür. Numpy dizisi veya pytorch tensörü ise 3 yerine tek bir renk kanalı (L) içermelidir; bu nedenle pytorch tensörü için beklenen şekil (B, 1, H, W), (B, H, W), (1, H, W) veya (H, W) olur. Numpy dizisi için ise beklenen şekiller (B, H, W, 1), (B, H, W), (H, W, 1) veya (H, W) şeklindedir.
  • masked_image_latents (torch.Tensor, list[torch.Tensor]) — VAE tarafından üretilen image görselini maskelemek için bir görsel partisini temsil eden Tensor. Sağlanmazsa, maske latents tensor'ı mask_image tarafından oluşturulur.
  • height (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden yüksekliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • width (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden genişliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • padding_mask_crop (int, isteğe bağlı, varsayılan None) — Görsel ve maskelemeye uygulanacak kırpma için kenar boşluğu boyutu. None ise görsel ve mask_image üzerinde kırpma uygulanmaz. padding_mask_crop None değilse, önce görselle aynı en-boy oranına sahip ve tüm maskelenmiş alanı içeren dikdörtgen bir bölge bulunur, ardından bu alan padding_mask_crop değerine göre genişletilir. Ardından görsel ve mask_image, inpainting için orijinal görsel boyutuna yeniden boyutlandırılmadan önce genişletilen alana göre kırpılır. Bu, maskelenmiş alanın küçükken görselin büyük olması ve inpainting için alakasız bilgiler (örneğin arka plan) içermesi durumunda faydalıdır.
  • strength (float, isteğe bağlı, varsayılan 1.0) — Referans image'in dönüştürülme derecesini belirtir. 0 ile 1 arasında olmalıdır. image bir başlangıç noktası olarak kullanılır ve strength değeri arttıkça daha fazla gürültü eklenir. Gürültü azaltma adımlarının sayısı, başlangıçta eklenen gürültü miktarına bağlıdır. strength 1 olduğunda eklenen gürültü maksimumdur ve gürültü azaltma süreci, num_inference_steps içinde belirtilen tam tekrar sayısı kadar çalışır. 1 değeri, image'i temelde yok sayar.
  • num_inference_steps (int, isteğe bağlı, varsayılan 50) — 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.
  • sigmas (list[float], isteğe bağlı) — set_timesteps yöntemlerinde sigmas argümanını destekleyen zamanlayıcılarla gürültü azaltma sürecinde kullanılacak özel sigmalar. Tanımlanmamışsa, num_inference_steps geçirildiğinde varsayılan davranış kullanılır.
  • guidance_scale (float, isteğe bağlı, varsayılan None) — Guidance distille edilmiş modeller için bir guidance scale değeri. Geleneksel classifier-free guidance'dan farklı olarak, guidance scale'in çıkarım sırasında gürültü tahmini yeniden ölçeklendirmesi yoluyla uygulandığı bu yöntemde, guidance distille edilmiş modeller guidance scale'i doğrudan forward pass sırasında bir giriş parametresi olarak alır. Guidance scale, guidance_scale > 1 olarak ayarlanarak etkinleştirilir. Daha yüksek guidance scale, prompt ile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur. Pipeline'daki bu parametre, gelecekte ortaya çıkacak guidance-distille edilmiş modelleri desteklemek için orada durmaktadır. Guidance distille edilmiş modeller kullanılmadığında yok sayılır. Geleneksel classifier-free guidance'i etkinleştirmek için lütfen true_cfg_scale > 1.0 ve negative_prompt (boş bir negatif prompt bile, örneğin ” ”, classifier-free guidance hesaplamalarını etkinleştirmelidir) iletin.
  • num_images_per_prompt (int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı.
  • generator (torch.Generator veya list[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 rastgele generator kullanılarak örneklemeye dayalı bir latents tensörü oluşturulur.
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.
  • prompt_embeds_mask (torch.Tensor, isteğe bağlı) — prompt_embeds için dikkat maskesi.
  • negative_prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş negatif metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. istem ağırlıklandırması. Sağlanmazsa, negative_prompt_embeds, negative_prompt girdi argümanından oluşturulur.
  • negative_prompt_embeds_mask (torch.Tensor, isteğe bağlı) — negative_prompt_embeds için dikkat maskesi.
  • 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 veya np.array.
  • return_dict (bool, isteğe bağlı, varsayılan True) — Düz bir tuple yerine ~pipelines.qwenimage.QwenImagePipelineOutput döndürülüp döndürülmemesi.
  • attention_kwargs (dict, isteğe bağlı) — Belirtilirse, diffusers.models.attention_processor içindeki self.processor altında tanımlanan AttentionProcessor'a iletilen bir kwargs sözlüğü.
  • 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_inputs tarafından belirtilen tüm tensörlerin listesini içerir.
  • callback_on_step_end_tensor_inputs (list, isteğe bağlı) — callback_on_step_end işlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler, callback_kwargs argümanı olarak geçirilir. Yalnızca pipeline sınıfınızın ._callback_tensor_inputs özniteliğinde listelenen değişkenleri dahil edebilirsiniz.
  • max_sequence_length (int, varsayılan 512) — prompt ile kullanılacak maksimum dizi uzunluğu.

Dönüş değeri

~pipelines.qwenimage.QwenImagePipelineOutput veya tuple

return_dict True ise ~pipelines.qwenimage.QwenImagePipelineOutput, aksi halde tuple. Tuple döndürülürken, ilk öğe üretilen görsellerin listesidir.

Üretim için pipeline çağrıldığında tetiklenen işlev.

Örnekler:

>>> import torch
>>> from PIL import Image
>>> from diffusers import QwenImageEditInpaintPipeline
>>> from diffusers.utils import load_image

>>> pipe = QwenImageEditInpaintPipeline.from_pretrained("Qwen/Qwen-Image-Edit", torch_dtype=torch.bfloat16)
>>> pipe.to("cuda")
>>> prompt = "Face of a yellow cat, high resolution, sitting on a park bench"

>>> img_url = "https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo.png"
>>> mask_url = "https://raw.githubusercontent.com/CompVis/latent-diffusion/main/data/inpainting_examples/overture-creations-5sI6fQgYIuo_mask.png"
>>> source = load_image(img_url)
>>> mask = load_image(mask_url)
>>> image = pipe(
...     prompt=prompt, negative_prompt=" ", image=source, mask_image=mask, strength=1.0, num_inference_steps=50
... ).images[0]
>>> image.save("qwenimage_inpainting.png")

encode_prompt

< >

( prompt: str | list[str]image: typing.Optional[torch.Tensor] = Nonedevice: typing.Optional[torch.device] = Nonenum_images_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int = 1024 )

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — kodlanacak prompt
  • image (torch.Tensor, isteğe bağlı) — kodlanacak görüntü
  • device — (torch.device): torch cihazı
  • num_images_per_prompt (int) — her prompt için oluşturulacak görsel sayısı
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.

QwenImageControlNetPipeline

sınıf diffusers.QwenImageControlNetPipeline

< >

( scheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLQwenImagetext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2Tokenizertransformer: QwenImageTransformer2DModelcontrolnet: diffusers.models.controlnets.controlnet_qwenimage.QwenImageControlNetModel | diffusers.models.controlnets.controlnet_qwenimage.QwenImageMultiControlNetModel )

Parametreler

Metinden görüntüye üretim için QwenImage hattı.

__call__

< >

( prompt: str | list[str] = Nonenegative_prompt: str | list[str] = Nonetrue_cfg_scale: float = 4.0height: int | None = Nonewidth: int | None = Nonenum_inference_steps: int = 50sigmas: list[float] | None = Noneguidance_scale: float | None = Nonecontrol_guidance_start: float | list[float] = 0.0control_guidance_end: float | list[float] = 1.0control_image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]] = Nonecontrolnet_conditioning_scale: float | list[float] = 1.0num_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_mask: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = Nonecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']max_sequence_length: int = 512 ) → ~pipelines.qwenimage.QwenImagePipelineOutput or tuple

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa bunun yerine prompt_embeds geçirilmelidir.
  • negative_prompt (str veya list[str], isteğe bağlı) — Görsel üretimini yönlendirmemesi istenen istem veya istemler. Tanımlanmazsa, bunun yerine negative_prompt_embeds geçirilmelidir. Yönlendirme kullanılmadığında yok sayılır (yani true_cfg_scale, 1'den büyük değilse yok sayılır).
  • true_cfg_scale (float, isteğe bağlı, varsayılan 1.0) — Classifier-Free Diffusion Guidance makalesinde tanımlanan yönlendirme ölçeği. true_cfg_scale, Imagen Paper makalesindeki 2. denklemindeki w olarak tanımlanır. Classifier-free guidance, true_cfg_scale > 1 olarak ayarlanarak ve bir negative_prompt sağlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği, prompt metniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur.
  • height (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden yüksekliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • width (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden genişliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • num_inference_steps (int, isteğe bağlı, varsayılan 50) — 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.
  • sigmas (list[float], isteğe bağlı) — set_timesteps yöntemlerinde sigmas argümanını destekleyen zamanlayıcılarla gürültü azaltma sürecinde kullanılacak özel sigmalar. Tanımlanmamışsa, num_inference_steps geçirildiğinde varsayılan davranış kullanılır.
  • guidance_scale (float, isteğe bağlı, varsayılan None) — Guidance distille edilmiş modeller için bir guidance scale değeri. Geleneksel classifier-free guidance'dan farklı olarak, guidance scale'in çıkarım sırasında gürültü tahmini yeniden ölçeklendirmesi yoluyla uygulandığı bu yöntemde, guidance distille edilmiş modeller guidance scale'i doğrudan forward pass sırasında bir giriş parametresi olarak alır. Guidance scale, guidance_scale > 1 olarak ayarlanarak etkinleştirilir. Daha yüksek guidance scale, prompt ile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur. Pipeline'daki bu parametre, gelecekte ortaya çıkacak guidance-distille edilmiş modelleri desteklemek için orada durmaktadır. Guidance distille edilmiş modeller kullanılmadığında yok sayılır. Geleneksel classifier-free guidance'i etkinleştirmek için lütfen true_cfg_scale > 1.0 ve negative_prompt (boş bir negatif prompt bile, örneğin ” ”, classifier-free guidance hesaplamalarını etkinleştirmelidir) iletin.
  • control_guidance_start (float veya list[float], isteğe bağlı, varsayılan 0.0) — ControlNet'in uygulamaya başladığı toplam adım yüzdesi.
  • control_guidance_end (float veya list[float], isteğe bağlı, varsayılan 1.0) — ControlNet'in uygulamayı durdurduğu toplam adımların yüzdesi.
  • control_image (PipelineImageInput, isteğe bağlı) — Üretim için yönlendirme sağlamak üzere sağlanan ControlNet giriş koşulu.
  • controlnet_conditioning_scale (float veya list[float], isteğe bağlı, varsayılan 1.0) — ControlNet çıktıları, orijinal transformer'daki artıma eklenmeden önce controlnet_conditioning_scale ile çarpılır.
  • num_images_per_prompt (int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı.
  • generator (torch.Generator veya list[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 rastgele generator kullanılarak örneklemeye dayalı bir latents tensörü oluşturulur.
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.
  • prompt_embeds_mask (torch.Tensor, isteğe bağlı) — prompt_embeds için dikkat maskesi.
  • negative_prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş negatif metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. istem ağırlıklandırması. Sağlanmazsa, negative_prompt_embeds, negative_prompt girdi argümanından oluşturulur.
  • negative_prompt_embeds_mask (torch.Tensor, isteğe bağlı) — negative_prompt_embeds için dikkat maskesi.
  • 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 veya np.array.
  • return_dict (bool, isteğe bağlı, varsayılan True) — Düz bir tuple yerine ~pipelines.qwenimage.QwenImagePipelineOutput döndürülüp döndürülmemesi.
  • attention_kwargs (dict, isteğe bağlı) — Belirtilirse, diffusers.models.attention_processor içindeki self.processor altında tanımlanan AttentionProcessor'a iletilen bir kwargs sözlüğü.
  • 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_inputs tarafından belirtilen tüm tensörlerin listesini içerir.
  • callback_on_step_end_tensor_inputs (list, isteğe bağlı) — callback_on_step_end işlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler, callback_kwargs argümanı olarak geçirilir. Yalnızca pipeline sınıfınızın ._callback_tensor_inputs özniteliğinde listelenen değişkenleri dahil edebilirsiniz.
  • max_sequence_length (int, varsayılan 512) — prompt ile kullanılacak maksimum dizi uzunluğu.

Dönüş değeri

~pipelines.qwenimage.QwenImagePipelineOutput veya tuple

return_dict True ise ~pipelines.qwenimage.QwenImagePipelineOutput, aksi halde tuple. Tuple döndürülürken, ilk öğe üretilen görsellerin listesidir.

Üretim için pipeline çağrıldığında tetiklenen işlev.

Örnekler:

>>> import torch
>>> from diffusers.utils import load_image
>>> from diffusers import QwenImageControlNetModel, QwenImageMultiControlNetModel, QwenImageControlNetPipeline

>>> # QwenImageControlNetModel
>>> controlnet = QwenImageControlNetModel.from_pretrained(
...     "InstantX/Qwen-Image-ControlNet-Union", torch_dtype=torch.bfloat16
... )
>>> pipe = QwenImageControlNetPipeline.from_pretrained(
...     "Qwen/Qwen-Image", controlnet=controlnet, torch_dtype=torch.bfloat16
... )
>>> pipe.to("cuda")
>>> prompt = "Aesthetics art, traditional asian pagoda, elaborate golden accents, sky blue and white color palette, swirling cloud pattern, digital illustration, east asian architecture, ornamental rooftop, intricate detailing on building, cultural representation."
>>> negative_prompt = " "
>>> control_image = load_image(
...     "https://huggingface.co/InstantX/Qwen-Image-ControlNet-Union/resolve/main/conds/canny.png"
... )
>>> # Depending on the variant being used, the pipeline call will slightly vary.
>>> # Refer to the pipeline documentation for more details.
>>> image = pipe(
...     prompt,
...     negative_prompt=negative_prompt,
...     control_image=control_image,
...     controlnet_conditioning_scale=1.0,
...     num_inference_steps=30,
...     true_cfg_scale=4.0,
... ).images[0]
>>> image.save("qwenimage_cn_union.png")

>>> # QwenImageMultiControlNetModel
>>> controlnet = QwenImageControlNetModel.from_pretrained(
...     "InstantX/Qwen-Image-ControlNet-Union", torch_dtype=torch.bfloat16
... )
>>> controlnet = QwenImageMultiControlNetModel([controlnet])
>>> pipe = QwenImageControlNetPipeline.from_pretrained(
...     "Qwen/Qwen-Image", controlnet=controlnet, torch_dtype=torch.bfloat16
... )
>>> pipe.to("cuda")
>>> prompt = "Aesthetics art, traditional asian pagoda, elaborate golden accents, sky blue and white color palette, swirling cloud pattern, digital illustration, east asian architecture, ornamental rooftop, intricate detailing on building, cultural representation."
>>> negative_prompt = " "
>>> control_image = load_image(
...     "https://huggingface.co/InstantX/Qwen-Image-ControlNet-Union/resolve/main/conds/canny.png"
... )
>>> # Depending on the variant being used, the pipeline call will slightly vary.
>>> # Refer to the pipeline documentation for more details.
>>> image = pipe(
...     prompt,
...     negative_prompt=negative_prompt,
...     control_image=[control_image, control_image],
...     controlnet_conditioning_scale=[0.5, 0.5],
...     num_inference_steps=30,
...     true_cfg_scale=4.0,
... ).images[0]
>>> image.save("qwenimage_cn_union_multi.png")

encode_prompt

< >

( prompt: str | list[str]device: typing.Optional[torch.device] = Nonenum_images_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int = 1024 )

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — kodlanacak prompt
  • device — (torch.device): torch cihazı
  • num_images_per_prompt (int) — her prompt için oluşturulacak görsel sayısı
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.

QwenImageEditPlusPipeline

sınıf diffusers.QwenImageEditPlusPipeline

< >

( scheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLQwenImagetext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2Tokenizerprocessor: Qwen2VLProcessortransformer: QwenImageTransformer2DModel )

Parametreler

Görsel düzenleme için Qwen-Image-Edit hattı.

__call__

< >

( image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor], NoneType] = Noneprompt: str | list[str] = Nonenegative_prompt: str | list[str] = Nonetrue_cfg_scale: float = 4.0height: int | None = Nonewidth: int | None = Nonenum_inference_steps: int = 50sigmas: list[float] | None = Noneguidance_scale: float | None = Nonenum_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_mask: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = Nonecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']max_sequence_length: int = 512 ) → ~pipelines.qwenimage.QwenImagePipelineOutput or tuple

Parametreler

  • image (torch.Tensor, PIL.Image.Image, np.ndarray, list[torch.Tensor], list[PIL.Image.Image] veya list[np.ndarray]) — Başlangıç noktası olarak kullanılacak bir görüntü partisyonunu temsil eden Image, numpy dizisi veya tensör. Hem numpy dizisi hem de pytorch tensörü için beklenen değer aralığı [0, 1] arasındadır. Tensör veya tensör listesi ise beklenen şekil (B, C, H, W) veya (C, H, W) olmalıdır. Numpy dizisi veya dizi listesi ise beklenen şekil (B, H, W, C) veya (H, W, C) olmalıdır. Ayrıca görüntü latentlerini de image olarak kabul edebilir, ancak latentler doğrudan geçirilirse tekrar kodlanmaz.
  • prompt (str veya list[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa bunun yerine prompt_embeds geçirilmelidir.
  • negative_prompt (str veya list[str], isteğe bağlı) — Görsel üretimini yönlendirmemesi istenen istem veya istemler. Tanımlanmazsa, bunun yerine negative_prompt_embeds geçirilmelidir. Yönlendirme kullanılmadığında yok sayılır (yani true_cfg_scale, 1'den büyük değilse yok sayılır).
  • true_cfg_scale (float, isteğe bağlı, varsayılan 1.0) — true_cfg_scale (float, isteğe bağlı, varsayılan 1.0): Classifier-Free Diffusion Guidance makalesinde tanımlanan yönlendirme ölçeği. true_cfg_scale, Imagen Paper makalesindeki 2. denklemindeki w olarak tanımlanır. Classifier-free guidance, true_cfg_scale > 1 olarak ayarlanarak ve bir negative_prompt sağlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği, prompt metniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bunun bedeli olarak görsel kalitesinde düşüş yaşanır.
  • height (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden yüksekliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • width (int, isteğe bağlı, varsayılan: self.unet.config.sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden genişliği. En iyi sonuçlar için varsayılan olarak 1024 olarak ayarlanır.
  • num_inference_steps (int, isteğe bağlı, varsayılan 50) — 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.
  • sigmas (list[float], isteğe bağlı) — set_timesteps yöntemlerinde sigmas argümanını destekleyen zamanlayıcılarla gürültü azaltma sürecinde kullanılacak özel sigmalar. Tanımlanmamışsa, num_inference_steps geçirildiğinde varsayılan davranış kullanılır.
  • guidance_scale (float, isteğe bağlı, varsayılan None) — Guidance distille edilmiş modeller için bir guidance scale değeri. Geleneksel classifier-free guidance'dan farklı olarak, guidance scale'in çıkarım sırasında gürültü tahmini yeniden ölçeklendirmesi yoluyla uygulandığı bu yöntemde, guidance distille edilmiş modeller guidance scale'i doğrudan forward pass sırasında bir giriş parametresi olarak alır. Guidance scale, guidance_scale > 1 olarak ayarlanarak etkinleştirilir. Daha yüksek guidance scale, prompt ile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur. Pipeline'daki bu parametre, gelecekte ortaya çıkacak guidance-distille edilmiş modelleri desteklemek için orada durmaktadır. Guidance distille edilmiş modeller kullanılmadığında yok sayılır. Geleneksel classifier-free guidance'i etkinleştirmek için lütfen true_cfg_scale > 1.0 ve negative_prompt (boş bir negatif prompt bile, örneğin ” ”, classifier-free guidance hesaplamalarını etkinleştirmelidir) iletin.
  • num_images_per_prompt (int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı.
  • generator (torch.Generator veya list[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 rastgele generator kullanılarak örneklemeye dayalı bir latents tensörü oluşturulur.
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.
  • prompt_embeds_mask (torch.Tensor, isteğe bağlı) — prompt_embeds için dikkat maskesi.
  • negative_prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş negatif metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. istem ağırlıklandırması. Sağlanmazsa, negative_prompt_embeds, negative_prompt girdi argümanından oluşturulur.
  • negative_prompt_embeds_mask (torch.Tensor, isteğe bağlı) — negative_prompt_embeds için dikkat maskesi.
  • 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 veya np.array.
  • return_dict (bool, isteğe bağlı, varsayılan True) — Düz bir tuple yerine ~pipelines.qwenimage.QwenImagePipelineOutput döndürülüp döndürülmemesi.
  • attention_kwargs (dict, isteğe bağlı) — Belirtilirse, diffusers.models.attention_processor içindeki self.processor altında tanımlanan AttentionProcessor'a iletilen bir kwargs sözlüğü.
  • 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_inputs tarafından belirtilen tüm tensörlerin listesini içerir.
  • callback_on_step_end_tensor_inputs (list, isteğe bağlı) — callback_on_step_end işlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler, callback_kwargs argümanı olarak geçirilir. Yalnızca pipeline sınıfınızın ._callback_tensor_inputs özniteliğinde listelenen değişkenleri dahil edebilirsiniz.
  • max_sequence_length (int, varsayılan 512) — prompt ile kullanılacak maksimum dizi uzunluğu.

Dönüş değeri

~pipelines.qwenimage.QwenImagePipelineOutput veya tuple

return_dict True ise ~pipelines.qwenimage.QwenImagePipelineOutput, aksi halde tuple. Tuple döndürülürken, ilk öğe üretilen görsellerin listesidir.

Üretim için pipeline çağrıldığında tetiklenen işlev.

Örnekler:

>>> import torch
>>> from PIL import Image
>>> from diffusers import QwenImageEditPlusPipeline
>>> from diffusers.utils import load_image

>>> pipe = QwenImageEditPlusPipeline.from_pretrained("Qwen/Qwen-Image-Edit-2509", torch_dtype=torch.bfloat16)
>>> pipe.to("cuda")
>>> image = load_image(
...     "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/yarn-art-pikachu.png"
... ).convert("RGB")
>>> prompt = (
...     "Make Pikachu hold a sign that says 'Qwen Edit is awesome', yarn art style, detailed, vibrant colors"
... )
>>> # Depending on the variant being used, the pipeline call will slightly vary.
>>> # Refer to the pipeline documentation for more details.
>>> image = pipe(image, prompt, num_inference_steps=50).images[0]
>>> image.save("qwenimage_edit_plus.png")

encode_prompt

< >

( prompt: str | list[str]image: typing.Optional[torch.Tensor] = Nonedevice: typing.Optional[torch.device] = Nonenum_images_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int = 1024 )

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — kodlanacak prompt
  • image (torch.Tensor, isteğe bağlı) — kodlanacak görüntü
  • device — (torch.device): torch cihazı
  • num_images_per_prompt (int) — her prompt için oluşturulacak görsel sayısı
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.

QwenImageLayeredPipeline

sınıf diffusers.QwenImageLayeredPipeline

< >

( scheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLQwenImagetext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2Tokenizerprocessor: Qwen2VLProcessortransformer: QwenImageTransformer2DModel )

Parametreler

Görsel ayrıştırma için Qwen-Image-Layered hattı.

__call__

< >

( image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor], NoneType] = Noneprompt: str | list[str] = Nonenegative_prompt: str | list[str] = Nonetrue_cfg_scale: float = 4.0layers: int | None = 4num_inference_steps: int = 50sigmas: list[float] | None = Noneguidance_scale: float | None = Nonenum_images_per_prompt: int = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_mask: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = Nonecallback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']max_sequence_length: int = 512resolution: int = 640cfg_normalize: bool = Falseuse_en_prompt: bool = False ) → ~pipelines.qwenimage.QwenImagePipelineOutput or tuple

Parametreler

  • image (torch.Tensor, PIL.Image.Image, np.ndarray, list[torch.Tensor], list[PIL.Image.Image] veya list[np.ndarray]) — Başlangıç noktası olarak kullanılacak bir görüntü partisyonunu temsil eden Image, numpy dizisi veya tensör. Hem numpy dizisi hem de pytorch tensörü için beklenen değer aralığı [0, 1] arasındadır. Tensör veya tensör listesi ise beklenen şekil (B, C, H, W) veya (C, H, W) olmalıdır. Numpy dizisi veya dizi listesi ise beklenen şekil (B, H, W, C) veya (H, W, C) olmalıdır. Ayrıca görüntü latentlerini de image olarak kabul edebilir, ancak latentler doğrudan geçirilirse tekrar kodlanmaz.
  • prompt (str veya list[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa bunun yerine prompt_embeds geçirilmelidir.
  • negative_prompt (str veya list[str], isteğe bağlı) — Görsel üretimini yönlendirmemesi istenen istem veya istemler. Tanımlanmazsa, bunun yerine negative_prompt_embeds geçirilmelidir. Yönlendirme kullanılmadığında yok sayılır (yani true_cfg_scale, 1'den büyük değilse yok sayılır).
  • true_cfg_scale (float, isteğe bağlı, varsayılan 1.0) — true_cfg_scale (float, isteğe bağlı, varsayılan 1.0): Classifier-Free Diffusion Guidance makalesinde tanımlanan yönlendirme ölçeği. true_cfg_scale, Imagen Paper makalesindeki 2. denklemindeki w olarak tanımlanır. Classifier-free guidance, true_cfg_scale > 1 olarak ayarlanarak ve bir negative_prompt sağlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği, prompt metniyle yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bunun bedeli olarak görsel kalitesinde düşüş yaşanır.
  • layers (int, isteğe bağlı, varsayılan 4) — Katmanlı çıktı için üretilecek gizli katman sayısı.
  • num_inference_steps (int, isteğe bağlı, varsayılan 50) — 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.
  • sigmas (list[float], isteğe bağlı) — set_timesteps yöntemlerinde sigmas argümanını destekleyen zamanlayıcılarla gürültü azaltma sürecinde kullanılacak özel sigmalar. Tanımlanmamışsa, num_inference_steps geçirildiğinde varsayılan davranış kullanılır.
  • guidance_scale (float, isteğe bağlı, varsayılan None) — Guidance distille edilmiş modeller için bir guidance scale değeri. Geleneksel classifier-free guidance'dan farklı olarak, guidance scale'in çıkarım sırasında gürültü tahmini yeniden ölçeklendirmesi yoluyla uygulandığı bu yöntemde, guidance distille edilmiş modeller guidance scale'i doğrudan forward pass sırasında bir giriş parametresi olarak alır. Guidance scale, guidance_scale > 1 olarak ayarlanarak etkinleştirilir. Daha yüksek guidance scale, prompt ile yakından ilişkili görsellerin üretilmesini teşvik eder, genellikle bu da daha düşük görsel kalitesi pahasına olur. Pipeline'daki bu parametre, gelecekte ortaya çıkacak guidance-distille edilmiş modelleri desteklemek için orada durmaktadır. Guidance distille edilmiş modeller kullanılmadığında yok sayılır. Geleneksel classifier-free guidance'i etkinleştirmek için lütfen true_cfg_scale > 1.0 ve negative_prompt (boş bir negatif prompt bile, örneğin ” ”, classifier-free guidance hesaplamalarını etkinleştirmelidir) iletin.
  • num_images_per_prompt (int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı.
  • generator (torch.Generator veya list[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 rastgele generator kullanılarak örneklemeye dayalı bir latents tensörü oluşturulur.
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.
  • prompt_embeds_mask (torch.Tensor, isteğe bağlı) — prompt_embeds için dikkat maskesi.
  • negative_prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş negatif metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. istem ağırlıklandırması. Sağlanmazsa, negative_prompt_embeds, negative_prompt girdi argümanından oluşturulur.
  • negative_prompt_embeds_mask (torch.Tensor, isteğe bağlı) — negative_prompt_embeds için dikkat maskesi.
  • 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 veya np.array.
  • return_dict (bool, isteğe bağlı, varsayılan True) — Düz bir tuple yerine ~pipelines.qwenimage.QwenImagePipelineOutput döndürülüp döndürülmemesi.
  • attention_kwargs (dict, isteğe bağlı) — Belirtilirse, diffusers.models.attention_processor içindeki self.processor altında tanımlanan AttentionProcessor'a iletilen bir kwargs sözlüğü.
  • 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_inputs tarafından belirtilen tüm tensörlerin listesini içerir.
  • callback_on_step_end_tensor_inputs (List, optional) — The list of tensor inputs for the callback_on_step_end function. The tensors specified in the list will be passed as callback_kwargs argument. You will only be able to include variables listed in the ._callback_tensor_inputs attribute of your pipeline class.
  • max_sequence_length (int, varsayılan 512) — prompt ile kullanılacak maksimum dizi uzunluğu.
  • resolution (int, isteğe bağlı, varsayılan 640) — koşul ve çıktı çözünürlüğünü belirlemek için (640, 1024) aralığında farklı bir sepet kullanılır
  • cfg_normalize (bool, isteğe bağlı, varsayılan False) — cfg normalizasyonunun etkinleştirilip etkinleştirilmeyeceğini belirtir.
  • use_en_prompt (bool, isteğe bağlı, varsayılan False) — kullanıcı açıklama sağlamadığında otomatik açıklama dili

Dönüş değeri

~pipelines.qwenimage.QwenImagePipelineOutput veya tuple

return_dict True ise ~pipelines.qwenimage.QwenImagePipelineOutput, aksi halde tuple. Tuple döndürülürken, ilk öğe üretilen görsellerin listesidir.

Üretim için pipeline çağrıldığında tetiklenen işlev.

Örnekler:

>>> import torch
>>> from PIL import Image
>>> from diffusers import QwenImageLayeredPipeline
>>> from diffusers.utils import load_image

>>> pipe = QwenImageLayeredPipeline.from_pretrained("Qwen/Qwen-Image-Layered", torch_dtype=torch.bfloat16)
>>> pipe.to("cuda")
>>> image = load_image(
...     "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/yarn-art-pikachu.png"
... ).convert("RGBA")
>>> prompt = ""
>>> # Depending on the variant being used, the pipeline call will slightly vary.
>>> # Refer to the pipeline documentation for more details.
>>> images = pipe(
...     image,
...     prompt,
...     num_inference_steps=50,
...     true_cfg_scale=4.0,
...     layers=4,
...     resolution=640,
...     cfg_normalize=False,
...     use_en_prompt=True,
... ).images[0]
>>> for i, image in enumerate(images):
...     image.save(f"{i}.out.png")

encode_prompt

< >

( prompt: str | list[str]device: typing.Optional[torch.device] = Nonenum_images_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int = 1024 )

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — kodlanacak prompt
  • device — (torch.device): torch cihazı
  • num_images_per_prompt (int) — her prompt için oluşturulacak görsel sayısı
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, ör. prompt ağırlıklandırma. Sağlanmazsa, metin gömme değerleri prompt girdi argümanından oluşturulur.

QwenImagePipelineOutput

sınıf diffusers.pipelines.qwenimage.pipeline_output.QwenImagePipelineOutput

< >

( images: list[PIL.Image.Image] | numpy.ndarray )

Parametreler

  • images (list[PIL.Image.Image] veya np.ndarray) — Uzunluğu batch_size olan gürültüsü azaltılmış PIL görüntülerinin listesi veya (batch_size, height, width, num_channels) biçiminde bir numpy dizisi. PIL görüntüleri veya numpy dizisi, difüzyon hattının gürültüsü azaltılmış görüntülerini temsil eder.

Stable Diffusion hatları için çıktı sınıfı.

Update on GitHub