Diffusers documentation
Kandinsky 5.0 Görsel
Kandinsky 5.0 Görsel
Kandinsky 5.0, Video ve Image üretimi için bir difüzyon modeli ailesidir.
Kandinsky 5.0 Image Lite, hafif bir görüntü üretim modelidir (6B parametre).
Model, birkaç temel yenilik sunar:
- Daha iyi eğitim kararlılığı için Flow Matching ile Latent diffusion pipeline
- Metin gömme vektörlerine çapraz dikkat (cross-attention) uygulayan Diffusion Transformer (DiT) ana üretken omurga olarak
- Kapsamlı metin anlama için Qwen2.5-VL ve CLIP kullanılarak çift metin kodlama
- Verimli görüntü kodlama ve çözümlüleme için Flux VAE
Orijinal kod tabanı kandinskylab/Kandinsky-5 adresinde bulunabilir.
Metinten videoya üretim için resmi model kontrol noktalarını, ön eğitilmiş, SFT, no-CFG ve damıtılmış varyantları dahil olmak üzere, Hub'daki Kandinsky Lab kuruluşunu inceleyin.
Mevcut Modeller
Kandinsky 5.0 Image Lite:
| model_id | Açıklama | Kullanım Senaryoları |
|---|---|---|
| kandinskylab/Kandinsky-5.0-T2I-Lite-sft-Diffusers | 6B görsel Gözetimli İnce Ayarlanmış model | En yüksek üretim kalitesi |
| kandinskylab/Kandinsky-5.0-I2I-Lite-sft-Diffusers | 6B görüntü düzenleme Gözetimli İnce Ayarlı model | En yüksek üretim kalitesi |
| kandinskylab/Kandinsky-5.0-T2I-Lite-pretrain-Diffusers | 6B görüntü tabanlı ön eğitilmiş model | Araştırma ve ince ayar |
| kandinskylab/Kandinsky-5.0-I2I-Lite-pretrain-Diffusers | 6B görüntü düzenleme taban ön eğitilmiş modeli | Araştırma ve ince ayar |
Kullanım Örnekleri
Temel Metinden Görsele Üretim
import torch
from diffusers import Kandinsky5T2IPipeline
# Load the pipeline
model_id = "kandinskylab/Kandinsky-5.0-T2I-Lite-sft-Diffusers"
pipe = Kandinsky5T2IPipeline.from_pretrained(model_id)
_ = pipe.to(device='cuda',dtype=torch.bfloat16) # or "mps", "xpu", "cpu"
# Generate image
prompt = "A fluffy, expressive cat wearing a bright red hat with a soft, slightly textured fabric. The hat should look cozy and well-fitted on the cat’s head. On the front of the hat, add clean, bold white text that reads “SWEET”, clearly visible and neatly centered. Ensure the overall lighting highlights the hat’s color and the cat’s fur details."
output = pipe(
prompt=prompt,
negative_prompt="",
height=1024,
width=1024,
num_inference_steps=50,
guidance_scale=3.5,
).image[0]Temel Görselden Görsel Üretimi
import torch
from diffusers import Kandinsky5I2IPipeline
from diffusers.utils import load_image
# Load the pipeline
model_id = "kandinskylab/Kandinsky-5.0-I2I-Lite-sft-Diffusers"
pipe = Kandinsky5I2IPipeline.from_pretrained(model_id)
_ = pipe.to(device='cuda',dtype=torch.bfloat16) # or "mps", "xpu", "cpu"
pipe.enable_model_cpu_offload() # <--- Enable CPU offloading for single GPU inference
# Edit the input image
image = load_image(
"https://huggingface.co/kandinsky-community/kandinsky-3/resolve/main/assets/title.jpg?download=true"
)
prompt = "Change the background from a winter night scene to a bright summer day. Place the character on a sandy beach with clear blue sky, soft sunlight, and gentle waves in the distance. Replace the winter clothing with a light short-sleeved T-shirt (in soft pastel colors) and casual shorts. Ensure the character’s fur reflects warm daylight instead of cold winter tones. Add small beach details such as seashells, footprints in the sand, and a few scattered beach toys nearby. Keep the oranges in the scene, but place them naturally on the sand."
negative_prompt = ""
output = pipe(
image=image,
prompt=prompt,
negative_prompt=negative_prompt,
guidance_scale=3.5,
).image[0]Kandinsky5T2IPipeline
sınıf diffusers.Kandinsky5T2IPipeline
< source >( transformer: Kandinsky5Transformer3DModelvae: AutoencoderKLtext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2VLProcessortext_encoder_2: CLIPTextModeltokenizer_2: CLIPTokenizerscheduler: FlowMatchEulerDiscreteScheduler )
Parametreler
- transformer (
Kandinsky5Transformer3DModel) — Kodlanmış görüntü latentlerini gürültüden arındırmak için kullanılan Koşullu Transformer. - vae (AutoencoderKL) — videoları latent temsillere kodlamak ve bu temsillerden çözmek için kullanılan black-forest-labs/FLUX.1-dev (vae) Varyasyonel Oto-Kodlayıcı Modeli.
- text_encoder (
Qwen2_5_VLForConditionalGeneration) — Donmuş metin kodlayıcı Qwen2.5-VL. - tokenizer (
AutoProcessor) — Qwen2.5-VL için Tokenizer. - text_encoder_2 (
CLIPTextModel) — Donmuş CLIP, özellikle clip-vit-large-patch14 varyantı. - tokenizer_2 (
CLIPTokenizer) — CLIP için tokenizer. - scheduler (FlowMatchEulerDiscreteScheduler) —
Kodlanmış görüntü latentlerini gürültüden arındırmak için
transformerile birlikte kullanılacak bir zamanlayıcı.
Kandinsky 5.0 kullanılarak metinden görüntüye üretim için Pipeline.
Bu model DiffusionPipeline sınıfından devralır. Tüm pipeline'lar için uygulanan genel yöntemlerin (indirme, kaydetme, belirli bir cihazda çalıştırma vb.) belgelerini üst sınıfın dokümantasyonunda bulabilirsiniz.
__call__
< source >( prompt: str | list[str] = Nonenegative_prompt: str | list[str] | None = Noneheight: int = 1024width: int = 1024num_inference_steps: int = 50guidance_scale: float = 3.5num_images_per_prompt: int | None = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds_qwen: typing.Optional[torch.Tensor] = Noneprompt_embeds_clip: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_qwen: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_clip: typing.Optional[torch.Tensor] = Noneprompt_cu_seqlens: typing.Optional[torch.Tensor] = Nonenegative_prompt_cu_seqlens: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Truecallback_on_step_end: typing.Optional[typing.Callable[[int, int, NoneType], diffusers.callbacks.PipelineCallback | diffusers.callbacks.MultiPipelineCallbacks]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']max_sequence_length: int = 512 ) → ~KandinskyImagePipelineOutput or tuple
Parametreler
- prompt (
strveyalist[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa bunun yerineprompt_embedsgeçirin. - negative_prompt (
strveyalist[str], isteğe bağlı) — Görsel üretim sırasında kaçınılması istenen istem veya istemler. Tanımlanmamışsa bunun yerinenegative_prompt_embedsgeçirin. Rehberlik kullanılmadığında (guidance_scale<1) yok sayılır. - height (
int, varsayılan1024) — Oluşturulan görüntünün piksel cinsinden yüksekliği. - width (
int, varsayılan1024) — Oluşturulan görüntünün piksel cinsinden genişliği. - num_inference_steps (
int, varsayılan50) — Gürültü azaltma adım sayısı. - guidance_scale (
float, varsayılan5.0) — Sınıflandırıcı-özgür yönlendirmede (classifier-free guidance) tanımlandığı gibi yönlendirme ölçeği. - 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 torch üreteci. - latents (
torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş gürültülü latentler. - prompt_embeds_qwen (
torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş Qwen metin gömümeleri. - prompt_embeds_clip (
torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş CLIP metin gömümeleri. - negative_prompt_embeds_qwen (
torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş Qwen negatif metin gömme değerleri. - negative_prompt_embeds_clip (
torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş CLIP negatif metin gömümleri. - prompt_cu_seqlens (
torch.Tensor, isteğe bağlı) — Qwen olumlu istemi için önceden oluşturulmuş kümülatif dizi uzunlukları. - negative_prompt_cu_seqlens (
torch.Tensor, isteğe bağlı) — Qwen negatif istemi için önceden oluşturulmuş kümülatif dizi uzunlukları. - output_type (
str, isteğe bağlı, varsayılan"pil") — Oluşturulan görüntünün çıktı biçimi. - return_dict (
bool, isteğe bağlı, varsayılanTrue) —KandinskyImagePipelineOutputdöndürülüp döndürülmemeye karar verir. - callback_on_step_end (
Callable,PipelineCallback,MultiPipelineCallbacks, isteğe bağlı) — Her gürültü azaltma adımının sonunda çağrılan bir işlev. - callback_on_step_end_tensor_inputs (
List, isteğe bağlı) —callback_on_step_endişlevi için girdi tensörlerinin listesi. - max_sequence_length (
int, varsayılan512) — Metin kodlama için maksimum dizi uzunluğu.
Dönüş değeri
~KandinskyImagePipelineOutput veya tuple
return_dict True ise KandinskyImagePipelineOutput döndürülür, aksi halde ilk öğesi üretilen görüntülerin listesini içeren bir tuple döndürülür.
Metinden görüntüye üretim için pipeline'ın çağrı fonksiyonu.
Örnekler:
>>> import torch
>>> from diffusers import Kandinsky5T2IPipeline
>>> # Available models:
>>> # kandinskylab/Kandinsky-5.0-T2I-Lite-sft-Diffusers
>>> # kandinskylab/Kandinsky-5.0-T2I-Lite-pretrain-Diffusers
>>> model_id = "kandinskylab/Kandinsky-5.0-T2I-Lite-sft-Diffusers"
>>> pipe = Kandinsky5T2IPipeline.from_pretrained(model_id, torch_dtype=torch.bfloat16)
>>> pipe = pipe.to("cuda")
>>> prompt = "A cat and a dog baking a cake together in a kitchen."
>>> output = pipe(
... prompt=prompt,
... negative_prompt="",
... height=1024,
... width=1024,
... num_inference_steps=50,
... guidance_scale=3.5,
... ).frames[0]check_inputs
< source >( promptnegative_promptheightwidthprompt_embeds_qwen = Noneprompt_embeds_clip = Nonenegative_prompt_embeds_qwen = Nonenegative_prompt_embeds_clip = Noneprompt_cu_seqlens = Nonenegative_prompt_cu_seqlens = Nonecallback_on_step_end_tensor_inputs = Nonemax_sequence_length = None )
Parametreler
- prompt — Girdi istemi
- negative_prompt — Yönlendirme için negatif prompt
- height — Görsel yüksekliği
- width — Görüntü genişliği
- prompt_embeds_qwen — Ön hesaplanmış Qwen istek gömme değerleri
- prompt_embeds_clip — Ön hesaplanmış CLIP istem gömme değerleri
- negative_prompt_embeds_qwen — Ön hesaplanmış Qwen negatif istem gömüleri
- negative_prompt_embeds_clip — Ön hesaplanmış CLIP negatif istem gömüleri
- prompt_cu_seqlens — Qwen olumlu istemi için önceden hesaplanmış kümülatif dizi uzunlukları
- negative_prompt_cu_seqlens — Qwen negatif istemi için önceden hesaplanmış kümülatif dizi uzunlukları
- callback_on_step_end_tensor_inputs — Geri çağrı girdi tensörleri
Yükseltilen
ValueError
ValueError— Girdiler geçersizse
Hattın girdi parametrelerini doğrulayın.
encode_prompt
< source >( prompt: str | list[str]num_images_per_prompt: int = 1max_sequence_length: int = 512device: typing.Optional[torch.device] = Nonedtype: typing.Optional[torch.dtype] = None ) → tuple[torch.Tensor, torch.Tensor, torch.Tensor]
Parametreler
- prompt (
strveyalist[str]) — Kodlanacak istem. - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - max_sequence_length (
int, isteğe bağlı, varsayılan 512) — Metin kodlama için maksimum dizi uzunluğu. 1024'ten küçük olmalıdır - device (
torch.device, isteğe bağlı) — Torch cihazı. - dtype (
torch.dtype, isteğe bağlı) — Torch dtype.
Dönüş değeri
tuple[torch.Tensor, torch.Tensor, torch.Tensor]
- Şekli (batch_size * num_images_per_prompt, sequence_length, embedding_dim) olan Qwen metin gömme değerleri
- CLIP havuzlanmış gömme vektörleri, şekli (batch_size * num_images_per_prompt, clip_embedding_dim)
- Qwen gömmelemeleri için kümülatif dizi uzunlukları (
cu_seqlens), şekli (batch_size * num_images_per_prompt + 1,)
Tek bir istemi (pozitif veya negatif) metin kodlayıcı gizli durumlarına kodlar.
Bu yöntem, hem Qwen2.5-VL hem de CLIP metin kodlayıcılarından gelen gömme (embedding) değerlerini birleştirerek görüntü üretimi için kapsamlı metin temsilleri oluşturur.
prepare_latents
< source >( batch_size: intnum_channels_latents: int = 16height: int = 1024width: int = 1024dtype: typing.Optional[torch.dtype] = Nonedevice: typing.Optional[torch.device] = Nonegenerator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = None ) → torch.Tensor
Parametreler
- batch_size (int) — Üretilecek görüntü sayısı
- num_channels_latents (int) — Gizli uzaydaki kanal sayısı
- height (int) — Üretilen görüntünün yüksekliği
- width (int) — Üretilen görüntünün genişliği
- dtype (torch.dtype) — Latentler için veri tipi
- device (torch.device) — Latent'lerin oluşturulacağı cihaz
- generator (torch.Generator) — Rastgele sayı üreteci
- latents (torch.Tensor) — Kullanılacak mevcut latentler
Dönüş değeri
torch.Tensor
Hazırlanmış latent tensör
Metinden görüntüye üretim için başlangıç gizli değişkenlerini hazırlar.
Bu yöntem rastgele gürültü latentleri oluşturur
Kandinsky5I2IPipeline
sınıf diffusers.Kandinsky5I2IPipeline
< source >( transformer: Kandinsky5Transformer3DModelvae: AutoencoderKLtext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2VLProcessortext_encoder_2: CLIPTextModeltokenizer_2: CLIPTokenizerscheduler: FlowMatchEulerDiscreteScheduler )
Parametreler
- transformer (
Kandinsky5Transformer3DModel) — Kodlanmış görüntü latentlerini gürültüden arındırmak için kullanılan Koşullu Transformer. - vae (AutoencoderKL) — videoları latent temsillere kodlamak ve bu temsillerden çözmek için kullanılan black-forest-labs/FLUX.1-dev (vae) Varyasyonel Oto-Kodlayıcı Modeli.
- text_encoder (
Qwen2_5_VLForConditionalGeneration) — Donmuş metin kodlayıcı Qwen2.5-VL. - tokenizer (
AutoProcessor) — Qwen2.5-VL için Tokenizer. - text_encoder_2 (
CLIPTextModel) — Donmuş CLIP, özellikle clip-vit-large-patch14 varyantı. - tokenizer_2 (
CLIPTokenizer) — CLIP için tokenizer. - scheduler (FlowMatchEulerDiscreteScheduler) —
Kodlanmış görüntü latentlerini gürültüden arındırmak için
transformerile birlikte kullanılacak bir zamanlayıcı.
Kandinsky 5.0 kullanarak görüntüden görüntüye üretim için Pipeline.
Bu model DiffusionPipeline sınıfından devralır. Tüm pipeline'lar için uygulanan genel yöntemlerin (indirme, kaydetme, belirli bir cihazda çalıştırma vb.) belgelerini üst sınıfın dokümantasyonunda bulabilirsiniz.
__call__
< source >( image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]]prompt: str | list[str] = Nonenegative_prompt: str | list[str] | None = Noneheight: int | None = Nonewidth: int | None = Nonenum_inference_steps: int = 50guidance_scale: float = 3.5num_images_per_prompt: int | None = 1generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds_qwen: typing.Optional[torch.Tensor] = Noneprompt_embeds_clip: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_qwen: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_clip: typing.Optional[torch.Tensor] = Noneprompt_cu_seqlens: typing.Optional[torch.Tensor] = Nonenegative_prompt_cu_seqlens: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Truecallback_on_step_end: typing.Optional[typing.Callable[[int, int, NoneType], diffusers.callbacks.PipelineCallback | diffusers.callbacks.MultiPipelineCallbacks]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents']max_sequence_length: int = 1024 ) → ~KandinskyImagePipelineOutput or tuple
Parametreler
- image (
PipelineImageInput) — Üretimin koşullandırılacağı girdi görüntüsü. Bir görüntü, görüntü listesi veyatorch.Tensorolmalıdır. - prompt (
strveyalist[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa bunun yerineprompt_embedsgeçirin. - negative_prompt (
strveyalist[str], isteğe bağlı) — Görsel üretim sırasında kaçınılması istenen istem veya istemler. Tanımlanmamışsa bunun yerinenegative_prompt_embedsgeçirin. Rehberlik kullanılmadığında (guidance_scale<1) yok sayılır. - height (
int) — Oluşturulan görüntünün piksel cinsinden yüksekliği. - width (
int) — Oluşturulan görüntünün piksel cinsinden genişliği. - num_inference_steps (
int, varsayılan50) — Gürültü azaltma adım sayısı. - guidance_scale (
float, varsayılan5.0) — Sınıflandırıcı-özgür yönlendirmede (classifier-free guidance) tanımlandığı gibi yönlendirme ölçeği. - 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 torch üreteci. - latents (
torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş gürültülü latentler. - prompt_embeds_qwen (
torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş Qwen metin gömümeleri. - prompt_embeds_clip (
torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş CLIP metin gömümeleri. - negative_prompt_embeds_qwen (
torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş Qwen negatif metin gömme değerleri. - negative_prompt_embeds_clip (
torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş CLIP negatif metin gömümleri. - prompt_cu_seqlens (
torch.Tensor, isteğe bağlı) — Qwen olumlu istemi için önceden oluşturulmuş kümülatif dizi uzunlukları. - negative_prompt_cu_seqlens (
torch.Tensor, isteğe bağlı) — Qwen negatif istemi için önceden oluşturulmuş kümülatif dizi uzunlukları. - output_type (
str, isteğe bağlı, varsayılan"pil") — Oluşturulan görüntünün çıktı biçimi. - return_dict (
bool, isteğe bağlı, varsayılanTrue) —KandinskyImagePipelineOutputdöndürülüp döndürülmemeye karar verir. - callback_on_step_end (
Callable,PipelineCallback,MultiPipelineCallbacks, isteğe bağlı) — Her gürültü azaltma adımının sonunda çağrılan bir işlev. - callback_on_step_end_tensor_inputs (
List, isteğe bağlı) —callback_on_step_endişlevi için girdi tensörlerinin listesi. - max_sequence_length (
int, varsayılan1024) — Metin ve görüntü qwen kodlaması için maksimum dizi uzunluğu. 1024'ten küçük olmalıdır
Dönüş değeri
~KandinskyImagePipelineOutput veya tuple
return_dict True ise KandinskyImagePipelineOutput döndürülür, aksi halde ilk öğesi üretilen görüntülerin listesini içeren bir tuple döndürülür.
Görselden görsel üretimi için pipeline'ın çağrı fonksiyonu.
Örnekler:
>>> import torch
>>> from diffusers import Kandinsky5I2IPipeline
>>> # Available models:
>>> # kandinskylab/Kandinsky-5.0-I2I-Lite-sft-Diffusers
>>> # kandinskylab/Kandinsky-5.0-I2I-Lite-pretrain-Diffusers
>>> model_id = "kandinskylab/Kandinsky-5.0-I2I-Lite-sft-Diffusers"
>>> pipe = Kandinsky5I2IPipeline.from_pretrained(model_id, torch_dtype=torch.bfloat16)
>>> pipe = pipe.to("cuda")
>>> prompt = "A cat and a dog baking a cake together in a kitchen."
>>> output = pipe(
... prompt=prompt,
... negative_prompt="",
... height=1024,
... width=1024,
... num_inference_steps=50,
... guidance_scale=3.5,
... ).frames[0]check_inputs
< source >( promptnegative_promptimageheightwidthprompt_embeds_qwen = Noneprompt_embeds_clip = Nonenegative_prompt_embeds_qwen = Nonenegative_prompt_embeds_clip = Noneprompt_cu_seqlens = Nonenegative_prompt_cu_seqlens = Nonecallback_on_step_end_tensor_inputs = Nonemax_sequence_length = None )
Parametreler
- prompt — Girdi istemi
- negative_prompt — Yönlendirme için negatif prompt
- image — Koşullandırma için girdi görüntüsü
- height — Görsel yüksekliği
- width — Görüntü genişliği
- prompt_embeds_qwen — Ön hesaplanmış Qwen istek gömme değerleri
- prompt_embeds_clip — Ön hesaplanmış CLIP istem gömme değerleri
- negative_prompt_embeds_qwen — Ön hesaplanmış Qwen negatif istem gömüleri
- negative_prompt_embeds_clip — Ön hesaplanmış CLIP negatif istem gömüleri
- prompt_cu_seqlens — Qwen olumlu istemi için önceden hesaplanmış kümülatif dizi uzunlukları
- negative_prompt_cu_seqlens — Qwen negatif istemi için önceden hesaplanmış kümülatif dizi uzunlukları
- callback_on_step_end_tensor_inputs — Geri çağrı girdi tensörleri
Yükseltilen
ValueError
ValueError— Girdiler geçersizse
Hattın girdi parametrelerini doğrulayın.
encode_prompt
< source >( prompt: str | list[str]image: Tensornum_images_per_prompt: int = 1max_sequence_length: int = 1024device: typing.Optional[torch.device] = Nonedtype: typing.Optional[torch.dtype] = None ) → tuple[torch.Tensor, torch.Tensor, torch.Tensor]
Parametreler
- prompt (
strveyalist[str]) — Kodlanacak istem. - num_images_per_prompt (
int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı. - max_sequence_length (
int, isteğe bağlı, varsayılan 1024) — Metin kodlama için maksimum dizi uzunluğu. 1024'ten küçük olmalıdır - device (
torch.device, isteğe bağlı) — Torch cihazı. - dtype (
torch.dtype, isteğe bağlı) — Torch dtype.
Dönüş değeri
tuple[torch.Tensor, torch.Tensor, torch.Tensor]
- Şekli (batch_size * num_images_per_prompt, sequence_length, embedding_dim) olan Qwen metin gömme değerleri
- CLIP havuzlanmış gömme vektörleri, şekli (batch_size * num_images_per_prompt, clip_embedding_dim)
- Qwen gömmelemeleri için kümülatif dizi uzunlukları (
cu_seqlens), şekli (batch_size * num_images_per_prompt + 1,)
Tek bir istemi (pozitif veya negatif) metin kodlayıcı gizli durumlarına kodlar.
Bu yöntem, hem Qwen2.5-VL hem de CLIP metin kodlayıcılarından gelen gömme (embedding) değerlerini birleştirerek görüntü üretimi için kapsamlı metin temsilleri oluşturur.
prepare_latents
< source >( image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]]batch_size: intnum_channels_latents: int = 16height: int = 1024width: int = 1024dtype: typing.Optional[torch.dtype] = Nonedevice: typing.Optional[torch.device] = Nonegenerator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = None ) → torch.Tensor
Parametreler
- image (PipelineImageInput) — Üretimi koşullandırmak için girdi olarak kullanılan görüntü
- batch_size (int) — Üretilecek görüntü sayısı
- num_channels_latents (int) — Gizli uzaydaki kanal sayısı
- height (int) — Üretilen görüntünün yüksekliği
- width (int) — Üretilen görüntünün genişliği
- dtype (torch.dtype) — Latentler için veri tipi
- device (torch.device) — Latent'lerin oluşturulacağı cihaz
- generator (torch.Generator) — Rastgele sayı üreteci
- latents (torch.Tensor) — Kullanılacak mevcut latentler
Dönüş değeri
torch.Tensor
Kodlanmış görüntü ile hazırlanmış latent tensör
Görselden görsel üretim için başlangıç gizli değişkenlerini hazırlar.
Bu yöntem, kodlanmış görüntü ile rastgele gürültü latentleri oluşturur,
Atıf
@misc{kandinsky2025,
author = {Alexander Belykh and Alexander Varlamov and Alexey Letunovskiy and Anastasia Aliaskina and Anastasia Maltseva and Anastasiia Kargapoltseva and Andrey Shutkin and Anna Averchenkova and Anna Dmitrienko and Bulat Akhmatov and Denis Dimitrov and Denis Koposov and Denis Parkhomenko and Dmitrii and Ilya Vasiliev and Ivan Kirillov and Julia Agafonova and Kirill Chernyshev and Kormilitsyn Semen and Lev Novitskiy and Maria Kovaleva and Mikhail Mamaev and Mikhailov and Nikita Kiselev and Nikita Osterov and Nikolai Gerasimenko and Nikolai Vaulin and Olga Kim and Olga Vdovchenko and Polina Gavrilova and Polina Mikhailova and Tatiana Nikulina and Viacheslav Vasilev and Vladimir Arkhipkin and Vladimir Korviakov and Vladimir Polovnikov and Yury Kolabushin},
title = {Kandinsky 5.0: A family of diffusion models for Video & Image generation},
howpublished = {\url{https://github.com/kandinskylab/Kandinsky-5}},
year = 2025
}