Buckets:
مرخّص بموجب ترخيص Apache الإصدار 2.0 (المسمى "الترخيص")
لا يجوز لك استخدام هذا الملف إلا وفقاً لشروط الترخيص.
يمكنك الحصول على نسخة من الترخيص في
http://www.apache.org/licenses/LICENSE-2.0
ما لم يقتضِ ذلك القانون المعمول به أو ما اتُّفق عليه كتابياً، البرمجيات
تُوزَّع بموجب الرخصة على أساس "كما هي"،
بلا أي ضمانات أو شروط من أي نوع، سواء صريحة أو ضمنية.
راجع الترخيص لمعرفة اللغة المحددة التي تحكم الصلاحيات و
قيود بموجب الترخيص. -->
HiDreamImage
HiDream-I1 من HiDream.ai
يمكن أن يسرّع التخزين المؤقت الاستدلال أيضًا من خلال تخزين المخرجات الوسيطة وإعادة استخدامها.
النماذج المتاحة
النماذج التالية متاحة لخط أنابيب HiDreamImagePipeline:
| اسم النموذج | الوصف |
|---|---|
HiDream-ai/HiDream-I1-Full |
- |
HiDream-ai/HiDream-I1-Dev |
- |
HiDream-ai/HiDream-I1-Fast |
- |
HiDreamImagePipeline[[diffusers.HiDreamImagePipeline]]
diffusers.HiDreamImagePipeline[[diffusers.HiDreamImagePipeline]]
diffusers.HiDreamImagePipeline(scheduler: FlowMatchEulerDiscreteScheduler, vae: AutoencoderKL, text_encoder: CLIPTextModelWithProjection, tokenizer: CLIPTokenizer, text_encoder_2: CLIPTextModelWithProjection, tokenizer_2: CLIPTokenizer, text_encoder_3: T5EncoderModel, tokenizer_3: T5Tokenizer, text_encoder_4: LlamaForCausalLM, tokenizer_4: TokenizersBackend, transformer: HiDreamImageTransformer2DModel)
call[[diffusers.HiDreamImagePipeline.call]]
__call__(prompt: str | list[str] = None, prompt_2: str | list[str] | None = None, prompt_3: str | list[str] | None = None, prompt_4: str | list[str] | None = None, height: int | None = None, width: int | None = None, num_inference_steps: int = 50, sigmas: list[float] | None = None, guidance_scale: float = 5.0, negative_prompt: str | list[str] | None = None, negative_prompt_2: str | list[str] | None = None, negative_prompt_3: str | list[str] | None = None, negative_prompt_4: str | list[str] | None = None, num_images_per_prompt: int | None = 1, generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = None, latents: typing.Optional[torch.FloatTensor] = None, prompt_embeds_t5: typing.Optional[torch.FloatTensor] = None, prompt_embeds_llama3: typing.Optional[torch.FloatTensor] = None, negative_prompt_embeds_t5: typing.Optional[torch.FloatTensor] = None, negative_prompt_embeds_llama3: typing.Optional[torch.FloatTensor] = None, pooled_prompt_embeds: typing.Optional[torch.FloatTensor] = None, negative_pooled_prompt_embeds: typing.Optional[torch.FloatTensor] = None, output_type: str | None = 'pil', return_dict: bool = True, attention_kwargs: dict[str, typing.Any] | None = None, callback_on_step_end: typing.Optional[typing.Callable[[int, int], NoneType]] = None, callback_on_step_end_tensor_inputs: list[str] = ['latents'], max_sequence_length: int = 128, **kwargs)
المعاملات:
prompt (str أو list[str]، اختياري) : الأمر أو الأوامر التي تُوجّه توليد الصورة. إذا لم يُعرَّف، يجب تمرير prompt_embeds بدلاً من ذلك.
prompt_2 (str أو list[str]، اختياري) : الموجه أو الموجهات المرسل إلى tokenizer_2 وtext_encoder_2. إذا لم يُعرَّف، فسيتم استخدام prompt بدلاً منه.
prompt_3 (str أو list[str]، اختياري) : الأمر أو الأوامر المرسل إلى tokenizer_3 وtext_encoder_3. إذا لم يُعرَّف، فسيتم استخدام prompt بدلاً منه.
prompt_4 (str أو list[str]، اختياري) : الموجه أو الموجهات المرسل إلى tokenizer_4 وtext_encoder_4. إذا لم يُعرَّف، فسيتم استخدام prompt بدلاً منه.
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.
guidance_scale (float، اختياري، القيمة الافتراضية 3.5) : يتم تفعيل مقياس التوجيه المدمج عن طريق تعيين guidance_scale > 1. كلما ارتفع guidance_scale، شجّع النموذج على توليد صور أكثر توافقًا مع prompt على حساب انخفاض جودة الصورة. تقرب النماذج المُقطّرة بالتوجيه من التوجيه الحقيقي الحر من المصنّف لقيم guidance_scale > 1. راجع الورقة البحثية لمعرفة المزيد.
negative_prompt (str أو list[str]، اختياري) : الموجه أو الموجهات التي لا ينبغي توجيه توليد الصورة بها. إذا لم يُعرَّف، يجب تمرير negative_prompt_embeds بدلاً من ذلك. يتم تجاهله عند عدم استخدام التوجيه (أي يتم تجاهله إذا لم يكن true_cfg_scale أكبر من 1).
negative_prompt_2 (str أو list[str]، اختياري) : الموجه أو الموجهات التي لا ينبغي توجيه توليد الصورة إليها، والتي سيتم إرسالها إلى tokenizer_2 وtext_encoder_2. إذا لم يُعرَّف، يُستخدم negative_prompt في جميع مشفّرات النص.
negative_prompt_3 (str أو list[str]، اختياري) : الموجه أو الموجهات التي لا ينبغي توجيه توليد الصورة إليها، والتي سيتم إرسالها إلى tokenizer_3 وtext_encoder_3. إذا لم يُعرَّف، يُستخدم negative_prompt في جميع مُشفِّرات النص.
negative_prompt_4 (str أو list[str]، اختياري) : الموجه أو الموجهات التي لا ينبغي توجيه توليد الصورة إليها، والتي سيتم إرسالها إلى tokenizer_4 وtext_encoder_4. إذا لم يُعرَّف، يُستخدم negative_prompt في جميع مُشفِّرات النص.
num_images_per_prompt (int، اختياري، القيمة الافتراضية 1) : عدد الصور التي سيتم توليدها لكل موجه.
generator (torch.Generator أو list[torch.Generator]، اختياري) : مولّد واحد أو قائمة من مولّدات torch لجعل التوليد حتميًا.
latents (torch.FloatTensor، اختياري) : كامنات ضجيج مُولّدة مسبقًا، مُستخرجة من توزيع غاوسي، تُستخدم كمدخلات لتوليد الصور. يمكن استخدامها لتعديل نفس التوليد باستخدام أوامر مختلفة. إذا لم تُقدَّم، فسيتم إنشاء كامنات من خلال الاستخراج باستخدام generator العشوائي المُقدَّم.
prompt_embeds_t5 (torch.FloatTensor، اختياري) : تمثيلات نصية T5 مُولّدة مسبقًا. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن الأوامر. إذا لم تُقدَّم، فسيتم توليد تمثيلات النص من معامل الإدخال prompt.
prompt_embeds_llama3 (torch.FloatTensor، اختياري) : تمثيلات نصية LLaMA3 مُولّدة مسبقًا. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن الأوامر. إذا لم تُقدَّم، فسيتم توليد التمثيلات النصية من معامل الإدخال prompt.
negative_prompt_embeds_t5 (torch.FloatTensor، اختياري) : تمثيلات نصية سلبية مُولّدة مسبقًا لنموذج T5. يمكن استخدامها لضبط مدخلات النص بسهولة، مثلًا وزن الأوامر. إذا لم تُقدَّم، فسيتم توليد التمثيلات من معامل الإدخال negative_prompt.
negative_prompt_embeds_llama3 (torch.FloatTensor، اختياري) : تمثيلات نصية سلبية مُولّدة مسبقًا لنموذج LLaMA3. يمكن استخدامها لضبط مدخلات النص بسهولة، مثلًا وزن الأوامر. إذا لم تُقدَّم، فسيتم توليد التمثيلات من معامل الإدخال negative_prompt.
pooled_prompt_embeds (torch.FloatTensor، اختياري) : تمثيلات نصية مجمّعة مُولّدة مسبقًا. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن الأوامر. إذا لم تُقدَّم، فسيتم توليد التمثيلات النصية المجمّعة من معامل الإدخال prompt.
negative_pooled_prompt_embeds (torch.FloatTensor، اختياري) : تمثيلات نصية مجمعة سالبة مُولّدة مسبقًا. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن الأوامر. إذا لم تُقدَّم، فسيتم توليد pooled negative_prompt_embeds من معامل الإدخال negative_prompt.
output_type (str، اختياري، القيمة الافتراضية "pil") : صيغة الصورة الناتجة عن عملية التوليد. اختر بين PIL: PIL.Image.Image أو np.array.
return_dict (bool، اختياري، الافتراضي True) : ما إذا كان يجب إرجاع ~pipelines.flux.FluxPipelineOutput بدلاً من 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) الخاص بك.
max_sequence_length (int الافتراضي 128) : أقصى طول تسلسل يُستخدم مع prompt.
يعيد: ~pipelines.hidream_image.HiDreamImagePipelineOutput أو tuple
~pipelines.hidream_image.HiDreamImagePipelineOutput إذا كان return_dict هو True، وإلا فسيكون tuple. عند إرجاع tuple، يكون العنصر الأول قائمة تحتوي على الصور المولّدة.
الدالة التي تُستدعى عند استدعاء خط الأنابيب للتوليد.
أمثلة:
>>> import torch
>>> from transformers import AutoTokenizer, LlamaForCausalLM
>>> from diffusers import HiDreamImagePipeline
>>> tokenizer_4 = AutoTokenizer.from_pretrained("meta-llama/Meta-Llama-3.1-8B-Instruct")
>>> text_encoder_4 = LlamaForCausalLM.from_pretrained(
... "meta-llama/Meta-Llama-3.1-8B-Instruct",
... output_hidden_states=True,
... output_attentions=True,
... torch_dtype=torch.bfloat16,
... )
>>> pipe = HiDreamImagePipeline.from_pretrained(
... "HiDream-ai/HiDream-I1-Full",
... tokenizer_4=tokenizer_4,
... text_encoder_4=text_encoder_4,
... torch_dtype=torch.bfloat16,
... )
>>> pipe.enable_model_cpu_offload()
>>> image = pipe(
... 'A cat holding a sign that says "Hi-Dreams.ai".',
... height=1024,
... width=1024,
... guidance_scale=5.0,
... num_inference_steps=50,
... generator=torch.Generator("cuda").manual_seed(0),
... ).images[0]
>>> image.save("output.png")
HiDreamImagePipelineOutput[[diffusers.pipelines.hidream_image.pipeline_output.HiDreamImagePipelineOutput]]
diffusers.pipelines.hidream_image.pipeline_output.HiDreamImagePipelineOutput[[diffusers.pipelines.hidream_image.pipeline_output.HiDreamImagePipelineOutput]]
diffusers.pipelines.hidream_image.pipeline_output.HiDreamImagePipelineOutput(images: list[PIL.Image.Image] | numpy.ndarray)
المعاملات:
images (list[PIL.Image.Image] أو np.ndarray) : قائمة من صور PIL منزوعة الضوضاء بطول batch_size أو مصفوفة numpy بأبعاد (batch_size, height, width, num_channels). تمثل صور PIL أو مصفوفة numpy صورًا منزوعة الضوضاء من خط أنابيب الانتشار.
فئة الإخراج لخطوط أنابيب HiDreamImage.
Xet Storage Details
- Size:
- 15.4 kB
- Xet hash:
- 24d72711fb0c5de2cd23667c780810d224068ccd317cfecce6f0ee60bbebcd21
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.