Diffusers documentation
HunyuanImage2.1
HunyuanImage2.1
HunyuanImage-2.1 هو نموذج نص إلى صورة بحجم 17 مليار معلمة، قادر على توليد صور بدقة 2K (2048 x 2048)
يتوفر HunyuanImage-2.1 في المتغيرات التالية:
| نوع النموذج | معرف النموذج |
|---|---|
| HunyuanImage-2.1 | hunyuanvideo-community/HunyuanImage-2.1-Diffusers |
| HunyuanImage-2.1-Distilled | hunyuanvideo-community/HunyuanImage-2.1-Distilled-Diffusers |
| HunyuanImage-2.1-Refiner | hunyuanvideo-community/HunyuanImage-2.1-Refiner-Diffusers |
يمكن أن يسرّع التخزين المؤقت الاستدلال أيضًا من خلال تخزين المخرجات الوسيطة وإعادة استخدامها.
HunyuanImage-2.1
يطبّق HunyuanImage-2.1 تقنية Adaptive Projected Guidance (APG) معClassifier-Free Guidance (CFG) في حلقة إزالة الضوضاء. يحتوي HunyuanImagePipeline على مكوّن guider (اقرأ المزيد حول Guider) ولا يقبل معامل guidance_scale وقت التشغيل. لتغيير المعاملات المتعلقة بـ guider، مثل guidance_scale، يمكنك بدلاً من ذلك تحديث تكوين guider.
import torch
from diffusers import HunyuanImagePipeline
pipe = HunyuanImagePipeline.from_pretrained(
"hunyuanvideo-community/HunyuanImage-2.1-Diffusers",
dtype=torch.bfloat16
)
pipe = pipe.to("cuda") # or "mps", "xpu", "cpu"يمكنك فحص كائن guider:
>>> pipe.guider
AdaptiveProjectedMixGuidance {
"_class_name": "AdaptiveProjectedMixGuidance",
"_diffusers_version": "0.36.0.dev0",
"adaptive_projected_guidance_momentum": -0.5,
"adaptive_projected_guidance_rescale": 10.0,
"adaptive_projected_guidance_scale": 10.0,
"adaptive_projected_guidance_start_step": 5,
"enabled": true,
"eta": 0.0,
"guidance_rescale": 0.0,
"guidance_scale": 3.5,
"start": 0.0,
"stop": 1.0,
"use_original_formulation": false
}
State:
step: None
num_inference_steps: None
timestep: None
count_prepared: 0
enabled: True
num_conditions: 2
momentum_buffer: None
is_apg_enabled: False
is_cfg_enabled: Trueلتحديث الموجّه بإعداد مختلف، استخدم طريقة new(). على سبيل المثال، لتوليد صورة مع guidance_scale=5.0 مع الإبقاء على جميع معاملات التوجيه الافتراضية الأخرى:
import torch
from diffusers import HunyuanImagePipeline
pipe = HunyuanImagePipeline.from_pretrained(
"hunyuanvideo-community/HunyuanImage-2.1-Diffusers",
dtype=torch.bfloat16
)
pipe = pipe.to("cuda") # or "mps", "xpu", "cpu"
# Update the guider configuration
pipe.guider = pipe.guider.new(guidance_scale=5.0)
prompt = (
"A cute, cartoon-style anthropomorphic penguin plush toy with fluffy fur, standing in a painting studio, "
"wearing a red knitted scarf and a red beret with the word 'Tencent' on it, holding a paintbrush with a "
"focused expression as it paints an oil painting of the Mona Lisa, rendered in a photorealistic photographic style."
)
image = pipe(
prompt=prompt,
num_inference_steps=50,
height=2048,
width=2048,
).images[0]
image.save("image.png")HunyuanImage-2.1-Distilled
استخدم distilled_guidance_scale مع نقطة الفحص المُقطّرة للإرشاد،
import torch
from diffusers import HunyuanImagePipeline
pipe = HunyuanImagePipeline.from_pretrained("hunyuanvideo-community/HunyuanImage-2.1-Distilled-Diffusers", dtype=torch.bfloat16)
pipe = pipe.to("cuda") # or "mps", "xpu", "cpu"
prompt = (
"A cute, cartoon-style anthropomorphic penguin plush toy with fluffy fur, standing in a painting studio, "
"wearing a red knitted scarf and a red beret with the word 'Tencent' on it, holding a paintbrush with a "
"focused expression as it paints an oil painting of the Mona Lisa, rendered in a photorealistic photographic style."
)
out = pipe(
prompt,
num_inference_steps=8,
distilled_guidance_scale=3.25,
height=2048,
width=2048,
generator=generator,
).images[0]
HunyuanImagePipeline
فئة diffusers.HunyuanImagePipeline
< source >( scheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLHunyuanImagetext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2Tokenizertext_encoder_2: T5EncoderModeltokenizer_2: ByT5Tokenizertransformer: HunyuanImageTransformer2DModelguider: AdaptiveProjectedMixGuidance | None = Noneocr_guider: AdaptiveProjectedMixGuidance | None = None )
المعاملات
- transformer (HunyuanImageTransformer2DModel) — بنية Transformer الشرطية (MMDiT) لإزالة الضوضاء من كامنات الصورة المُرمّزة.
- scheduler (FlowMatchEulerDiscreteScheduler) —
جدول زمني يُستخدم بالاقتران مع
transformerلإزالة الضوضاء من كائنات الصورة المُرمّزة. - vae (AutoencoderKLHunyuanImage) — نموذج الترميز التبايني التلقائي (VAE) لتشفير وفك تشفير الصور إلى تمثيلات كامنة ومنها.
- text_encoder (
Qwen2.5-VL-7B-Instruct) — Qwen2.5-VL-7B-Instruct، وتحديداً متغير Qwen2.5-VL-7B-Instruct. - tokenizer (
Qwen2Tokenizer) — مُجزِّئ من الفئة [Qwen2Tokenizer]. - text_encoder_2 (
T5EncoderModel) — نسخة T5EncoderModel. - tokenizer_2 (
ByT5Tokenizer) — مُقسِّم من الفئة [ByT5Tokenizer] - guider (
AdaptiveProjectedMixGuidance) — [AdaptiveProjectedMixGuidance]يُستخدم لتوجيه توليد الصورة. - ocr_guider (
AdaptiveProjectedMixGuidance، اختياري) — [AdaptiveProjectedMixGuidance] يُستخدم لتوجيه توليد الصورة عند الحاجة إلى عرض النص.
خط أنابيب HunyuanImage لتوليد الصور من النص.
__call__
< source >( prompt: str | list[str] = Nonenegative_prompt: str | list[str] = Noneheight: int | None = Nonewidth: int | None = Nonenum_inference_steps: int = 50distilled_guidance_scale: float | None = 3.25sigmas: list[float] | None = Nonenum_images_per_prompt: int = 1generator: torch.Generator | list[torch.Generator] | None = Nonelatents: torch.Tensor | None = Noneprompt_embeds: torch.Tensor | None = Noneprompt_embeds_mask: torch.Tensor | None = Nonenegative_prompt_embeds: torch.Tensor | None = Nonenegative_prompt_embeds_mask: torch.Tensor | None = Noneprompt_embeds_2: torch.Tensor | None = Noneprompt_embeds_mask_2: torch.Tensor | None = Nonenegative_prompt_embeds_2: torch.Tensor | None = Nonenegative_prompt_embeds_mask_2: torch.Tensor | None = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, Any] | None = Nonecallback_on_step_end: Callable[[int, int], None] | None = Nonecallback_on_step_end_tensor_inputs: list[str] = ['latents'] ) → ~pipelines.hunyuan_image.HunyuanImagePipelineOutput or tuple
المعاملات
- prompt (
strأوlist[str]، اختياري) — الموجّه أو الموجّهات التي توجّه توليد الصورة. إذا لم يُعرَّف، يجب تمريرprompt_embedsبدلاً من ذلك. - negative_prompt (
strأوlist[str]، اختياري) — الموجّه أو الموجّهات التي لا ينبغي استخدامها لتوجيه توليد الصورة. إذا لم يُعرَّف ولم يُقدَّم negative_prompt_embeds، فسيتم استخدام موجّه سلبي فارغ. يتم تجاهله عند عدم استخدام التوجيه. ). - height (
int، اختياري، القيمة الافتراضية هي self.unet.config.sample_size * self.vae_scale_factor) — ارتفاع الصورة المولّدة بالبكسلات. يتم ضبطه على 1024 افتراضيًا للحصول على أفضل النتائج. - width (
int، اختياري، القيمة الافتراضية هي self.unet.config.sample_size * self.vae_scale_factor) — عرض الصورة المولدة بالبكسلات. يتم ضبطه على 1024 افتراضيًا للحصول على أفضل النتائج. - num_inference_steps (
int، اختياري، القيمة الافتراضية 50) — عدد خطوات إزالة الضوضاء. تؤدي زيادة عدد خطوات إزالة الضوضاء عادةً إلى صورة بجودة أعلى على حساب بطء الاستدلال. - sigmas (
list[float]، اختياري) — قيم sigmas مخصصة لاستخدامها في عملية إزالة الضوضاء مع المجدولين الذين يدعمون معاملsigmasفي طريقةset_timestepsالخاصة بهم. إذا لم يُعرَّف، فسيتم استخدام السلوك الافتراضي عند تمريرnum_inference_steps. - distilled_guidance_scale (
float, اختياري، القيمة الافتراضية None) — قيمة مقياس التوجيه (guidance scale) للنماذج المُقطَّرة للتوجيه. على عكس التوجيه الحر من التصنيف (classifier-free guidance) التقليدي حيث يُطبَّق مقياس التوجيه أثناء الاستدلال من خلال إعادة تحجيم تنبؤ الضوضاء، فإن النماذج المُقطَّرة للتوجيه تتخذ مقياس التوجيه مباشرةً كمدخل معياري أثناء المرور الأمامي. يتم تفعيل التوجيه عن طريق تعيينdistilled_guidance_scale > 1. يشجّع مقياس توجيه أعلى على توليد صور مرتبطة ارتباطًا وثيقًا بنصprompt، وعادةً على حساب انخفاض جودة الصورة. بالنسبة للنماذج المُقطَّرة للتوجيه، هذا المعامل مطلوب. أما بالنسبة للنماذج غير المُقطَّرة، فسيتم تجاهل هذا المعامل. - num_images_per_prompt (
int، اختياري، القيمة الافتراضية 1) — عدد الصور التي سيتم توليدها لكل موجه. - generator (
torch.Generatorأوlist[torch.Generator]، اختياري) — مولّد واحد أو قائمة من مولّدات torch لجعل التوليد حتميًا. - latents (
torch.Tensor، اختياري) — كائنات latents ضجيجية مُولّدة مسبقًا، مُستخرجة من توزيع غاوسي، تُستخدم كمدخلات لتوليد الصور. يمكن استخدامها لتعديل نفس التوليد باستخدام أوامر مختلفة. إذا لم تُقدَّم، سيتم توليد كائن latents عن طريق الاستخراج باستخدامgeneratorالعشوائي المُقدَّم. - prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية مُولَّدة مسبقًا. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن الموجه. إذا لم تُقدَّم، فسيتم توليد تضمينات النص من معامل الإدخالprompt. - prompt_embeds_mask (
torch.Tensor، اختياري) — قناع لتضمينات النص المُولَّدة مسبقًا. يمكن استخدامه لتعديل مدخلات النص بسهولة، مثلًا وزن الموجه. إذا لم يُقدَّم، سيتم توليد قناع تضمينات النص من معامل الإدخالprompt. - prompt_embeds_2 (
torch.Tensor، اختياري) — تضمينات نصية مُولّدة مسبقًا لـ ocr. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن المحفّز. إذا لم تُقدَّم، فسيتم توليد تضمينات النص لـ ocr من معامل الإدخالprompt. - prompt_embeds_mask_2 (
torch.Tensor، اختياري) — قناع التضمينات النصية المُولَّدة مسبقًا لـ ocr. يمكن استخدامه لتعديل مدخلات النص بسهولة، مثلًا وزن المحفّز. إذا لم يُقدَّم، سيتم توليد قناع التضمينات النصية لـ ocr من معامل الإدخالprompt. - negative_prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن الموجه. إذا لم تُقدَّم، فسيتم توليد negative_prompt_embeds من معامل الإدخالnegative_prompt. - negative_prompt_embeds_mask (
torch.Tensor، اختياري) — قناع لتضمينات النص السلبية المُولَّدة مسبقًا. يمكن استخدامه لتعديل مدخلات النص بسهولة، مثلًا وزن الموجه. إذا لم يُقدَّم، سيتم توليد قناع تضمينات النص السلبية من معامل الإدخالnegative_prompt. - negative_prompt_embeds_2 (
torch.Tensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا لـ ocr. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن المحفّز. إذا لم تُقدَّم، فسيتم توليد تضمينات النص السلبية لـ ocr من معامل الإدخالnegative_prompt. - negative_prompt_embeds_mask_2 (
torch.Tensor، اختياري) — قناع مُولّد مسبقًا لتضمينات النص السلبية الخاصة بـ ocr. يمكن استخدامه لتعديل مدخلات النص بسهولة، مثلًا وزن الموجه. إذا لم يُقدَّم، فسيتم توليد قناع تضمينات النص السلبية الخاصة بـ ocr من معامل الإدخالnegative_prompt. - output_type (
str، اختياري، القيمة الافتراضية"pil") — صيغة مخرجات توليد الصورة. اختر بين PIL:PIL.Image.Imageأوnp.array. - return_dict (
bool، اختياري، القيمة الافتراضيةTrue) — ما إذا كان يجب إرجاع~pipelines.qwenimage.QwenImagePipelineOutputبدلاً من tuple عادي. - attention_kwargs (
dict، اختياري) — قاموس kwargs يُمرَّر إلىAttentionProcessorإذا تم تحديده، كما هو معرَّف تحتself.processorفي diffusers.models.attention_processor. - callback_on_step_end (
Callable، اختياري) — دالة تُستدعى في نهاية كل خطوة إزالة ضوضاء أثناء الاستدلال. تُستدعى الدالة بالحجج التالية:callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict). ستتضمنcallback_kwargsقائمة بجميع المصفوفات كما حددتهاcallback_on_step_end_tensor_inputs. - callback_on_step_end_tensor_inputs (
List, اختياري) — قائمة مدخلات المصفوفات (tensors) لدالةcallback_on_step_end. سيتم تمرير المصفوفات المحددة في القائمة كحجةcallback_kwargs. لن تتمكن من تضمين سوى المتغيرات المدرجة في خاصية._callback_tensor_inputsلفئة خط الأنابيب (pipeline) الخاص بك.
يعيد
~pipelines.hunyuan_image.HunyuanImagePipelineOutput أو tuple
~pipelines.hunyuan_image.HunyuanImagePipelineOutput إذا كان return_dict هو True، وإلا tuple. عند إرجاع tuple، يكون العنصر الأول قائمة تحتوي على الصور المولّدة.
الدالة التي تُستدعى عند استدعاء خط الأنابيب للتوليد.
أمثلة:
>>> import torch
>>> from diffusers import HunyuanImagePipeline
>>> pipe = HunyuanImagePipeline.from_pretrained(
... "hunyuanvideo-community/HunyuanImage-2.1-Diffusers", 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, negative_prompt="", num_inference_steps=50).images[0]
>>> image.save("hunyuanimage.png")encode_prompt
< source >( prompt: str | list[str]device: torch.device | None = Nonebatch_size: int = 1num_images_per_prompt: int = 1prompt_embeds: torch.Tensor | None = Noneprompt_embeds_mask: torch.Tensor | None = Noneprompt_embeds_2: torch.Tensor | None = Noneprompt_embeds_mask_2: torch.Tensor | None = None )
المعاملات
- prompt (
strأوlist[str]، اختياري) — الموجّه الذي سيتم ترميزه - device — (
torch.device): جهاز torch - batch_size (
int) — حجم الدفعة للموجّهات، القيمة الافتراضية هي 1 - num_images_per_prompt (
int) — عدد الصور التي يجب توليدها لكل موجه - prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية مُولَّدة مسبقًا. إذا لم تُقدَّم، فسيتم توليد تضمينات النص من معامل الإدخالprompt. - prompt_embeds_mask (
torch.Tensor، اختياري) — قناع نصي مُولّد مسبقًا. إذا لم يُقدَّم، فسيتم توليد قناع النص من معامل الإدخالprompt. - prompt_embeds_2 (
torch.Tensor، اختياري) — تضمينات نص رمزي مُولّدة مسبقًا من ByT5. إذا لم تُقدَّم، فستُولَّد من حجة الإدخالpromptباستخدام self.tokenizer_2 وself.text_encoder_2. - prompt_embeds_mask_2 (
torch.Tensor، اختياري) — قناع نص الرموز المُولَّد مسبقًا من ByT5. إذا لم يُقدَّم، فسيتم توليده من حجة الإدخالpromptباستخدام self.tokenizer_2 وself.text_encoder_2.
HunyuanImageRefinerPipeline
فئة diffusers.HunyuanImageRefinerPipeline
< source >( scheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLHunyuanImageRefinertext_encoder: Qwen2_5_VLForConditionalGenerationtokenizer: Qwen2Tokenizertransformer: HunyuanImageTransformer2DModelguider: AdaptiveProjectedMixGuidance | None = None )
المعاملات
- transformer (HunyuanImageTransformer2DModel) — بنية Transformer الشرطية (MMDiT) لإزالة الضوضاء من كامنات الصورة المُرمّزة.
- scheduler (FlowMatchEulerDiscreteScheduler) —
جدول زمني يُستخدم بالاقتران مع
transformerلإزالة الضوضاء من كائنات الصورة المُرمّزة. - vae (AutoencoderKLHunyuanImageRefiner) — نموذج الترميز التبايني التلقائي (VAE) لتشفير وفك تشفير الصور إلى تمثيلات كامنة ومنها.
- text_encoder (
Qwen2.5-VL-7B-Instruct) — Qwen2.5-VL-7B-Instruct، وتحديداً متغير Qwen2.5-VL-7B-Instruct. - tokenizer (
Qwen2Tokenizer) — مُجزِّئ من الفئة [Qwen2Tokenizer].
خط أنابيب HunyuanImage لتوليد الصور من النص.
__call__
< source >( prompt: str | list[str] = Nonenegative_prompt: str | list[str] = Nonedistilled_guidance_scale: float | None = 3.25image: PipelineImageInput | None = Noneheight: int | None = Nonewidth: int | None = Nonenum_inference_steps: int = 4sigmas: list[float] | None = Nonenum_images_per_prompt: int = 1generator: torch.Generator | list[torch.Generator] | None = Nonelatents: torch.Tensor | None = Noneprompt_embeds: torch.Tensor | None = Noneprompt_embeds_mask: torch.Tensor | None = Nonenegative_prompt_embeds: torch.Tensor | None = Nonenegative_prompt_embeds_mask: torch.Tensor | None = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, Any] | None = Nonecallback_on_step_end: Callable[[int, int], None] | None = Nonecallback_on_step_end_tensor_inputs: list[str] = ['latents'] ) → ~pipelines.hunyuan_image.HunyuanImagePipelineOutput or tuple
المعاملات
- prompt (
strأوlist[str]، اختياري) — الموجّه أو الموجّهات التي توجّه توليد الصورة. إذا لم يُعرَّف، يجب تمريرprompt_embedsبدلاً من ذلك. - negative_prompt (
strأوlist[str]، اختياري) — الموجّه أو الموجّهات التي لا ينبغي استخدامها لتوجيه توليد الصورة. إذا لم يُعرَّف، فسيتم استخدام موجّه سلبي فارغ. يتم تجاهله عند عدم استخدام التوجيه. - distilled_guidance_scale (
float, اختياري، القيمة الافتراضية None) — قيمة مقياس التوجيه (guidance scale) للنماذج المُقطَّرة للتوجيه. على عكس التوجيه الحر من التصنيف (classifier-free guidance) التقليدي حيث يُطبَّق مقياس التوجيه أثناء الاستدلال من خلال إعادة تحجيم تنبؤ الضوضاء، فإن النماذج المُقطَّرة للتوجيه تتخذ مقياس التوجيه مباشرةً كمدخل معياري أثناء المرور الأمامي. يتم تفعيل التوجيه عن طريق تعيينdistilled_guidance_scale > 1. يشجّع مقياس توجيه أعلى على توليد صور مرتبطة ارتباطًا وثيقًا بنصprompt، وعادةً على حساب انخفاض جودة الصورة. بالنسبة للنماذج المُقطَّرة للتوجيه، هذا المعامل مطلوب. أما بالنسبة للنماذج غير المُقطَّرة، فسيتم تجاهل هذا المعامل. - image (
PipelineImageInput، اختياري) — الصورة المدخلة التي سيتم تحسينها. - num_images_per_prompt (
int، اختياري، القيمة الافتراضية 1) — - height (
int، اختياري، القيمة الافتراضية هي self.unet.config.sample_size * self.vae_scale_factor) — ارتفاع الصورة المولّدة بالبكسلات. يتم ضبطه على 1024 افتراضيًا للحصول على أفضل النتائج. - width (
int، اختياري، القيمة الافتراضية هي self.unet.config.sample_size * self.vae_scale_factor) — عرض الصورة المولدة بالبكسلات. يتم ضبطه على 1024 افتراضيًا للحصول على أفضل النتائج. - num_inference_steps (
int، اختياري، القيمة الافتراضية 50) — عدد خطوات إزالة الضوضاء. تؤدي زيادة عدد خطوات إزالة الضوضاء عادةً إلى صورة بجودة أعلى على حساب بطء الاستدلال. - sigmas (
list[float]، اختياري) — قيم sigmas مخصصة لاستخدامها في عملية إزالة الضوضاء مع المجدولين الذين يدعمون معاملsigmasفي طريقةset_timestepsالخاصة بهم. إذا لم يُعرَّف، فسيتم استخدام السلوك الافتراضي عند تمريرnum_inference_steps. - num_images_per_prompt (
int، اختياري، القيمة الافتراضية 1) — عدد الصور التي سيتم توليدها لكل موجه. - generator (
torch.Generatorأوlist[torch.Generator]، اختياري) — مولّد واحد أو قائمة من مولّدات torch لجعل التوليد حتميًا. - latents (
torch.Tensor، اختياري) — كائنات latents ضجيجية مُولّدة مسبقًا، مُستخرجة من توزيع غاوسي، تُستخدم كمدخلات لتوليد الصور. يمكن استخدامها لتعديل نفس التوليد باستخدام أوامر مختلفة. إذا لم تُقدَّم، سيتم توليد كائن latents عن طريق الاستخراج باستخدامgeneratorالعشوائي المُقدَّم. - prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية مُولَّدة مسبقًا. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن الموجه. إذا لم تُقدَّم، فسيتم توليد تضمينات النص من معامل الإدخالprompt. - prompt_embeds_mask (
torch.Tensor، اختياري) — قناع الانتباه لـprompt_embeds. - negative_prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن الموجه. إذا لم تُقدَّم، فسيتم توليد negative_prompt_embeds من معامل الإدخالnegative_prompt. - negative_prompt_embeds_mask (
torch.Tensor، اختياري) — قناع الانتباه لـnegative_prompt_embeds. - output_type (
str، اختياري، القيمة الافتراضية"pil") — صيغة مخرجات توليد الصورة. اختر بين PIL:PIL.Image.Imageأوnp.array. - return_dict (
bool، اختياري، القيمة الافتراضيةTrue) — ما إذا كان يجب إرجاع~pipelines.qwenimage.QwenImagePipelineOutputبدلاً من tuple عادي. - attention_kwargs (
dict، اختياري) — قاموس kwargs يُمرَّر إلىAttentionProcessorإذا تم تحديده، كما هو معرَّف تحتself.processorفي diffusers.models.attention_processor. - callback_on_step_end (
Callable، اختياري) — دالة تُستدعى في نهاية كل خطوة إزالة ضوضاء أثناء الاستدلال. تُستدعى الدالة بالحجج التالية:callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict). ستتضمنcallback_kwargsقائمة بجميع المصفوفات كما حددتهاcallback_on_step_end_tensor_inputs. - callback_on_step_end_tensor_inputs (
List, اختياري) — قائمة مدخلات المصفوفات (tensors) لدالةcallback_on_step_end. سيتم تمرير المصفوفات المحددة في القائمة كحجةcallback_kwargs. لن تتمكن من تضمين سوى المتغيرات المدرجة في خاصية._callback_tensor_inputsلفئة خط الأنابيب (pipeline) الخاص بك.
يعيد
~pipelines.hunyuan_image.HunyuanImagePipelineOutput أو tuple
~pipelines.hunyuan_image.HunyuanImagePipelineOutput إذا كان return_dict هو True، وإلا tuple. عند إرجاع tuple، يكون العنصر الأول قائمة تحتوي على الصور المولّدة.
الدالة التي تُستدعى عند استدعاء خط الأنابيب للتوليد.
أمثلة:
>>> import torch
>>> from diffusers import HunyuanImageRefinerPipeline
>>> pipe = HunyuanImageRefinerPipeline.from_pretrained(
... "hunyuanvideo-community/HunyuanImage-2.1-Refiner-Diffusers", torch_dtype=torch.bfloat16
... )
>>> pipe.to("cuda")
>>> prompt = "A cat holding a sign that says hello world"
>>> image = load_image("path/to/image.png")
>>> # Depending on the variant being used, the pipeline call will slightly vary.
>>> # Refer to the pipeline documentation for more details.
>>> image = pipe(prompt, image=image, num_inference_steps=4).images[0]
>>> image.save("hunyuanimage.png")encode_prompt
< source >( prompt: str | list[str] | None = Nonedevice: torch.device | None = Nonebatch_size: int = 1num_images_per_prompt: int = 1prompt_embeds: torch.Tensor | None = Noneprompt_embeds_mask: torch.Tensor | None = None )
المعاملات
- prompt (
strأوlist[str]، اختياري) — الموجّه الذي سيتم ترميزه - device — (
torch.device): جهاز torch - batch_size (
int) — حجم الدفعة للموجّهات، القيمة الافتراضية هي 1 - num_images_per_prompt (
int) — عدد الصور التي يجب توليدها لكل موجه - prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية مُولَّدة مسبقًا. إذا لم تُقدَّم، فسيتم توليد تضمينات النص من معامل الإدخالprompt. - prompt_embeds_mask (
torch.Tensor، اختياري) — قناع نصي مُولّد مسبقًا. إذا لم يُقدَّم، فسيتم توليد قناع النص من معامل الإدخالprompt. - prompt_embeds_2 (
torch.Tensor، اختياري) — تضمينات نص رمزي مُولّدة مسبقًا من ByT5. إذا لم تُقدَّم، فستُولَّد من حجة الإدخالpromptباستخدام self.tokenizer_2 وself.text_encoder_2. - prompt_embeds_mask_2 (
torch.Tensor، اختياري) — قناع نص الرموز المُولَّد مسبقًا من ByT5. إذا لم يُقدَّم، فسيتم توليده من حجة الإدخالpromptباستخدام self.tokenizer_2 وself.text_encoder_2.
HunyuanImagePipelineOutput
فئة diffusers.pipelines.hunyuan_image.pipeline_output.HunyuanImagePipelineOutput
< source >( images: list )
فئة الإخراج لخطوط أنابيب HunyuanImage.