Diffusers documentation

صورة Kandinsky 5.0

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

صورة Kandinsky 5.0

Kandinsky 5.0 هي عائلة من نماذج الانتشار لتوليد الفيديو والصور.

Kandinsky 5.0 Image Lite هو نموذج خفيف لتوليد الصور (6 مليارات من المعاملات).

يُقدّم النموذج عدة ابتكارات رئيسية:

  • خط أنابيب الانتشار الكامن مع Flow Matching لتحسين استقرار التدريب
  • Diffusion Transformer (DiT) كعمود فقري توليدي رئيسي مع انتباه متقاطع إلى تمثيلات النص
  • ترميز نصي مزدوج باستخدام Qwen2.5-VL و CLIP لفهم شامل للنص
  • Flux VAE لتشفير وفك ترميز الصور بكفاءة

يمكن العثور على قاعدة الكود الأصلية في kandinskylab/Kandinsky-5.

اطّلع على منظمة Kandinsky Lab على Hub للحصول على نقاط التفتيش الرسمية للنماذج لتوليد الفيديو من النص، بما في ذلك النماذج المُسبقة التدريب، ونماذج SFT، ونماذج no-CFG، والنماذج المُقطّرة.

النماذج المتاحة

Kandinsky 5.0 Image Lite:

model_idالوصفحالات الاستخدام
kandinskylab/Kandinsky-5.0-T2I-Lite-sft-Diffusersنموذج 6B صورة مُدرَّب بإشرافأعلى جودة توليد
kandinskylab/Kandinsky-5.0-I2I-Lite-sft-Diffusersنموذج 6B لتحرير الصور مُدرَّب بإشرافأعلى جودة توليد
kandinskylab/Kandinsky-5.0-T2I-Lite-pretrain-Diffusersنموذج 6B image Base المُدرَّب مسبقًاالبحث وضبط الدقة
kandinskylab/Kandinsky-5.0-I2I-Lite-pretrain-Diffusersنموذج 6B لتحرير الصور نموذج مُدرَّب مسبقًاالبحث وضبط الدقة

أمثلة على الاستخدام

توليد النص إلى الصورة الأساسي

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]

التوليد الأساسي من صورة إلى صورة

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

فئة diffusers.Kandinsky5T2IPipeline

< >

( transformer: Kandinsky5Transformer3DModelvae: AutoencoderKLtext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2VLProcessortext_encoder_2: CLIPTextModeltokenizer_2: CLIPTokenizerscheduler: FlowMatchEulerDiscreteScheduler )

المعاملات

  • transformer (Kandinsky5Transformer3DModel) — نموذج Transformer مشروط لإزالة الضوضاء من كامنات الصورة المُرمّزة.
  • vae (AutoencoderKL) — نموذج الترميز التبايني التلقائي black-forest-labs/FLUX.1-dev (vae) لتشفير وفك تشفير مقاطع الفيديو إلى تمثيلات كامنة ومنها.
  • text_encoder (Qwen2_5_VLForConditionalGeneration) — مُشفِّر نص ثابت Qwen2.5-VL.
  • tokenizer (AutoProcessor) — مُقسِّم لـ Qwen2.5-VL.
  • text_encoder_2 (CLIPTextModel) — نموذج CLIP مجمّد، تحديداً النسخة clip-vit-large-patch14.
  • tokenizer_2 (CLIPTokenizer) — مُقسِّم لـ CLIP.
  • scheduler (FlowMatchEulerDiscreteScheduler) — جدول زمني يُستخدم بالاقتران مع transformer لإزالة الضوضاء من كائنات الصورة المُرمّزة.

خط أنابيب لتوليد الصور من النص باستخدام Kandinsky 5.0.

يرث هذا النموذج من DiffusionPipeline. راجع توثيق الفئة الأصلية لمعرفة الطرق العامة المُنفَّذة لجميع خطوط الأنابيب (التنزيل، الحفظ، التشغيل على جهاز معين، إلخ).

__call__

< >

( 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

المعاملات

  • prompt (str أو list[str]، اختياري) — الموجّه أو الموجّهات التي تُوجّه توليد الصورة. إذا لم يُعرَّف، فمرّر prompt_embeds بدلاً من ذلك.
  • negative_prompt (str أو list[str]، اختياري) — الموجّه أو الموجّهات التي يجب تجنّبها أثناء توليد الصورة. إذا لم يُعرَّف، فمرّر negative_prompt_embeds بدلاً من ذلك. يُتجاهل عند عدم استخدام التوجيه (guidance_scale < 1).
  • height (int، القيمة الافتراضية 1024) — ارتفاع الصورة المولّدة بالبكسل.
  • width (int، القيمة الافتراضية 1024) — عرض الصورة المولّدة بالبكسل.
  • num_inference_steps (int، القيمة الافتراضية 50) — عدد خطوات إزالة الضوضاء.
  • guidance_scale (float، القيمة الافتراضية 5.0) — مقياس التوجيه كما هو مُعرَّف في التوجيه الحر من التصنيف.
  • num_images_per_prompt (int، اختياري، القيمة الافتراضية 1) — عدد الصور التي سيتم توليدها لكل موجه.
  • generator (torch.Generator أو list[torch.Generator]، اختياري) — مولّد torch لجعل التوليد حتميًا.
  • latents (torch.Tensor، اختياري) — كائنات latents ضجيجية مُولّدة مسبقًا.
  • prompt_embeds_qwen (torch.Tensor، اختياري) — تضمينات نصية Qwen مُولّدة مسبقًا.
  • prompt_embeds_clip (torch.Tensor، اختياري) — تضمينات نصية CLIP مُولّدة مسبقًا.
  • negative_prompt_embeds_qwen (torch.Tensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا لنموذج Qwen.
  • negative_prompt_embeds_clip (torch.Tensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا بواسطة CLIP.
  • prompt_cu_seqlens (torch.Tensor، اختياري) — أطوال التسلسل التراكمية المُولَّدة مسبقًا للموجّه الإيجابي في Qwen.
  • negative_prompt_cu_seqlens (torch.Tensor، اختياري) — أطوال التسلسل التراكمية المُولَّدة مسبقًا لـ Qwen negative prompt.
  • output_type (str، اختياري، الافتراضي "pil") — صيغة مخرجات الصورة المولّدة.
  • return_dict (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إرجاع KandinskyImagePipelineOutput أم لا.
  • callback_on_step_end (Callable، PipelineCallback، MultiPipelineCallbacks، اختياري) — دالة تُستدعى في نهاية كل خطوة إزالة ضوضاء.
  • callback_on_step_end_tensor_inputs (List, اختياري) — قائمة مدخلات المصفوفات لدالة callback_on_step_end.
  • max_sequence_length (int، القيمة الافتراضية 512) — أقصى طول للسلسلة لتشفير النص.

يعيد

~KandinskyImagePipelineOutput أو tuple

إذا كان return_dict هو True، يُعاد KandinskyImagePipelineOutput، وإلا يُعاد tuple يكون عنصره الأول قائمة بالصور المولّدة.

دالة الاستدعاء call لخط الأنابيب pipeline لتوليد الصور من النص.

أمثلة:

>>> 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

< >

( 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 )

المعاملات

  • prompt — موجه الإدخال
  • negative_prompt — موجه سلبي للإرشاد
  • height — ارتفاع الصورة
  • width — عرض الصورة
  • prompt_embeds_qwen — تمثيلات موجه Qwen محسوبة مسبقًا
  • prompt_embeds_clip — تمثيلات موجهات CLIP محسوبة مسبقًا
  • negative_prompt_embeds_qwen — تمثيلات سلبية مُسبقة الحساب لـ Qwen
  • negative_prompt_embeds_clip — تمثيلات سلبية مُسبقة الحساب لـ CLIP
  • prompt_cu_seqlens — أطوال التسلسلات التراكمية المحسوبة مسبقًا للموجّه الإيجابي في Qwen
  • negative_prompt_cu_seqlens — أطوال التسلسلات التراكمية المحسوبة مسبقًا لـ Qwen negative prompt
  • callback_on_step_end_tensor_inputs — مدخلات تينسور الدالة الاستدعائية

يرفع

ValueError

  • ValueError — إذا كانت المدخلات غير صالحة

تحقّق من معاملات الإدخال للخطّ الأنابيب.

encode_prompt

< >

( 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]

المعاملات

  • prompt (str أو list[str]) — الموجّه الذي سيتم ترميزه.
  • num_images_per_prompt (int، اختياري، القيمة الافتراضية 1) — عدد الصور التي سيتم توليدها لكل موجه.
  • max_sequence_length (int، اختياري، القيمة الافتراضية 512) — الحد الأقصى لطول التسلسل لتشفير النص. يجب أن يكون أقل من 1024
  • device (torch.device، اختياري) — جهاز Torch.
  • dtype (torch.dtype، اختياري) — نوع البيانات في Torch.

يعيد

tuple[torch.Tensor, torch.Tensor, torch.Tensor]

  • تضمينات نص Qwen ذات الشكل (batch_size * num_images_per_prompt, sequence_length, embedding_dim)
  • تضمينات CLIP المجمّعة ذات الشكل (batch_size * num_images_per_prompt, clip_embedding_dim)
  • الأطوال التراكمية للتسلسلات (cu_seqlens) لتضمينات Qwen من الشكل (batch_size * num_images_per_prompt + 1,)

يقوم بتشفير موجه واحد (إيجابي أو سلبي) إلى حالات مخفية لمشفّر النص.

تجمع هذه الطريقة بين التضمينات (embeddings) المستخرجة من كلا مشفري النص في Qwen2.5-VL وCLIP لإنشاء تمثيلات نصية شاملة لتوليد الصور.

prepare_latents

< >

( 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

المعاملات

  • batch_size (int) — عدد الصور التي سيتم توليدها
  • num_channels_latents (int) — عدد القنوات في الفضاء الكامن
  • height (int) — ارتفاع الصورة المولّدة
  • width (int) — عرض الصورة المولّدة
  • dtype (torch.dtype) — نوع البيانات للقيم الكامنة
  • device (torch.device) — الجهاز الذي سيتم إنشاء المتغيرات الكامنة عليه
  • generator (torch.Generator) — مولّد الأرقام العشوائية
  • latents (torch.Tensor) — كامنات موجودة مسبقًا للاستخدام

يعيد

torch.Tensor

موتر كامن مُعدّ

جهّز متغيرات كامنة أولية لتوليد الصور من النص.

ينشئ هذا الأسلوب ضوضاء عشوائية

Kandinsky5I2IPipeline

فئة diffusers.Kandinsky5I2IPipeline

< >

( transformer: Kandinsky5Transformer3DModelvae: AutoencoderKLtext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2VLProcessortext_encoder_2: CLIPTextModeltokenizer_2: CLIPTokenizerscheduler: FlowMatchEulerDiscreteScheduler )

المعاملات

  • transformer (Kandinsky5Transformer3DModel) — نموذج Transformer مشروط لإزالة الضوضاء من كامنات الصورة المُرمّزة.
  • vae (AutoencoderKL) — نموذج الترميز التبايني التلقائي black-forest-labs/FLUX.1-dev (vae) لتشفير وفك تشفير مقاطع الفيديو إلى تمثيلات كامنة ومنها.
  • text_encoder (Qwen2_5_VLForConditionalGeneration) — مُشفِّر نص ثابت Qwen2.5-VL.
  • tokenizer (AutoProcessor) — مُقسِّم لـ Qwen2.5-VL.
  • text_encoder_2 (CLIPTextModel) — نموذج CLIP مجمّد، تحديداً النسخة clip-vit-large-patch14.
  • tokenizer_2 (CLIPTokenizer) — مُقسِّم لـ CLIP.
  • scheduler (FlowMatchEulerDiscreteScheduler) — جدول زمني يُستخدم بالاقتران مع transformer لإزالة الضوضاء من كائنات الصورة المُرمّزة.

خط أنابيب لتوليد الصور من صورة باستخدام Kandinsky 5.0.

يرث هذا النموذج من DiffusionPipeline. راجع توثيق الفئة الأصلية لمعرفة الطرق العامة المُنفَّذة لجميع خطوط الأنابيب (التنزيل، الحفظ، التشغيل على جهاز معين، إلخ).

__call__

< >

( 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

المعاملات

  • image (PipelineImageInput) — الصورة المدخلة التي تُشترط عليها عملية التوليد. يجب أن تكون صورة، أو قائمة من الصور، أو torch.Tensor.
  • prompt (str أو list[str]، اختياري) — الموجّه أو الموجّهات التي تُوجّه توليد الصورة. إذا لم يُعرَّف، فمرّر prompt_embeds بدلاً من ذلك.
  • negative_prompt (str أو list[str]، اختياري) — الموجّه أو الموجّهات التي يجب تجنّبها أثناء توليد الصورة. إذا لم يُعرَّف، فمرّر negative_prompt_embeds بدلاً من ذلك. يُتجاهل عند عدم استخدام التوجيه (guidance_scale < 1).
  • height (int) — ارتفاع الصورة المولّدة بالبكسل.
  • width (int) — عرض الصورة المولّدة بالبكسل.
  • num_inference_steps (int، القيمة الافتراضية 50) — عدد خطوات إزالة الضوضاء.
  • guidance_scale (float، القيمة الافتراضية 5.0) — مقياس التوجيه كما هو مُعرَّف في التوجيه الحر من التصنيف.
  • num_images_per_prompt (int، اختياري، القيمة الافتراضية 1) — عدد الصور التي سيتم توليدها لكل موجه.
  • generator (torch.Generator أو list[torch.Generator]، اختياري) — مولّد torch لجعل التوليد حتميًا.
  • latents (torch.Tensor، اختياري) — كائنات latents ضجيجية مُولّدة مسبقًا.
  • prompt_embeds_qwen (torch.Tensor، اختياري) — تضمينات نصية Qwen مُولّدة مسبقًا.
  • prompt_embeds_clip (torch.Tensor، اختياري) — تضمينات نصية CLIP مُولّدة مسبقًا.
  • negative_prompt_embeds_qwen (torch.Tensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا لنموذج Qwen.
  • negative_prompt_embeds_clip (torch.Tensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا بواسطة CLIP.
  • prompt_cu_seqlens (torch.Tensor، اختياري) — أطوال التسلسل التراكمية المُولَّدة مسبقًا للموجّه الإيجابي في Qwen.
  • negative_prompt_cu_seqlens (torch.Tensor، اختياري) — أطوال التسلسل التراكمية المُولَّدة مسبقًا لـ Qwen negative prompt.
  • output_type (str، اختياري، الافتراضي "pil") — صيغة مخرجات الصورة المولّدة.
  • return_dict (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إرجاع KandinskyImagePipelineOutput أم لا.
  • callback_on_step_end (Callable، PipelineCallback، MultiPipelineCallbacks، اختياري) — دالة تُستدعى في نهاية كل خطوة إزالة ضوضاء.
  • callback_on_step_end_tensor_inputs (List, اختياري) — قائمة مدخلات المصفوفات لدالة callback_on_step_end.
  • max_sequence_length (int، القيمة الافتراضية 1024) — الحد الأقصى لطول التسلسل لتشفير النص والصورة في qwen. يجب أن يكون أقل من 1024

يعيد

~KandinskyImagePipelineOutput أو tuple

إذا كان return_dict هو True، يُعاد KandinskyImagePipelineOutput، وإلا يُعاد tuple يكون عنصره الأول قائمة بالصور المولّدة.

دالة الاستدعاء call لخط الأنابيب pipeline لتوليد الصور من الصور.

أمثلة:

>>> 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

< >

( 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 )

المعاملات

  • prompt — موجه الإدخال
  • negative_prompt — موجه سلبي للإرشاد
  • image — صورة الإدخال للتكييف
  • height — ارتفاع الصورة
  • width — عرض الصورة
  • prompt_embeds_qwen — تمثيلات موجه Qwen محسوبة مسبقًا
  • prompt_embeds_clip — تمثيلات موجهات CLIP محسوبة مسبقًا
  • negative_prompt_embeds_qwen — تمثيلات سلبية مُسبقة الحساب لـ Qwen
  • negative_prompt_embeds_clip — تمثيلات سلبية مُسبقة الحساب لـ CLIP
  • prompt_cu_seqlens — أطوال التسلسلات التراكمية المحسوبة مسبقًا للموجّه الإيجابي في Qwen
  • negative_prompt_cu_seqlens — أطوال التسلسلات التراكمية المحسوبة مسبقًا لـ Qwen negative prompt
  • callback_on_step_end_tensor_inputs — مدخلات تينسور الدالة الاستدعائية

يرفع

ValueError

  • ValueError — إذا كانت المدخلات غير صالحة

تحقّق من معاملات الإدخال للخطّ الأنابيب.

encode_prompt

< >

( 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]

المعاملات

  • prompt (str أو list[str]) — الموجّه الذي سيتم ترميزه.
  • num_images_per_prompt (int، اختياري، القيمة الافتراضية 1) — عدد الصور التي سيتم توليدها لكل موجه.
  • max_sequence_length (int، اختياري، القيمة الافتراضية 1024) — الحد الأقصى لطول التسلسل لتشفير النص. يجب أن يكون أقل من 1024
  • device (torch.device، اختياري) — جهاز Torch.
  • dtype (torch.dtype، اختياري) — نوع البيانات في Torch.

يعيد

tuple[torch.Tensor, torch.Tensor, torch.Tensor]

  • تضمينات نص Qwen ذات الشكل (batch_size * num_images_per_prompt, sequence_length, embedding_dim)
  • تضمينات CLIP المجمّعة ذات الشكل (batch_size * num_images_per_prompt, clip_embedding_dim)
  • الأطوال التراكمية للتسلسلات (cu_seqlens) لتضمينات Qwen من الشكل (batch_size * num_images_per_prompt + 1,)

يقوم بتشفير موجه واحد (إيجابي أو سلبي) إلى حالات مخفية لمشفّر النص.

تجمع هذه الطريقة بين التضمينات (embeddings) المستخرجة من كلا مشفري النص في Qwen2.5-VL وCLIP لإنشاء تمثيلات نصية شاملة لتوليد الصور.

prepare_latents

< >

( 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

المعاملات

  • image (PipelineImageInput) — الصورة المُدخلة التي تُشترط عليها عملية التوليد
  • batch_size (int) — عدد الصور التي سيتم توليدها
  • num_channels_latents (int) — عدد القنوات في الفضاء الكامن
  • height (int) — ارتفاع الصورة المولّدة
  • width (int) — عرض الصورة المولّدة
  • dtype (torch.dtype) — نوع البيانات للقيم الكامنة
  • device (torch.device) — الجهاز الذي سيتم إنشاء المتغيرات الكامنة عليه
  • generator (torch.Generator) — مولّد الأرقام العشوائية
  • latents (torch.Tensor) — كامنات موجودة مسبقًا للاستخدام

يعيد

torch.Tensor

موتر كامن مُعدّ مع صورة مُرمّزة

جهّز متغيرات كامنة أولية لتوليد الصور من الصور.

ينشئ هذا الأسلوب ضوضاء عشوائية كامنة مع صورة مشفرة،

الاستشهاد

@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
}
Update on GitHub