Diffusers documentation

LoRA

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

LoRA

تُعد LoRA طريقة تدريب سريعة وخفيفة تُدخل وتدرّب عددًا أصغر بكثير من المعاملات بدلاً من جميع معاملات النموذج. ينتج عن ذلك ملف أصغر (حوالي 100 ميغابايت) ويجعل من السهل تدريب نموذج بسرعة ليتعلم مفهومًا جديدًا. عادةً ما تُحمَّل أوزان LoRA في مُزيل الضوضاء أو مُشفّر النص أو كليهما. يتوافق مُزيل الضوضاء عادةً مع UNet (مثل UNet2DConditionModel) أو Transformer (مثل SD3Transformer2DModel). توجد عدة فئات لتحميل أوزان LoRA:

  • StableDiffusionLoraLoaderMixin يوفر دوالًا لتحميل أوزان LoRA وإلغاء تحميلها، ودمجها وفك دمجها، وتمكينها وتعطيلها، بالإضافة إلى دوال أخرى لإدارة أوزان LoRA. يمكن استخدام هذه الفئة مع أي نموذج.
  • StableDiffusionXLLoraLoaderMixin هي نسخة Stable Diffusion (SDXL) من فئة StableDiffusionLoraLoaderMixin لتحميل وحفظ أوزان LoRA. لا يمكن استخدامها إلا مع نموذج SDXL.
  • SD3LoraLoaderMixin يوفر وظائف مشابهة لـ Stable Diffusion 3.
  • FluxLoraLoaderMixin يوفر وظائف مشابهة لـ Flux.
  • CogVideoXLoraLoaderMixin يوفر وظائف مشابهة لـ CogVideoX.
  • Mochi1LoraLoaderMixin يوفر وظائف مشابهة لـ Mochi.
  • AuraFlowLoraLoaderMixin يوفر وظائف مشابهة لـ AuraFlow.
  • LTXVideoLoraLoaderMixin يوفر وظائف مشابهة لـ LTX-Video.
  • SanaLoraLoaderMixin يوفر وظائف مشابهة لـ Sana.
  • HeliosLoraLoaderMixin يوفر وظائف مشابهة لـ HunyuanVideo.
  • HunyuanVideoLoraLoaderMixin يوفر وظائف مشابهة لـ HunyuanVideo.
  • Lumina2LoraLoaderMixin يوفر وظائف مشابهة لـ Lumina2.
  • WanLoraLoaderMixin يوفر وظائف مشابهة لـ Wan.
  • SkyReelsV2LoraLoaderMixin يوفر وظائف مشابهة لـ SkyReels-V2.
  • CogView4LoraLoaderMixin يوفر وظائف مشابهة لـ CogView4.
  • AmusedLoraLoaderMixin مخصص لـ AmusedPipeline.
  • AnimaLoraLoaderMixin يوفر وظائف مشابهة لـ Anima.
  • AceStepLoraLoaderMixin يوفر وظائف مشابهة لـ ACE-Step.
  • HiDreamImageLoraLoaderMixin يوفر وظائف مشابهة لـ HiDream Image
  • QwenImageLoraLoaderMixin يوفر وظائف مشابهة لـ Qwen Image.
  • ZImageLoraLoaderMixin يوفر وظائف مشابهة لـ Z-Image.
  • Flux2LoraLoaderMixin يوفر وظائف مشابهة لـ Flux2.
  • ErnieImageLoraLoaderMixin يوفر وظائف مشابهة لـ Ernie-Image.
  • LTX2LoraLoaderMixin يوفر وظائف مشابهة لـ Flux2.
  • MiniMaxH3LoraLoaderMixin يوفر وظائف مشابهة لـ MiniMax-H3.
  • PikaH3FlexLoraLoaderMixin يوفر وظائف مشابهة لـ Pika H3 Flex.
  • RFD4ProteinaLoraLoaderMixin يوفر وظائف مشابهة لـ RFD4-Proteína.
  • BriaFibo2LoraLoaderMixin يوفر وظائف مشابهة لـ fibo-2.
  • LoraBaseMixin يوفر فئة أساسية تتضمن عدة طرق مساعدة لدمج LoRAs وإلغاء الدمج والتفريغ وغيرها.

للتعرف على المزيد حول كيفية تحميل أوزان LoRA، راجد دليل تحميل LoRA.

RFD4ProteinaLoraLoaderMixin

فئة diffusers.loaders.RFD4ProteinaLoraLoaderMixin

< >

( )

حمّل طبقات LoRA في RFD4ProteinaTransformer.

يُقرَن مُشفِّر-المُفكِّك (autoencoder) مع نقطة الفحص (checkpoint) الخاصة بإزالة الضوضاء، ولا يخضع للتكيّف، لذا فإن المحوّل (transformer) هو الوحدة القابلة للتحميل الوحيدة.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

LoraBaseMixin

فئة diffusers.loaders.lora_base.LoraBaseMixin

< >

( )

فئة مساعدة للتعامل مع LoRAs.

delete_adapters

< >

( adapter_names: list[str] | str )

المعاملات

  • adapter_names (list[str, str]) — أسماء المُكيِّفات (adapters) المراد حذفها.

احذف طبقات LoRA الخاصة بالمُكيّف من خط المعالجة.

مثال:

from diffusers import AutoPipelineForText2Image
import torch

pipeline = AutoPipelineForText2Image.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16
).to("cuda")
pipeline.load_lora_weights(
    "jbilcke-hf/sdxl-cinematic-1", weight_name="pytorch_lora_weights.safetensors", adapter_names="cinematic"
)
pipeline.delete_adapters("cinematic")

disable_lora

< >

( )

يعطّل طبقات LoRA النشطة في خط المعالجة.

مثال:

from diffusers import AutoPipelineForText2Image
import torch

pipeline = AutoPipelineForText2Image.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16
).to("cuda")
pipeline.load_lora_weights(
    "jbilcke-hf/sdxl-cinematic-1", weight_name="pytorch_lora_weights.safetensors", adapter_name="cinematic"
)
pipeline.disable_lora()

enable_lora

< >

( )

يُفعّل طبقات LoRA النشطة في خط المعالجة.

مثال:

from diffusers import AutoPipelineForText2Image
import torch

pipeline = AutoPipelineForText2Image.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16
).to("cuda")
pipeline.load_lora_weights(
    "jbilcke-hf/sdxl-cinematic-1", weight_name="pytorch_lora_weights.safetensors", adapter_name="cinematic"
)
pipeline.enable_lora()

enable_lora_hotswap

< >

( **kwargs )

المعاملات

  • target_rank (int) — أعلى رتبة بين جميع المحوِّلات التي سيتم تحميلها.
  • check_compiled (str, اختياري, الافتراضي هو "error") — كيفية التعامل مع نموذج مُجمَّع مسبقًا. يمكن أن تُرجع الفحوصات الرسائل التالية:
    • “error” (الافتراضي): يرمي خطأ
    • “warn”: إصدار تحذير
    • “ignore”: لا تفعل شيئًا

استبدل المُكيِّفات (Adapters) دون الحاجة إلى إعادة تجميع النموذج أو في حال كانت رتب المُكيِّفات المُحمَّلة مختلفة.

fuse_lora

< >

( components: list[str] | None = Nonelora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

المعاملات

  • components — (list[str]): قائمة بالمكونات القابلة لحقن LoRA لدمج LoRAs فيها.
  • lora_scale (float، القيمة الافتراضية 1.0) — يتحكم في مقدار تأثير معاملات LoRA على المخرجات.
  • safe_fusing (bool، القيمة الافتراضية False) — ما إذا كان يجب التحقق من قيم NaN في الأوزان المدمجة قبل الدمج، وعدم دمجها إذا كانت القيم NaN.
  • adapter_names (list[str]، اختياري) — أسماء المُكيّفات (Adapters) التي سيتم استخدامها للدمج. إذا لم يتم تمرير أي شيء، فسيتم دمج جميع المُكيّفات النشطة.

يُدمج معاملات LoRA في المعاملات الأصلية للكتل المقابلة.

مثال:

from diffusers import DiffusionPipeline
import torch

pipeline = DiffusionPipeline.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16
).to("cuda")
pipeline.load_lora_weights("nerijs/pixel-art-xl", weight_name="pixel-art-xl.safetensors", adapter_name="pixel")
pipeline.fuse_lora(lora_scale=0.7)

get_active_adapters

< >

( )

يحصل على قائمة المُكيِّفات النشطة حاليًا.

مثال:

from diffusers import DiffusionPipeline

pipeline = DiffusionPipeline.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0",
).to("cuda")
pipeline.load_lora_weights("CiroN2022/toy-face", weight_name="toy_face_sdxl.safetensors", adapter_name="toy")
pipeline.get_active_adapters()

get_list_adapters

< >

( )

يحصل على القائمة الحالية لجميع المحوِّلات المتاحة في خط المعالجة.

set_adapters

< >

( adapter_names: list[str] | stradapter_weights: float | dict[str, float | dict | None] | list[float | dict[str, float | dict | None] | None] | None = None )

المعاملات

  • adapter_names (list[str] أو str) — أسماء المُكيِّفات (adapters) المراد استخدامها.
  • adapter_weights (float أو dict أو list، اختياري) — أوزان المُكيّفات. يُقيّم العدد القياسي جميع المكونات المتوافقة مع LoRA. تُربط القاموس أسماء المكونات (مثل "unet" أو "transformer" أو "text_encoder") بالأوزان؛ ويمكن أن يكون وزن مكوّن UNet قاموسًا متداخلًا لمقاييس الكتل. يُطبَّق العدد القياسي أو القاموس الواحد على كل مُكيّف. يجب أن تحتوي القائمة على عدد قياسي واحد أو قاموس أو None لكل مُكيّف، بترتيب adapter_names. تتخذ None القيمة الافتراضية 1.0، بما في ذلك إدخالات القائمة وأوزان المكونات. وتتخذ المكونات غير المحددة وكتل UNet أيضًا القيمة الافتراضية 1.0.

اضبط المُكيِّفات النشطة حاليًا للاستخدام في خط المعالجة.

مثال:

from diffusers import AutoPipelineForText2Image
import torch

pipeline = AutoPipelineForText2Image.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16
).to("cuda")
pipeline.load_lora_weights(
    "jbilcke-hf/sdxl-cinematic-1", weight_name="pytorch_lora_weights.safetensors", adapter_name="cinematic"
)
pipeline.load_lora_weights(
    "troveski/sdxl-lora", weight_name="pytorch_lora_weights.safetensors", adapter_name="illustration"
)
pipeline.set_adapters(["cinematic", "illustration"], adapter_weights=[0.5, 0.5])
pipeline.set_adapters(
    ["cinematic", "illustration"],
    adapter_weights=[{"unet": 0.5}, {"unet": 0.8, "text_encoder": 0.6}],
)

set_lora_device

< >

( adapter_names: list[str]device: torch.device | str | int )

المعاملات

  • adapter_names (list[str]) — قائمة بالمُكيِّفات المراد إرسال الجهاز إليها.
  • device (torch.device | str | int) — الجهاز المرسل إليه المُكيّفات. يمكن أن يكون جهاز torch أو نصًا أو عددًا صحيحًا.

ينقل وحدات LoRA المدرجة في adapter_names إلى جهاز الهدف. يُعدّ هذا مفيدًا لتحميل وحدة LoRA على المعالج المركزي (CPU) في حال كنت ترغب في تحميل عدة وحدات تكيفية وتحرير بعض ذاكرة وحدة معالجة الرسوميات (GPU).

بعد نقل محولات LoRA إلى وحدة المعالجة المركزية (CPU)، طالما أن بقية النموذج لا تزال على وحدة معالجة الرسوميات (GPU)، لم يعد من الممكن استخدام محولات LoRA للاستدلال، لأن ذلك سيؤدي إلى عدم تطابق الأجهزة. تذكّر بإعادة ضبط الجهاز إلى وحدة معالجة الرسوميات (GPU) قبل استخدام تلك محولات LoRA للاستدلال.

>>> pipe.load_lora_weights(path_1, adapter_name="adapter-1")
>>> pipe.load_lora_weights(path_2, adapter_name="adapter-2")
>>> pipe.set_adapters("adapter-1")
>>> image_1 = pipe(**kwargs)
>>> # switch to adapter-2, offload adapter-1
>>> pipeline.set_lora_device(adapter_names=["adapter-1"], device="cpu")
>>> pipeline.set_lora_device(adapter_names=["adapter-2"], device="cuda:0")
>>> pipe.set_adapters("adapter-2")
>>> image_2 = pipe(**kwargs)
>>> # switch back to adapter-1, offload adapter-2
>>> pipeline.set_lora_device(adapter_names=["adapter-2"], device="cpu")
>>> pipeline.set_lora_device(adapter_names=["adapter-1"], device="cuda:0")
>>> pipe.set_adapters("adapter-1")
>>> ...

unfuse_lora

< >

( components: list[str] | None = None**kwargs )

المعاملات

  • components (list[str]) — قائمة بالمكونات القابلة لحقن LoRA لإزالة LoRA منها.
  • unfuse_unet (bool، القيمة الافتراضية True) — ما إذا كان سيتم فك دمج معاملات LoRA الخاصة بـ UNet.
  • unfuse_text_encoder (bool، القيمة الافتراضية True) — ما إذا كان سيتم فك دمج معاملات LoRA الخاصة بمشفّر النص. إذا لم يكن مشفّر النص قد خضع لتعديل قرداني (monkey-patch) بمعاملات LoRA، فلن يكون لهذا الإجراء أي تأثير.

يعكس تأثير pipe.fuse_lora().

unload_lora_weights

< >

( )

يفكك معاملات LoRA.

أمثلة:

>>> # Assuming `pipeline` is already loaded with the LoRA parameters.
>>> pipeline.unload_lora_weights()
>>> ...

write_lora_layers

< >

( state_dict: dict[str, torch.Tensor]save_directory: stris_main_process: boolweight_name: strsave_function: Callablesafe_serialization: boollora_adapter_metadata: dict | None = None )

يكتب حالة طبقات LoRA (مع البيانات الوصفية اختيارياً) على القرص.

StableDiffusionLoraLoaderMixin

فئة diffusers.loaders.StableDiffusionLoraLoaderMixin

< >

( )

حمّل طبقات LoRA إلى نموذج Stable Diffusion UNet2DConditionModel وCLIPTextModel.

load_lora_into_text_encoder

< >

( state_dictnetwork_alphastext_encoderprefix = Nonelora_scale = 1.0adapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

المعاملات

  • state_dict (dict) — قائمة حالة قياسية تحتوي على معاملات طبقات lora. يجب أن يبدأ المفتاح ببادئة إضافية text_encoder للتمييز بين طبقات lora الخاصة بـ unet.
  • network_alphas (dict[str, float]) — قيمة ألفا للشبكة المستخدمة للتعلم المستقر ومنع النقص. تحمل هذه القيمة نفس معنى الخيار --network_alpha في سكربت المدرب kohya-ss. راجع هذا الرابط.
  • text_encoder (CLIPTextModel) — نموذج ترميز النص الذي سيتم تحميل طبقات LoRA فيه.
  • prefix (str) — البادئة المتوقعة لـ text_encoder في state_dict.
  • lora_scale (float) — مقدار تحجيم مخرج طبقة lora الخطية قبل إضافته إلى مخرج طبقة lora العادية.
  • adapter_name (str، اختياري) — اسم المُكيّف الذي سيُستخدم للإشارة إلى نموذج المُكيّف المُحمّل. إذا لم يُحدَّد، فسيُستخدم default_{i} حيث i هو العدد الإجمالي للمُكيّفات التي يتم تحميلها.
  • low_cpu_mem_usage (bool، اختياري) — تسريع تحميل النموذج من خلال تحميل أوزان LoRA المُدرَّبة مسبقًا فقط دون تهيئة الأوزان العشوائية.
  • hotswap (bool، اختياري) — انظر إلى load_lora_weights().
  • metadata (dict) — بيانات وصفية اختيارية لمُكيّف LoRA. عند تقديمها، لن تُشتقّ حُجج LoraConfig الخاصة بـpeft من قاموس الحالة.

سيؤدي هذا إلى تحميل طبقات LoRA المحددة في state_dict إلى text_encoder

load_lora_into_unet

< >

( state_dictnetwork_alphasunetadapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

المعاملات

  • state_dict (dict) — قائمة حالة قياسية تحتوي على معاملات طبقات lora. يمكن أن تكون المفاتيح إما مفهرسة مباشرةً في unet أو مُسبوقة ببادئة إضافية unet يمكن استخدامها للتمييز بين طبقات lora في مُشفّر النص.
  • network_alphas (dict[str, float]) — قيمة ألفا للشبكة المستخدمة للتعلم المستقر ومنع النقص. تحمل هذه القيمة نفس معنى الخيار --network_alpha في سكربت المدرب kohya-ss. راجع هذا الرابط.
  • unet (UNet2DConditionModel) — نموذج UNet الذي سيتم تحميل طبقات LoRA فيه.
  • adapter_name (str، اختياري) — اسم المُكيّف الذي سيُستخدم للإشارة إلى نموذج المُكيّف المُحمّل. إذا لم يُحدَّد، فسيُستخدم default_{i} حيث i هو العدد الإجمالي للمُكيّفات التي يتم تحميلها.
  • low_cpu_mem_usage (bool، اختياري) — تسريع تحميل النموذج من خلال تحميل أوزان LoRA المُدرَّبة مسبقًا فقط دون تهيئة الأوزان العشوائية.
  • hotswap (bool، اختياري) — انظر إلى load_lora_weights().
  • metadata (dict) — بيانات وصفية اختيارية لمُكيّف LoRA. عند تقديمها، لن تُشتقّ حُجج LoraConfig الخاصة بـpeft من قاموس الحالة.

سيؤدي هذا إلى تحميل طبقات LoRA المحددة في state_dict داخل unet.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

المعاملات

  • pretrained_model_name_or_path_or_dict (str أو os.PathLike أو dict) — انظر إلى lora_state_dict().
  • adapter_name (str، اختياري) — اسم المُكيّف الذي سيُستخدم للإشارة إلى نموذج المُكيّف المُحمّل. إذا لم يُحدَّد، فسيُستخدم default_{i} حيث i هو العدد الإجمالي للمُكيّفات التي يتم تحميلها.
  • low_cpu_mem_usage (bool، اختياري) — تسريع تحميل النموذج من خلال تحميل أوزان LoRA المُدرَّبة مسبقًا فقط دون تهيئة الأوزان العشوائية.
  • hotswap (bool, اختياري) — القيمة الافتراضية هي False. ما إذا كان يجب استبدال مُكيّف (LoRA) موجود بمُكيّف جديد تم تحميله في مكانه. وهذا يعني أنه، بدلاً من تحميل مُكيّف إضافي، سيتم أخذ أوزان المُكيّف الحالي واستبدالها بأوزان المُكيّف الجديد. يمكن أن يكون هذا أسرع وأكثر كفاءة في استخدام الذاكرة. ومع ذلك، فإن الميزة الرئيسية للاستبدال السريع هي أنه عند تجميع النموذج باستخدام torch.compile، لا يتطلب تحميل المُكيّف الجديد إعادة تجميع النموذج. عند استخدام الاستبدال السريع، يجب أن يكون adapter_name اسم مُكيّف تم تحميله بالفعل.

    إذا كان للمُكيّف الجديد والمُكيّف القديم رتب مختلفة و/أو قيم LoRA alphas مختلفة (أي معاملات التوسيع)، فستحتاج إلى استدعاء طريقة إضافية قبل تحميل المُكيّف:

حمّل أوزان LoRA المحددة في pretrained_model_name_or_path_or_dict إلى self.unet وself.text_encoder.

تُمرَّر جميع معاملات kwargs إلى self.lora_state_dict.

راجع lora_state_dict() لمزيد من التفاصيل حول كيفية تحميل حالة القاموس.

راجع load_lora_into_unet() لمزيد من التفاصيل حول كيفية تحميل قاموس الحالة في self.unet.

راجع load_lora_into_text_encoder() لمزيد من التفاصيل حول كيفية تحميل حالة القاموس في self.text_encoder.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

المعاملات

  • pretrained_model_name_or_path_or_dict (str أو os.PathLike أو dict) — يمكن أن يكون أحد ما يلي:
    • سلسلة نصية، وهي معرف النموذج (على سبيل المثال google/ddpm-celebahq-256) لنموذج مُدرَّب مسبقًا مستضاف على الـ Hub.
    • مسار إلى مجلد (على سبيل المثال ./my_model_directory) يحتوي على أوزان النموذج المحفوظة باستخدام ModelMixin.save_pretrained().
    • A torch state dict.
  • cache_dir (str | os.PathLike، اختياري) — المسار إلى مجلد حيث يتم تخزين إعدادات النموذج المُدرَّب مسبقًا المُحمَّل مؤقتًا إذا لم يُستخدم المجلد المؤقت القياسي.
  • force_download (bool، اختياري، القيمة الافتراضية False) — ما إذا كان يجب إجبار إعادة تنزيل أوزان النموذج وملفات الإعداد، مع تجاوز النسخ المخزنة مؤقتًا إذا كانت موجودة.
  • proxies (dict[str, str]، اختياري) — قاموس لخوادم الوكيل (proxy) للاستخدام حسب البروتوكول أو نقطة النهاية، على سبيل المثال {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. تُستخدم هذه الوكلاء في كل طلب.
  • local_files_only (bool، اختياري، القيمة الافتراضية False) — ما إذا كان سيتم تحميل أوزان النموذج وملفات الإعداد المحلية فقط أم لا. إذا تم ضبطه على True، فلن يتم تنزيل النموذج من Hub.
  • token (str أو bool، اختياري) — الرمز الذي يُستخدم كتفويض حامل HTTP للملفات البعيدة. إذا كان True، يُستخدم الرمز المولّد من diffusers-cli login (المخزّن في ~/.huggingface).
  • revision (str، اختياري، القيمة الافتراضية "main") — الإصدار المحدد من النموذج الذي سيتم استخدامه. يمكن أن يكون اسم فرع، أو اسم وسم، أو معرف commit، أو أي معرّف مسموح به بواسطة Git.
  • subfolder (str، اختياري، الافتراضي "") — موقع المجلد الفرعي لملف النموذج داخل مستودع نموذج أكبر على Hub أو محليًا.
  • weight_name (str، اختياري، القيمة الافتراضية هي None) — اسم ملف state dict المُسلسَل.
  • return_lora_metadata (bool، اختياري، القيمة الافتراضية False) — عند التفعيل، يُعاد أيضًا بيانات الوصف الخاصة بمحوّل LoRA، والتي تُوجد عادةً في state dict.

إرجاع حالة القاموس (state dict) لأوزان lora وقيم الشبكة ألفا (network alphas).

> ندعم تحميل نقاط التفتيش LoRA بتنسيق A1111 بسعة محدودة. > > هذه الوظيفة تجريبية وقد تتغير في المستقبل.

save_lora_weights

< >

( save_directory: str | os.PathLikeunet_lora_layers: dict = Nonetext_encoder_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Trueunet_lora_adapter_metadata = Nonetext_encoder_lora_adapter_metadata = None )

المعاملات

  • save_directory (str أو os.PathLike) — المجلد الذي سيتم حفظ معاملات LoRA فيه. سيتم إنشاؤه إذا لم يكن موجودًا.
  • unet_lora_layers (dict[str, torch.nn.Module] أو dict[str, torch.Tensor]) — قاموس الحالة (State dict) لطبقات LoRA المقابلة لـ unet.
  • text_encoder_lora_layers (dict[str, torch.nn.Module] أو dict[str, torch.Tensor]) — قاموس الحالة (State dict) لطبقات LoRA المقابلة لـ text_encoder. يجب تمرير قاموس حالة LoRA الخاص بمشفر النص بشكل صريح لأنه يأتي من 🤗 Transformers.
  • is_main_process (bool، اختياري، القيمة الافتراضية True) — ما إذا كانت العملية التي تستدعي هذا هي العملية الرئيسية أم لا. مفيد أثناء التدريب الموزع عندما تحتاج إلى استدعاء هذه الدالة على جميع العمليات. في هذه الحالة، اضبط is_main_process=True على العملية الرئيسية فقط لتجنب حالات السباق.
  • save_function (Callable) — الدالة المستخدمة لحفظ قاموس الحالة. مفيدة أثناء التدريب الموزع عندما تحتاج إلى استبدال torch.save بطريقة أخرى. يمكن ضبطها باستخدام متغير البيئة DIFFUSERS_SAVE_MODE.
  • safe_serialization (bool، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم حفظ النموذج باستخدام safetensors أو بالطريقة التقليدية الخاصة بـ PyTorch باستخدام pickle.
  • unet_lora_adapter_metadata — بيانات الوصف (Metadata) الخاصة بمحوّل LoRA المرتبط بـ unet، والتي سيتم تسلسلها مع state dict.
  • text_encoder_lora_adapter_metadata — بيانات الوصف (Metadata) الخاصة بمحوّل LoRA المرتبط بترميز النص، والتي سيتم تسلسلها مع قاموس الحالة (state dict).

احفظ معاملات LoRA المقابلة لـ UNet ومشفّر النص.

StableDiffusionXLLoraLoaderMixin

فئة diffusers.loaders.StableDiffusionXLLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى Stable Diffusion XL UNet2DConditionModel وCLIPTextModel وCLIPTextModelWithProjection.

fuse_lora

< >

( components: list = ['unet', 'text_encoder', 'text_encoder_2']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_text_encoder

< >

( state_dictnetwork_alphastext_encoderprefix = Nonelora_scale = 1.0adapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

المعاملات

  • state_dict (dict) — قائمة حالة قياسية تحتوي على معاملات طبقات lora. يجب أن يبدأ المفتاح ببادئة إضافية text_encoder للتمييز بين طبقات lora الخاصة بـ unet.
  • network_alphas (dict[str, float]) — قيمة ألفا للشبكة المستخدمة للتعلم المستقر ومنع النقص. تحمل هذه القيمة نفس معنى الخيار --network_alpha في سكربت المدرب kohya-ss. راجع هذا الرابط.
  • text_encoder (CLIPTextModel) — نموذج ترميز النص الذي سيتم تحميل طبقات LoRA فيه.
  • prefix (str) — البادئة المتوقعة لـ text_encoder في state_dict.
  • lora_scale (float) — مقدار تحجيم مخرج طبقة lora الخطية قبل إضافته إلى مخرج طبقة lora العادية.
  • adapter_name (str، اختياري) — اسم المُكيّف الذي سيُستخدم للإشارة إلى نموذج المُكيّف المُحمّل. إذا لم يُحدَّد، فسيُستخدم default_{i} حيث i هو العدد الإجمالي للمُكيّفات التي يتم تحميلها.
  • low_cpu_mem_usage (bool، اختياري) — تسريع تحميل النموذج من خلال تحميل أوزان LoRA المُدرَّبة مسبقًا فقط دون تهيئة الأوزان العشوائية.
  • hotswap (bool، اختياري) — انظر إلى load_lora_weights().
  • metadata (dict) — بيانات وصفية اختيارية لمُكيّف LoRA. عند تقديمها، لن تُشتقّ حُجج LoraConfig الخاصة بـpeft من قاموس الحالة.

سيؤدي هذا إلى تحميل طبقات LoRA المحددة في state_dict إلى text_encoder

load_lora_into_unet

< >

( state_dictnetwork_alphasunetadapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

المعاملات

  • state_dict (dict) — قائمة حالة قياسية تحتوي على معاملات طبقات lora. يمكن أن تكون المفاتيح إما مفهرسة مباشرةً في unet أو مُسبوقة ببادئة إضافية unet يمكن استخدامها للتمييز بين طبقات lora في مُشفّر النص.
  • network_alphas (dict[str, float]) — قيمة ألفا للشبكة المستخدمة للتعلم المستقر ومنع النقص. تحمل هذه القيمة نفس معنى الخيار --network_alpha في سكربت المدرب kohya-ss. راجع هذا الرابط.
  • unet (UNet2DConditionModel) — نموذج UNet الذي سيتم تحميل طبقات LoRA فيه.
  • adapter_name (str، اختياري) — اسم المُكيّف الذي سيُستخدم للإشارة إلى نموذج المُكيّف المُحمّل. إذا لم يُحدَّد، فسيُستخدم default_{i} حيث i هو العدد الإجمالي للمُكيّفات التي يتم تحميلها.
  • low_cpu_mem_usage (bool، اختياري) — تسريع تحميل النموذج من خلال تحميل أوزان LoRA المُدرَّبة مسبقًا فقط دون تهيئة الأوزان العشوائية.
  • hotswap (bool، اختياري) — انظر إلى load_lora_weights().
  • metadata (dict) — بيانات وصفية اختيارية لمُكيّف LoRA. عند تقديمها، لن تُشتقّ حُجج LoraConfig الخاصة بـpeft من قاموس الحالة.

سيؤدي هذا إلى تحميل طبقات LoRA المحددة في state_dict داخل unet.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

المعاملات

  • pretrained_model_name_or_path_or_dict (str أو os.PathLike أو dict) — يمكن أن يكون أحد ما يلي:
    • سلسلة نصية، وهي معرف النموذج (على سبيل المثال google/ddpm-celebahq-256) لنموذج مُدرَّب مسبقًا مستضاف على الـ Hub.
    • مسار إلى مجلد (على سبيل المثال ./my_model_directory) يحتوي على أوزان النموذج المحفوظة باستخدام ModelMixin.save_pretrained().
    • حالة torch.
  • cache_dir (str | os.PathLike، اختياري) — المسار إلى مجلد حيث يتم تخزين إعدادات النموذج المُدرَّب مسبقًا المُحمَّل مؤقتًا إذا لم يُستخدم المجلد المؤقت القياسي.
  • force_download (bool، اختياري، القيمة الافتراضية False) — ما إذا كان يجب إجبار إعادة تنزيل أوزان النموذج وملفات الإعداد، مع تجاوز النسخ المخزنة مؤقتًا إذا كانت موجودة.
  • proxies (dict[str, str]، اختياري) — قاموس لخوادم الوكيل (proxy) للاستخدام حسب البروتوكول أو نقطة النهاية، على سبيل المثال {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. تُستخدم هذه الوكلاء في كل طلب.
  • local_files_only (bool، اختياري، القيمة الافتراضية False) — ما إذا كان سيتم تحميل أوزان النموذج وملفات الإعداد المحلية فقط أم لا. إذا تم ضبطه على True، فلن يتم تنزيل النموذج من Hub.
  • token (str أو bool، اختياري) — الرمز الذي يُستخدم كتفويض حامل HTTP للملفات البعيدة. إذا كان True، يُستخدم الرمز المولّد من diffusers-cli login (المخزّن في ~/.huggingface).
  • revision (str، اختياري، القيمة الافتراضية "main") — الإصدار المحدد من النموذج الذي سيتم استخدامه. يمكن أن يكون اسم فرع، أو اسم وسم، أو معرف commit، أو أي معرّف مسموح به بواسطة Git.
  • subfolder (str، اختياري، الافتراضي "") — موقع المجلد الفرعي لملف النموذج داخل مستودع نموذج أكبر على Hub أو محليًا.
  • weight_name (str، اختياري، القيمة الافتراضية هي None) — اسم ملف state dict المُسلسَل.
  • return_lora_metadata (bool، اختياري، القيمة الافتراضية False) — عند التفعيل، يُعاد أيضًا بيانات الوصف الخاصة بمحوّل LoRA، والتي تُوجد عادةً في state dict.

إرجاع حالة القاموس (state dict) لأوزان lora وقيم الشبكة ألفا (network alphas).

> ندعم تحميل نقاط التفتيش LoRA بتنسيق A1111 بسعة محدودة. > > هذه الوظيفة تجريبية وقد تتغير في المستقبل.

save_lora_weights

< >

( save_directory: str | os.PathLikeunet_lora_layers: dict = Nonetext_encoder_lora_layers: dict = Nonetext_encoder_2_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Trueunet_lora_adapter_metadata = Nonetext_encoder_lora_adapter_metadata = Nonetext_encoder_2_lora_adapter_metadata = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['unet', 'text_encoder', 'text_encoder_2']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

SD3LoraLoaderMixin

فئة diffusers.loaders.SD3LoraLoaderMixin

< >

( )

حمّل طبقات LoRA إلى SD3Transformer2DModel وCLIPTextModel وCLIPTextModelWithProjection.

خاص بـ StableDiffusion3Pipeline.

fuse_lora

< >

( components: list = ['transformer', 'text_encoder', 'text_encoder_2']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_text_encoder

< >

( state_dictnetwork_alphastext_encoderprefix = Nonelora_scale = 1.0adapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

المعاملات

  • state_dict (dict) — قائمة حالة قياسية تحتوي على معاملات طبقات lora. يجب أن يبدأ المفتاح ببادئة إضافية text_encoder للتمييز بين طبقات lora الخاصة بـ unet.
  • network_alphas (dict[str, float]) — قيمة ألفا للشبكة المستخدمة للتعلم المستقر ومنع النقص. تحمل هذه القيمة نفس معنى الخيار --network_alpha في سكربت المدرب kohya-ss. راجع هذا الرابط.
  • text_encoder (CLIPTextModel) — نموذج ترميز النص الذي سيتم تحميل طبقات LoRA فيه.
  • prefix (str) — البادئة المتوقعة لـ text_encoder في state_dict.
  • lora_scale (float) — مقدار تحجيم مخرج طبقة lora الخطية قبل إضافته إلى مخرج طبقة lora العادية.
  • adapter_name (str، اختياري) — اسم المُكيّف الذي سيُستخدم للإشارة إلى نموذج المُكيّف المُحمّل. إذا لم يُحدَّد، فسيُستخدم default_{i} حيث i هو العدد الإجمالي للمُكيّفات التي يتم تحميلها.
  • low_cpu_mem_usage (bool، اختياري) — تسريع تحميل النموذج من خلال تحميل أوزان LoRA المُدرَّبة مسبقًا فقط دون تهيئة الأوزان العشوائية.
  • hotswap (bool، اختياري) — انظر إلى load_lora_weights().
  • metadata (dict) — بيانات وصفية اختيارية لمُكيّف LoRA. عند تقديمها، لن تُشتقّ حُجج LoraConfig الخاصة بـpeft من قاموس الحالة.

سيؤدي هذا إلى تحميل طبقات LoRA المحددة في state_dict إلى text_encoder

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Nonetext_encoder_lora_layers: dict = Nonetext_encoder_2_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata = Nonetext_encoder_lora_adapter_metadata = Nonetext_encoder_2_lora_adapter_metadata = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer', 'text_encoder', 'text_encoder_2']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

FluxLoraLoaderMixin

فئة diffusers.loaders.FluxLoraLoaderMixin

< >

( )

حمّل طبقات LoRA إلى FluxTransformer2DModel، CLIPTextModel.

خاص بـ FluxPipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

load_lora_into_text_encoder

< >

( state_dictnetwork_alphastext_encoderprefix = Nonelora_scale = 1.0adapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

المعاملات

  • state_dict (dict) — قائمة حالة قياسية تحتوي على معاملات طبقات lora. يجب أن يبدأ المفتاح ببادئة إضافية text_encoder للتمييز بين طبقات lora الخاصة بـ unet.
  • network_alphas (dict[str, float]) — قيمة ألفا للشبكة المستخدمة للتعلم المستقر ومنع النقص. تحمل هذه القيمة نفس معنى الخيار --network_alpha في سكربت المدرب kohya-ss. راجع هذا الرابط.
  • text_encoder (CLIPTextModel) — نموذج ترميز النص الذي سيتم تحميل طبقات LoRA فيه.
  • prefix (str) — البادئة المتوقعة لـ text_encoder في state_dict.
  • lora_scale (float) — مقدار تحجيم مخرج طبقة lora الخطية قبل إضافته إلى مخرج طبقة lora العادية.
  • adapter_name (str، اختياري) — اسم المُكيّف الذي سيُستخدم للإشارة إلى نموذج المُكيّف المُحمّل. إذا لم يُحدَّد، فسيُستخدم default_{i} حيث i هو العدد الإجمالي للمُكيّفات التي يتم تحميلها.
  • low_cpu_mem_usage (bool، اختياري) — تسريع تحميل النموذج من خلال تحميل أوزان LoRA المُدرَّبة مسبقًا فقط دون تهيئة الأوزان العشوائية.
  • hotswap (bool، اختياري) — انظر إلى load_lora_weights().
  • metadata (dict) — بيانات وصفية اختيارية لمُكيّف LoRA. عند تقديمها، لن تُشتقّ حُجج LoraConfig الخاصة بـpeft من قاموس الحالة.

سيؤدي هذا إلى تحميل طبقات LoRA المحددة في state_dict إلى text_encoder

load_lora_into_transformer

< >

( state_dictnetwork_alphastransformeradapter_name = Nonemetadata = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = False )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]return_alphas: bool = False**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Nonetext_encoder_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata = Nonetext_encoder_lora_adapter_metadata = None )

المعاملات

  • save_directory (str أو os.PathLike) — المجلد الذي سيتم حفظ معاملات LoRA فيه. سيتم إنشاؤه إذا لم يكن موجودًا.
  • transformer_lora_layers (dict[str, torch.nn.Module] أو dict[str, torch.Tensor]) — قاموس الحالة الخاص بطبقات LoRA المقابلة لـ transformer.
  • text_encoder_lora_layers (dict[str, torch.nn.Module] أو dict[str, torch.Tensor]) — قاموس الحالة (State dict) لطبقات LoRA المقابلة لـ text_encoder. يجب تمرير قاموس حالة LoRA الخاص بمشفر النص بشكل صريح لأنه يأتي من 🤗 Transformers.
  • is_main_process (bool، اختياري، القيمة الافتراضية True) — ما إذا كانت العملية التي تستدعي هذا هي العملية الرئيسية أم لا. مفيد أثناء التدريب الموزع عندما تحتاج إلى استدعاء هذه الدالة على جميع العمليات. في هذه الحالة، اضبط is_main_process=True على العملية الرئيسية فقط لتجنب حالات السباق.
  • save_function (Callable) — الدالة المستخدمة لحفظ قاموس الحالة. مفيدة أثناء التدريب الموزع عندما تحتاج إلى استبدال torch.save بطريقة أخرى. يمكن ضبطها باستخدام متغير البيئة DIFFUSERS_SAVE_MODE.
  • safe_serialization (bool، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم حفظ النموذج باستخدام safetensors أو بالطريقة التقليدية الخاصة بـ PyTorch باستخدام pickle.
  • transformer_lora_adapter_metadata — بيانات الوصف (Metadata) الخاصة بمحوّل LoRA المرتبط بالـ transformer، والتي سيتم تسلسلها مع state dict.
  • text_encoder_lora_adapter_metadata — بيانات الوصف (Metadata) الخاصة بمحوّل LoRA المرتبط بترميز النص، والتي سيتم تسلسلها مع قاموس الحالة (state dict).

احفظ معاملات LoRA المقابلة لـ UNet ومشفّر النص.

unfuse_lora

< >

( components: list = ['transformer', 'text_encoder']**kwargs )

المعاملات

  • components (list[str]) — قائمة بالمكونات القابلة لحقن LoRA لإزالة LoRA منها.

يعكس تأثير pipe.fuse_lora().

unload_lora_weights

< >

( reset_to_overwritten_params = False )

المعاملات

  • reset_to_overwritten_params (bool، القيمة الافتراضية False) — ما إذا كان يجب إعادة تعيين الوحدات المحمّلة بواسطة LoRA إلى معاملاتها الأصلية. راجع توثيق Flux لمعرفة المزيد.

يفكك معاملات LoRA.

أمثلة:

>>> # Assuming `pipeline` is already loaded with the LoRA parameters.
>>> pipeline.unload_lora_weights()
>>> ...

Flux2LoraLoaderMixin

فئة diffusers.loaders.Flux2LoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى Flux2Transformer2DModel. خاص بـ Flux2Pipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

Flux3LoraLoaderMixin

فئة diffusers.loaders.Flux3LoraLoaderMixin

< >

( )

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

BriaFibo2LoraLoaderMixin

فئة diffusers.loaders.BriaFibo2LoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى BriaFibo2Transformer2DModel. خاص بـ BriaFibo2Pipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

ErnieImageLoraLoaderMixin

فئة diffusers.loaders.ErnieImageLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى ErnieImageTransformer2DModel. خاص بـ ErnieImagePipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

LTX2LoraLoaderMixin

فئة diffusers.loaders.LTX2LoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى LTX2VideoTransformer3DModel. خاص بـ LTX2Pipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = Noneprefix: str = 'transformer' )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

CogVideoXLoraLoaderMixin

فئة diffusers.loaders.CogVideoXLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى CogVideoXTransformer3DModel. خاص بـ CogVideoXPipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

Mochi1LoraLoaderMixin

فئة diffusers.loaders.Mochi1LoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى MochiTransformer3DModel. خاص بـ MochiPipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

AuraFlowLoraLoaderMixin

فئة diffusers.loaders.AuraFlowLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى AuraFlowTransformer2DModel خاص بـ AuraFlowPipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer', 'text_encoder']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

LTXVideoLoraLoaderMixin

فئة diffusers.loaders.LTXVideoLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى LTXVideoTransformer3DModel. خاص بـ LTXPipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

SanaLoraLoaderMixin

فئة diffusers.loaders.SanaLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى SanaTransformer2DModel. خاص بـ SanaPipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

HeliosLoraLoaderMixin

فئة diffusers.loaders.HeliosLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى HeliosTransformer3DModel. خاص بـ HeliosPipeline و HeliosPyramidPipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

HunyuanVideoLoraLoaderMixin

فئة diffusers.loaders.HunyuanVideoLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى HunyuanVideoTransformer3DModel. خاص بـ HunyuanVideoPipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

Lumina2LoraLoaderMixin

فئة diffusers.loaders.Lumina2LoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى Lumina2Transformer2DModel. خاص بـ Lumina2Pipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

CogView4LoraLoaderMixin

فئة diffusers.loaders.CogView4LoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى WanTransformer3DModel. خاص بـ CogView4Pipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

WanLoraLoaderMixin

فئة diffusers.loaders.WanLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى WanTransformer3DModel. خاص بـ WanPipeline و [WanImageToVideoPipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

SkyReelsV2LoraLoaderMixin

فئة diffusers.loaders.SkyReelsV2LoraLoaderMixin

< >

( )

حمّل طبقات LoRA إلى SkyReelsV2Transformer3DModel.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

AmusedLoraLoaderMixin

فئة diffusers.loaders.AmusedLoraLoaderMixin

< >

( )

load_lora_into_transformer

< >

( state_dictnetwork_alphastransformeradapter_name = Nonemetadata = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = False )

راجع load_lora_into_unet() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketext_encoder_lora_layers: dict = Nonetransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = True )

المعاملات

  • save_directory (str أو os.PathLike) — المجلد الذي سيتم حفظ معاملات LoRA فيه. سيتم إنشاؤه إذا لم يكن موجودًا.
  • unet_lora_layers (dict[str, torch.nn.Module] أو dict[str, torch.Tensor]) — قاموس الحالة (State dict) لطبقات LoRA المقابلة لـ unet.
  • text_encoder_lora_layers (dict[str, torch.nn.Module] أو dict[str, torch.Tensor]) — قاموس الحالة (State dict) لطبقات LoRA المقابلة لـ text_encoder. يجب تمرير قاموس حالة LoRA الخاص بمشفر النص بشكل صريح لأنه يأتي من 🤗 Transformers.
  • is_main_process (bool، اختياري، القيمة الافتراضية True) — ما إذا كانت العملية التي تستدعي هذا هي العملية الرئيسية أم لا. مفيد أثناء التدريب الموزع عندما تحتاج إلى استدعاء هذه الدالة على جميع العمليات. في هذه الحالة، اضبط is_main_process=True على العملية الرئيسية فقط لتجنب حالات السباق.
  • save_function (Callable) — الدالة المستخدمة لحفظ قاموس الحالة. مفيدة أثناء التدريب الموزع عندما تحتاج إلى استبدال torch.save بطريقة أخرى. يمكن ضبطها باستخدام متغير البيئة DIFFUSERS_SAVE_MODE.
  • safe_serialization (bool، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم حفظ النموذج باستخدام safetensors أو بالطريقة التقليدية الخاصة بـ PyTorch باستخدام pickle.

احفظ معاملات LoRA المقابلة لـ UNet ومشفّر النص.

AnimaLoraLoaderMixin

فئة diffusers.loaders.AnimaLoraLoaderMixin

< >

( )

حمّل طبقات LoRA إلى CosmosTransformer3DModel وAnimaTextConditioner.

fuse_lora

< >

( components: list = ['transformer', 'text_conditioner']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

unfuse_lora

< >

( components: list = ['transformer', 'text_conditioner']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

AceStepLoraLoaderMixin

فئة diffusers.loaders.AceStepLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى AceStepTransformer1DModel. خاص بـ AceStepPipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

HiDreamImageLoraLoaderMixin

فئة diffusers.loaders.HiDreamImageLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى HiDreamImageTransformer2DModel. خاص بـ HiDreamImagePipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

QwenImageLoraLoaderMixin

فئة diffusers.loaders.QwenImageLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى QwenImageTransformer2DModel. خاص بـ QwenImagePipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

ZImageLoraLoaderMixin

فئة diffusers.loaders.ZImageLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى ZImageTransformer2DModel. خاص بـ ZImagePipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

CosmosLoraLoaderMixin

فئة diffusers.loaders.CosmosLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى CosmosTransformer3DModel، خاصة بـ Cosmos2_5_PredictBasePipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

KandinskyLoraLoaderMixin

فئة diffusers.loaders.KandinskyLoraLoaderMixin

< >

( )

حمّل طبقات LoRA إلى Kandinsky5Transformer3DModel،

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

Ideogram4LoraLoaderMixin

فئة diffusers.loaders.Ideogram4LoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى Ideogram4Transformer2DModel. خاص بـ Ideogram4Pipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

Krea2LoraLoaderMixin

فئة diffusers.loaders.Krea2LoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى Krea2Transformer2DModel. خاص بـ Krea2Pipeline.

fuse_lora

< >

( components: list = ['transformer']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = False**kwargs )

راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = None )

راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

MiniMaxH3LoraLoaderMixin

فئة diffusers.loaders.MiniMaxH3LoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى MiniMaxH3Transformer3DModel. خاص بـ MiniMaxH3ModularPipeline.

يأتي MiniMax-H3 مع قسمين مستقلين من DiT يحملان أسماء وحدات متطابقة (حيث يؤدي تحميل LoRA مخصص لأحدهما إلى القسم الآخر إلى تدهور المخرجات)، لذا يكون التوجيه صريحًا: تستهدف قواميس الحالة المحوّلة transformer.؛ للوصول إلى transformer_ref استخدم ملفًا يبدأ ببادئة transformer_ref. أو اضبط load_into_transformer_ref=True.

تُدرب نماذج LoRA الخاصة بـ DiffSynth-Studio (مثل DiffSynth-Studio/MiniMax-H3-LoRA-LineartAnime) مقابل مصفوفات QKV المدمجة والمترابطة لكل رأس في نقطة التفتيش الأصلية، وتُفكّ الترابط عند التحويل. تجعل معاملات fp32 مسار LoRA غير المدمج يُحسب في fp32؛ بينما يُعيد .to(torch.bfloat16) على النموذج بعد تحميله ميزانية الذاكرة الخاصة بـ bf16.

تفشل نماذج LoRA المدربة على نقطة فحص مُقصوصة (ملفات *_pruned_* في Comfy-Org/MiniMax-H3؛ joyfox/MiniMax-H3-Turbo هي واحدة منها) بسبب عدم تطابق الحجم. تُحمَّل الملفات التي لا تحتوي على معامل Alpha بقيمة alpha == rank (مقياس 1.0، وهو الاتفاق المذكور على سبيل المثال في larryvrh/MiniMax-H3-Turbo-Lora)؛ أما إدخال alpha ضمن __metadata__ (مثل ملف الخطوات الثماني في lightx2v/Minimax-h3-Turbo)، فحين يكون موجودًا، يُعتمد عليه بدلاً من ذلك.

fuse_lora

< >

( components: list = ['transformer', 'transformer_ref']lora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

راجع fuse_lora() لمزيد من التفاصيل.

load_lora_into_transformer

< >

( state_dicttransformeradapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_into_transformer_ref

< >

( state_dicttransformer_refprefixadapter_name = None_pipeline = Nonelow_cpu_mem_usage = Falsehotswap: bool = Falsemetadata = None )

حمّل طبقات LoRA إلى قسم transformer_ref. يُشير prefix إلى اسم المكوّن الذي تحمله المفاتيح، وهو transformer_ref للملف الذي يسمّي القسم وtransformer للملف المُوجَّه إلى هنا بواسطة load_into_transformer_ref=True. راجع load_lora_into_unet() لمزيد من التفاصيل.

load_lora_weights

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]adapter_name: str | None = Nonehotswap: bool = Falseload_into_transformer_ref: bool = False**kwargs )

المعاملات

  • load_into_transformer_ref (bool، القيمة الافتراضية False) — تحميل الطبقات التي تبدأ ببادئة transformer. إلى قسم transformer_ref — وهو القسم الذي يستخدمه سير عمل ref2va لإزالة الضوضاء — بدلاً من transformer. لا يُطلب هذا إلا عند تحميل كلا القسمين: فخط الأنابيب الذي يحتوي على transformer_ref وحده يوجّه الطلبات إليه تلقائياً.

حمّل طبقات LoRA إلى transformer أو، عند استخدام load_into_transformer_ref=True، إلى transformer_ref. راجع load_lora_weights() لمزيد من التفاصيل.

lora_state_dict

< >

( pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor]**kwargs )

راجع lora_state_dict() لمزيد من التفاصيل.

save_lora_weights

< >

( save_directory: str | os.PathLiketransformer_lora_layers: dict = Nonetransformer_ref_lora_layers: dict = Noneis_main_process: bool = Trueweight_name: str = Nonesave_function: typing.Callable = Nonesafe_serialization: bool = Truetransformer_lora_adapter_metadata: dict | None = Nonetransformer_ref_lora_adapter_metadata: dict | None = None )

احفظ طبقات LoRA لأحد تقسيمَي MiniMax-H3 أو لكليهما. لا يمكن استعادة التقسيم الذي تنتمي إليه طبقة LoRA من مفاتيحها، لذا فإن هذه هي الطريقة الوحيدة لنشر LoRA خاص بـ H3 يسجّل ذلك. راجع save_lora_weights() لمزيد من المعلومات.

unfuse_lora

< >

( components: list = ['transformer', 'transformer_ref']**kwargs )

راجع unfuse_lora() لمزيد من التفاصيل.

PikaH3FlexLoraLoaderMixin

فئة diffusers.loaders.PikaH3FlexLoraLoaderMixin

< >

( )

تحميل طبقات LoRA إلى MiniMaxH3Transformer3DModel. خاص بـ PikaH3FlexModularPipeline.

إصدار Pika H3 Flex هو زوج من محوِّلات rank-128 فوق قسمي MiniMax-H3 transformer، وقد نُشر كملفات PEFT عادية بأسماء وحدات diffusers (fl2va/adapter.safetensors لـ transformer، وref2va/adapter.safetensors لـ transformer_ref). تُحمَّل الملفات التي لا تحتوي على alpha عند alpha == rank (مقياس 1.0)، وهو العقد الخاص بالمحوِّلات نفسها، وتكون عمليات التحميل والتوجيه والحفظ هي تلك الخاصة بـ MiniMaxH3LoraLoaderMixin: حيث يذهب محوِّل fl2va إلى transformer، ومحوِّل ref2va إلى transformer_ref — بشكل مستقل عندما يحتفظ خط العمل بذلك القسم وحده (workflow="ref2va")، ومع load_into_transformer_ref=True عندما يحتفظ بكلا القسمين.

pipe.load_lora_weights("Pika-Labs/Pika-H3-Flex", weight_name="fl2va/adapter.safetensors")

LoraBaseMixin

فئة diffusers.loaders.lora_base.LoraBaseMixin

< >

( )

فئة مساعدة للتعامل مع LoRAs.

delete_adapters

< >

( adapter_names: list[str] | str )

المعاملات

  • adapter_names (list[str, str]) — أسماء المُكيِّفات (adapters) المراد حذفها.

احذف طبقات LoRA الخاصة بالمُكيّف من خط المعالجة.

مثال:

from diffusers import AutoPipelineForText2Image
import torch

pipeline = AutoPipelineForText2Image.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16
).to("cuda")
pipeline.load_lora_weights(
    "jbilcke-hf/sdxl-cinematic-1", weight_name="pytorch_lora_weights.safetensors", adapter_names="cinematic"
)
pipeline.delete_adapters("cinematic")

disable_lora

< >

( )

يعطّل طبقات LoRA النشطة في خط المعالجة.

مثال:

from diffusers import AutoPipelineForText2Image
import torch

pipeline = AutoPipelineForText2Image.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16
).to("cuda")
pipeline.load_lora_weights(
    "jbilcke-hf/sdxl-cinematic-1", weight_name="pytorch_lora_weights.safetensors", adapter_name="cinematic"
)
pipeline.disable_lora()

enable_lora

< >

( )

يُفعّل طبقات LoRA النشطة في خط المعالجة.

مثال:

from diffusers import AutoPipelineForText2Image
import torch

pipeline = AutoPipelineForText2Image.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16
).to("cuda")
pipeline.load_lora_weights(
    "jbilcke-hf/sdxl-cinematic-1", weight_name="pytorch_lora_weights.safetensors", adapter_name="cinematic"
)
pipeline.enable_lora()

enable_lora_hotswap

< >

( **kwargs )

المعاملات

  • target_rank (int) — أعلى رتبة بين جميع المحوِّلات التي سيتم تحميلها.
  • check_compiled (str, اختياري, الافتراضي هو "error") — كيفية التعامل مع نموذج مُجمَّع مسبقًا. يمكن أن تُرجع الفحوصات الرسائل التالية:
    • “error” (الافتراضي): يرمي خطأ
    • “warn”: إصدار تحذير
    • “ignore”: لا تفعل شيئًا

استبدل المُكيِّفات (Adapters) دون الحاجة إلى إعادة تجميع النموذج أو في حال كانت رتب المُكيِّفات المُحمَّلة مختلفة.

fuse_lora

< >

( components: list[str] | None = Nonelora_scale: float = 1.0safe_fusing: bool = Falseadapter_names: list[str] | None = None**kwargs )

المعاملات

  • components — (list[str]): قائمة بالمكونات القابلة لحقن LoRA لدمج LoRAs فيها.
  • lora_scale (float، القيمة الافتراضية 1.0) — يتحكم في مقدار تأثير معاملات LoRA على المخرجات.
  • safe_fusing (bool، القيمة الافتراضية False) — ما إذا كان يجب التحقق من قيم NaN في الأوزان المدمجة قبل الدمج، وعدم دمجها إذا كانت القيم NaN.
  • adapter_names (list[str]، اختياري) — أسماء المُكيّفات (Adapters) التي سيتم استخدامها للدمج. إذا لم يتم تمرير أي شيء، فسيتم دمج جميع المُكيّفات النشطة.

يُدمج معاملات LoRA في المعاملات الأصلية للكتل المقابلة.

مثال:

from diffusers import DiffusionPipeline
import torch

pipeline = DiffusionPipeline.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16
).to("cuda")
pipeline.load_lora_weights("nerijs/pixel-art-xl", weight_name="pixel-art-xl.safetensors", adapter_name="pixel")
pipeline.fuse_lora(lora_scale=0.7)

get_active_adapters

< >

( )

يحصل على قائمة المُكيِّفات النشطة حاليًا.

مثال:

from diffusers import DiffusionPipeline

pipeline = DiffusionPipeline.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0",
).to("cuda")
pipeline.load_lora_weights("CiroN2022/toy-face", weight_name="toy_face_sdxl.safetensors", adapter_name="toy")
pipeline.get_active_adapters()

get_list_adapters

< >

( )

يحصل على القائمة الحالية لجميع المحوِّلات المتاحة في خط المعالجة.

set_adapters

< >

( adapter_names: list[str] | stradapter_weights: float | dict[str, float | dict | None] | list[float | dict[str, float | dict | None] | None] | None = None )

المعاملات

  • adapter_names (list[str] أو str) — أسماء المُكيِّفات (adapters) المراد استخدامها.
  • adapter_weights (float أو dict أو list، اختياري) — أوزان المُكيّفات. يُقيّم العدد القياسي جميع المكونات المتوافقة مع LoRA. تُربط القاموس أسماء المكونات (مثل "unet" أو "transformer" أو "text_encoder") بالأوزان؛ ويمكن أن يكون وزن مكوّن UNet قاموسًا متداخلًا لمقاييس الكتل. يُطبَّق العدد القياسي أو القاموس الواحد على كل مُكيّف. يجب أن تحتوي القائمة على عدد قياسي واحد أو قاموس أو None لكل مُكيّف، بترتيب adapter_names. تتخذ None القيمة الافتراضية 1.0، بما في ذلك إدخالات القائمة وأوزان المكونات. وتتخذ المكونات غير المحددة وكتل UNet أيضًا القيمة الافتراضية 1.0.

اضبط المُكيِّفات النشطة حاليًا للاستخدام في خط المعالجة.

مثال:

from diffusers import AutoPipelineForText2Image
import torch

pipeline = AutoPipelineForText2Image.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16
).to("cuda")
pipeline.load_lora_weights(
    "jbilcke-hf/sdxl-cinematic-1", weight_name="pytorch_lora_weights.safetensors", adapter_name="cinematic"
)
pipeline.load_lora_weights(
    "troveski/sdxl-lora", weight_name="pytorch_lora_weights.safetensors", adapter_name="illustration"
)
pipeline.set_adapters(["cinematic", "illustration"], adapter_weights=[0.5, 0.5])
pipeline.set_adapters(
    ["cinematic", "illustration"],
    adapter_weights=[{"unet": 0.5}, {"unet": 0.8, "text_encoder": 0.6}],
)

set_lora_device

< >

( adapter_names: list[str]device: torch.device | str | int )

المعاملات

  • adapter_names (list[str]) — قائمة بالمُكيِّفات المراد إرسال الجهاز إليها.
  • device (torch.device | str | int) — الجهاز المرسل إليه المُكيّفات. يمكن أن يكون جهاز torch أو نصًا أو عددًا صحيحًا.

ينقل وحدات LoRA المدرجة في adapter_names إلى جهاز الهدف. يُعدّ هذا مفيدًا لتحميل وحدة LoRA على المعالج المركزي (CPU) في حال كنت ترغب في تحميل عدة وحدات تكيفية وتحرير بعض ذاكرة وحدة معالجة الرسوميات (GPU).

بعد نقل محولات LoRA إلى وحدة المعالجة المركزية (CPU)، طالما أن بقية النموذج لا تزال على وحدة معالجة الرسوميات (GPU)، لم يعد من الممكن استخدام محولات LoRA للاستدلال، لأن ذلك سيؤدي إلى عدم تطابق الأجهزة. تذكّر بإعادة ضبط الجهاز إلى وحدة معالجة الرسوميات (GPU) قبل استخدام تلك محولات LoRA للاستدلال.

>>> pipe.load_lora_weights(path_1, adapter_name="adapter-1")
>>> pipe.load_lora_weights(path_2, adapter_name="adapter-2")
>>> pipe.set_adapters("adapter-1")
>>> image_1 = pipe(**kwargs)
>>> # switch to adapter-2, offload adapter-1
>>> pipeline.set_lora_device(adapter_names=["adapter-1"], device="cpu")
>>> pipeline.set_lora_device(adapter_names=["adapter-2"], device="cuda:0")
>>> pipe.set_adapters("adapter-2")
>>> image_2 = pipe(**kwargs)
>>> # switch back to adapter-1, offload adapter-2
>>> pipeline.set_lora_device(adapter_names=["adapter-2"], device="cpu")
>>> pipeline.set_lora_device(adapter_names=["adapter-1"], device="cuda:0")
>>> pipe.set_adapters("adapter-1")
>>> ...

unfuse_lora

< >

( components: list[str] | None = None**kwargs )

المعاملات

  • components (list[str]) — قائمة بالمكونات القابلة لحقن LoRA لإزالة LoRA منها.
  • unfuse_unet (bool، القيمة الافتراضية True) — ما إذا كان سيتم فك دمج معاملات LoRA الخاصة بـ UNet.
  • unfuse_text_encoder (bool، القيمة الافتراضية True) — ما إذا كان سيتم فك دمج معاملات LoRA الخاصة بمشفّر النص. إذا لم يكن مشفّر النص قد خضع لتعديل قرداني (monkey-patch) بمعاملات LoRA، فلن يكون لهذا الإجراء أي تأثير.

يعكس تأثير pipe.fuse_lora().

unload_lora_weights

< >

( )

يفكك معاملات LoRA.

أمثلة:

>>> # Assuming `pipeline` is already loaded with the LoRA parameters.
>>> pipeline.unload_lora_weights()
>>> ...

write_lora_layers

< >

( state_dict: dict[str, torch.Tensor]save_directory: stris_main_process: boolweight_name: strsave_function: Callablesafe_serialization: boollora_adapter_metadata: dict | None = None )

يكتب حالة طبقات LoRA (مع البيانات الوصفية اختيارياً) على القرص.

Update on GitHub