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 adalah metode pelatihan yang cepat dan ringan, yang menyisipkan dan melatih jumlah parameter yang jauh lebih sedikit dibandingkan seluruh parameter model. Hal ini menghasilkan file yang lebih kecil (~100 MB) dan memudahkan pelatihan model dengan cepat untuk mempelajari konsep baru. Bobot LoRA biasanya dimuat ke dalam denoiser, text encoder, atau keduanya. Denoiser biasanya merujuk pada UNet (misalnya UNet2DConditionModel) atau Transformer (misalnya SD3Transformer2DModel). Terdapat beberapa kelas untuk memuat bobot LoRA:

  • StableDiffusionLoraLoaderMixin menyediakan fungsi untuk memuat dan melepas, menggabungkan dan memisahkan, mengaktifkan dan menonaktifkan, serta fungsi lain untuk mengelola bobot LoRA. Kelas ini dapat digunakan dengan model apa pun.
  • StableDiffusionXLLoraLoaderMixin adalah versi Stable Diffusion (SDXL) dari kelas StableDiffusionLoraLoaderMixin untuk memuat dan menyimpan bobot LoRA. Kelas ini hanya dapat digunakan dengan model SDXL.
  • SD3LoraLoaderMixin menyediakan fungsi serupa untuk Stable Diffusion 3.
  • FluxLoraLoaderMixin menyediakan fungsi serupa untuk Flux.
  • CogVideoXLoraLoaderMixin menyediakan fungsi serupa untuk CogVideoX.
  • Mochi1LoraLoaderMixin menyediakan fungsi serupa untuk Mochi.
  • AuraFlowLoraLoaderMixin menyediakan fungsi serupa untuk AuraFlow.
  • LTXVideoLoraLoaderMixin menyediakan fungsi serupa untuk LTX-Video.
  • SanaLoraLoaderMixin menyediakan fungsi serupa untuk Sana.
  • HeliosLoraLoaderMixin menyediakan fungsi serupa untuk HunyuanVideo.
  • HunyuanVideoLoraLoaderMixin menyediakan fungsi serupa untuk HunyuanVideo.
  • Lumina2LoraLoaderMixin menyediakan fungsi serupa untuk Lumina2.
  • WanLoraLoaderMixin menyediakan fungsi serupa untuk Wan.
  • SkyReelsV2LoraLoaderMixin menyediakan fungsi serupa untuk SkyReels-V2.
  • CogView4LoraLoaderMixin menyediakan fungsi serupa untuk CogView4.
  • AmusedLoraLoaderMixin adalah untuk AmusedPipeline.
  • AnimaLoraLoaderMixin menyediakan fungsi serupa untuk Anima.
  • AceStepLoraLoaderMixin menyediakan fungsi serupa untuk ACE-Step.
  • HiDreamImageLoraLoaderMixin menyediakan fungsi serupa untuk HiDream Image
  • QwenImageLoraLoaderMixin menyediakan fungsi serupa untuk Qwen Image.
  • ZImageLoraLoaderMixin menyediakan fungsi serupa untuk Z-Image.
  • Flux2LoraLoaderMixin menyediakan fungsi serupa untuk Flux2.
  • ErnieImageLoraLoaderMixin menyediakan fungsi serupa untuk Ernie-Image.
  • LTX2LoraLoaderMixin menyediakan fungsi serupa untuk Flux2.
  • MiniMaxH3LoraLoaderMixin menyediakan fungsi serupa untuk MiniMax-H3.
  • PikaH3FlexLoraLoaderMixin menyediakan fungsi serupa untuk Pika H3 Flex.
  • RFD4ProteinaLoraLoaderMixin menyediakan fungsi serupa untuk RFD4-Proteína.
  • BriaFibo2LoraLoaderMixin menyediakan fungsi serupa untuk fibo-2.
  • LoraBaseMixin menyediakan kelas dasar dengan beberapa metode utilitas untuk menggabungkan, memisahkan, memuat ulang, LoRA, dan lainnya.

Untuk mempelajari lebih lanjut tentang cara memuat bobot LoRA, lihat panduan pemuatan LoRA.

RFD4ProteinaLoraLoaderMixin

kelas diffusers.loaders.RFD4ProteinaLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam RFD4ProteinaTransformer.

Autoencoder dipasangkan dengan checkpoint denoiser dan tidak diadaptasi, sehingga transformer adalah satu-satunya modul yang dapat dimuat.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

LoraBaseMixin

kelas diffusers.loaders.lora_base.LoraBaseMixin

< >

( )

Kelas utilitas untuk menangani LoRA.

delete_adapters

< >

( adapter_names: list[str] | str )

Parameter

  • adapter_names (list[str, str]) — Nama-nama adapter yang akan dihapus.

Hapus lapisan LoRA dari adapter di pipeline.

Contoh:

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

< >

( )

Menonaktifkan lapisan LoRA aktif dari pipeline.

Contoh:

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

< >

( )

Mengaktifkan lapisan LoRA aktif dari pipeline.

Contoh:

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 )

Parameter

  • target_rank (int) — Rank tertinggi di antara semua adapter yang akan dimuat.
  • check_compiled (str, opsional, defaultnya "error") — Cara menangani model yang sudah dikompilasi. Pengecekan dapat mengembalikan pesan berikut:
    • “error” (default): lempar error
    • “warn”: mengeluarkan peringatan
    • “ignore”: tidak melakukan apa pun

Hotswap adapter tanpa memicu kompilasi ulang model atau jika rank dari adapter yang dimuat berbeda.

fuse_lora

< >

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

Parameter

  • components — (list[str]): daftar komponen yang dapat disuntikkan LoRA untuk memfusi LoRA ke dalamnya.
  • lora_scale (float, default 1.0) — Mengontrol seberapa besar pengaruh parameter LoRA terhadap output.
  • safe_fusing (bool, defaultnya False) — Apakah akan memeriksa nilai NaN pada bobot yang sudah digabungkan sebelum proses penggabungan, dan jika nilainya NaN, maka bobot tersebut tidak akan digabungkan.
  • adapter_names (list[str], opsional) — Nama-nama adapter yang akan digunakan untuk fusi. Jika tidak ada yang diteruskan, semua adapter aktif akan difusi.

Menggabungkan parameter LoRA ke dalam parameter asli dari blok yang sesuai.

Contoh:

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

< >

( )

Mendapatkan daftar adapter aktif saat ini.

Contoh:

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

< >

( )

Mendapatkan daftar saat ini dari semua adapter yang tersedia di pipeline.

set_adapters

< >

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

Parameter

  • adapter_names (list[str] atau str) — Nama-nama adapter yang akan digunakan.
  • adapter_weights (float, dict atau list, opsional) — Bobot untuk adapter. Skalar akan menskalakan semua komponen yang kompatibel dengan LoRA. Kamus memetakan nama komponen (mis. "unet", "transformer" atau "text_encoder") ke bobot; bobot komponen UNet juga bisa berupa kamus bersarang dari skala blok. Skalar atau kamus tunggal diterapkan ke setiap adapter. Daftar harus berisi satu skalar, kamus, atau None per adapter, sesuai urutan adapter_names. None secara default menjadi 1.0, termasuk entri daftar dan bobot komponen. Komponen yang tidak dinyatakan dan blok UNet juga secara default menjadi 1.0.

Atur adapter yang saat ini aktif untuk digunakan dalam pipeline.

Contoh:

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 )

Parameter

  • adapter_names (list[str]) — daftar adapter untuk dikirim ke perangkat.
  • device (torch.device | str | int) — Perangkat untuk mengirim adapter. Bisa berupa perangkat torch, str, atau integer.

Memindahkan LoRA yang tercantum dalam adapter_names ke perangkat target. Berguna untuk offloading LoRA ke CPU jika Anda ingin memuat beberapa adapter dan membebaskan sebagian memori GPU.

Setelah meng-offload adapter LoRA ke CPU, selama bagian lain dari model masih berada di GPU, adapter LoRA tidak dapat lagi digunakan untuk inferensi, karena hal itu akan menyebabkan ketidakcocokan perangkat. Ingatlah untuk mengatur perangkat kembali ke GPU sebelum menggunakan adapter LoRA tersebut untuk inferensi.

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

Parameter

  • components (list[str]) — daftar komponen yang dapat diinjeksi LoRA untuk melepas LoRA.
  • unfuse_unet (bool, defaultnya True) — Apakah akan memisahkan parameter LoRA dari UNet.
  • unfuse_text_encoder (bool, defaultnya True) — Apakah akan memisahkan (unfuse) parameter LoRA dari text encoder. Jika text encoder tidak di-patch secara monkey-patch dengan parameter LoRA, maka tidak akan ada efeknya.

Membalikkan efek dari pipe.fuse_lora().

unload_lora_weights

< >

( )

Memuat ulang parameter LoRA.

Contoh:

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

Menulis state dict dari lapisan LoRA (opsional dengan metadata) ke disk.

StableDiffusionLoraLoaderMixin

kelas diffusers.loaders.StableDiffusionLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam UNet2DConditionModel dan CLIPTextModel Stable Diffusion.

load_lora_into_text_encoder

< >

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

Parameter

  • state_dict (dict) — State dict standar yang berisi parameter lapisan lora. Kuncinya harus diberi awalan tambahan text_encoder untuk membedakan lapisan lora unet.
  • network_alphas (dict[str, float]) — Nilai network alpha yang digunakan untuk pembelajaran yang stabil dan mencegah underflow. Nilai ini memiliki makna yang sama dengan opsi --network_alpha dalam skrip trainer kohya-ss. Lihat tautan ini.
  • text_encoder (CLIPTextModel) — Model encoder teks untuk memuat lapisan LoRA.
  • prefix (str) — Prefix yang diharapkan dari text_encoder dalam state_dict.
  • lora_scale (float) — Berapa banyak skala output dari lora linear layer sebelum ditambahkan dengan output dari lora layer reguler.
  • adapter_name (str, opsional) — Nama adapter yang akan digunakan untuk merujuk model adapter yang dimuat. Jika tidak ditentukan, akan digunakan default_{i} di mana i adalah total jumlah adapter yang dimuat.
  • low_cpu_mem_usage (bool, opsional) — Percepat pemuatan model dengan hanya memuat bobot LoRA pretrained dan tidak menginisialisasi bobot acak.
  • hotswap (bool, opsional) — Lihat load_lora_weights().
  • metadata (dict) — Metadata adapter LoRA opsional. Jika diberikan, argumen LoraConfig dari peft tidak akan diturunkan dari state dict.

Ini akan memuat lapisan LoRA yang ditentukan dalam state_dict ke dalam text_encoder

load_lora_into_unet

< >

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

Parameter

  • state_dict (dict) — State dict standar yang berisi parameter lapisan lora. Kunci-kuncinya dapat diindeks langsung ke unet atau diberi awalan tambahan unet yang dapat digunakan untuk membedakan lapisan lora text encoder.
  • network_alphas (dict[str, float]) — Nilai network alpha yang digunakan untuk pembelajaran yang stabil dan mencegah underflow. Nilai ini memiliki makna yang sama dengan opsi --network_alpha dalam skrip trainer kohya-ss. Lihat tautan ini.
  • unet (UNet2DConditionModel) — Model UNet untuk memuat lapisan LoRA.
  • adapter_name (str, opsional) — Nama adapter yang akan digunakan untuk merujuk model adapter yang dimuat. Jika tidak ditentukan, akan digunakan default_{i} di mana i adalah total jumlah adapter yang dimuat.
  • low_cpu_mem_usage (bool, opsional) — Percepat pemuatan model dengan hanya memuat bobot LoRA pretrained dan tidak menginisialisasi bobot acak.
  • hotswap (bool, opsional) — Lihat load_lora_weights().
  • metadata (dict) — Metadata adapter LoRA opsional. Jika diberikan, argumen LoraConfig dari peft tidak akan diturunkan dari state dict.

Ini akan memuat lapisan LoRA yang ditentukan dalam state_dict ke dalam unet.

load_lora_weights

< >

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

Parameter

  • pretrained_model_name_or_path_or_dict (str atau os.PathLike atau dict) — Lihat lora_state_dict().
  • adapter_name (str, opsional) — Nama adapter yang akan digunakan untuk merujuk model adapter yang dimuat. Jika tidak ditentukan, akan digunakan default_{i} di mana i adalah total jumlah adapter yang dimuat.
  • low_cpu_mem_usage (bool, opsional) — Percepat pemuatan model dengan hanya memuat bobot LoRA pretrained dan tidak menginisialisasi bobot acak.
  • hotswap (bool, opsional) — Bawaan adalah False. Apakah akan mengganti adapter (LoRA) yang sudah ada dengan adapter yang baru dimuat secara in-place. Artinya, alih-alih memuat adapter tambahan, proses ini akan mengambil bobot adapter yang ada dan menggantinya dengan bobot adapter baru. Hal ini bisa lebih cepat dan lebih efisien dalam penggunaan memori. Namun, keuntungan utama dari hotswapping adalah ketika model dikompilasi dengan torch.compile, pemuatan adapter baru tidak memerlukan kompilasi ulang model. Saat menggunakan hotswapping, adapter_name harus berupa nama adapter yang sudah dimuat.

    Jika adapter baru dan adapter lama memiliki rank dan/atau alpha LoRA (yaitu scaling) yang berbeda, Anda perlu memanggil metode tambahan sebelum memuat adapter:

Muat bobot LoRA yang ditentukan dalam pretrained_model_name_or_path_or_dict ke self.unet dan self.text_encoder.

Semua kwargs diteruskan ke self.lora_state_dict.

Lihat lora_state_dict() untuk detail lebih lanjut tentang cara state dict dimuat.

Lihat load_lora_into_unet() untuk detail lebih lanjut tentang bagaimana state dict dimuat ke dalam self.unet.

Lihat load_lora_into_text_encoder() untuk detail lebih lanjut tentang bagaimana state dict dimuat ke dalam self.text_encoder.

lora_state_dict

< >

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

Parameter

  • pretrained_model_name_or_path_or_dict (str atau os.PathLike atau dict) — Dapat berupa:
    • String, model id (misalnya google/ddpm-celebahq-256) dari model pretrained yang dihosting di Hub.
    • Path ke direktori (misalnya ./my_model_directory) yang berisi bobot model yang disimpan dengan ModelMixin.save_pretrained().
    • torch state dict.
  • cache_dir (str | os.PathLike, opsional) — Path ke direktori tempat konfigurasi model pretrained yang diunduh di-cache jika cache standar tidak digunakan.
  • force_download (bool, opsional, default False) — Apakah akan memaksa (mengunduh ulang) bobot model dan file konfigurasi, menimpa versi yang sudah di-cache jika ada.
  • proxies (dict[str, str], opsional) — Kamus server proxy yang digunakan berdasarkan protokol atau endpoint, misalnya {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Proxy digunakan pada setiap permintaan.
  • local_files_only (bool, opsional, default False) — Apakah hanya memuat bobot model dan file konfigurasi lokal atau tidak. Jika diatur ke True, model tidak akan diunduh dari Hub.
  • token (str atau bool, opsional) — Token yang digunakan sebagai otorisasi bearer HTTP untuk file jarak jauh. Jika True, token yang dihasilkan dari diffusers-cli login (disimpan di ~/.huggingface) akan digunakan.
  • revision (str, opsional, default "main") — Versi model spesifik yang akan digunakan. Bisa berupa nama branch, nama tag, commit id, atau identifier apa pun yang diizinkan oleh Git.
  • subfolder (str, opsional, default "") — Lokasi subfolder dari file model di dalam repositori model yang lebih besar di Hub atau secara lokal.
  • weight_name (str, opsional, defaultnya None) — Nama file state dict yang diserialisasi.
  • return_lora_metadata (bool, opsional, default False) — Jika diaktifkan, kembalikan juga metadata adapter LoRA, yang biasanya ditemukan dalam state dict.

Kembalikan state dict untuk bobot lora dan alfa jaringan.

> Kami mendukung pemuatan checkpoint LoRA berformat A1111 dengan kapasitas terbatas. > > Fungsi ini bersifat eksperimental dan mungkin berubah di masa depan.

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 )

Parameter

  • save_directory (str atau os.PathLike) — Direktori untuk menyimpan parameter LoRA. Akan dibuat jika belum ada.
  • unet_lora_layers (dict[str, torch.nn.Module] atau dict[str, torch.Tensor]) — State dict dari lapisan LoRA yang sesuai dengan unet.
  • text_encoder_lora_layers (dict[str, torch.nn.Module] atau dict[str, torch.Tensor]) — State dict dari lapisan LoRA yang sesuai dengan text_encoder. Anda harus secara eksplisit meneruskan state dict LoRA text encoder karena berasal dari 🤗 Transformers.
  • is_main_process (bool, opsional, default True) — Apakah proses yang memanggil ini adalah proses utama atau tidak. Berguna selama pelatihan terdistribusi dan Anda perlu memanggil fungsi ini di semua proses. Dalam kasus ini, setel is_main_process=True hanya pada proses utama untuk menghindari kondisi balapan.
  • save_function (Callable) — Fungsi yang digunakan untuk menyimpan state dictionary. Berguna selama pelatihan terdistribusi ketika Anda perlu mengganti torch.save dengan metode lain. Dapat dikonfigurasi dengan variabel lingkungan DIFFUSERS_SAVE_MODE.
  • safe_serialization (bool, opsional, default True) — Apakah model disimpan menggunakan safetensors atau cara tradisional PyTorch dengan pickle.
  • unet_lora_adapter_metadata — Metadata adapter LoRA yang terkait dengan unet untuk diserialisasi bersama state dict.
  • text_encoder_lora_adapter_metadata — Metadata adapter LoRA yang terkait dengan text encoder untuk diserialisasi bersama state dict.

Simpan parameter LoRA yang sesuai dengan UNet dan text encoder.

StableDiffusionXLLoraLoaderMixin

kelas diffusers.loaders.StableDiffusionXLLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam UNet2DConditionModel, CLIPTextModel, dan CLIPTextModelWithProjection Stable Diffusion XL.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_text_encoder

< >

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

Parameter

  • state_dict (dict) — State dict standar yang berisi parameter lapisan lora. Kuncinya harus diberi awalan tambahan text_encoder untuk membedakan lapisan lora unet.
  • network_alphas (dict[str, float]) — Nilai network alpha yang digunakan untuk pembelajaran yang stabil dan mencegah underflow. Nilai ini memiliki makna yang sama dengan opsi --network_alpha dalam skrip trainer kohya-ss. Lihat tautan ini.
  • text_encoder (CLIPTextModel) — Model encoder teks untuk memuat lapisan LoRA.
  • prefix (str) — Prefix yang diharapkan dari text_encoder dalam state_dict.
  • lora_scale (float) — Berapa banyak skala output dari lora linear layer sebelum ditambahkan dengan output dari lora layer reguler.
  • adapter_name (str, opsional) — Nama adapter yang akan digunakan untuk merujuk model adapter yang dimuat. Jika tidak ditentukan, akan digunakan default_{i} di mana i adalah total jumlah adapter yang dimuat.
  • low_cpu_mem_usage (bool, opsional) — Percepat pemuatan model dengan hanya memuat bobot LoRA pretrained dan tidak menginisialisasi bobot acak.
  • hotswap (bool, opsional) — Lihat load_lora_weights().
  • metadata (dict) — Metadata adapter LoRA opsional. Jika diberikan, argumen LoraConfig dari peft tidak akan diturunkan dari state dict.

Ini akan memuat lapisan LoRA yang ditentukan dalam state_dict ke dalam text_encoder

load_lora_into_unet

< >

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

Parameter

  • state_dict (dict) — State dict standar yang berisi parameter lapisan lora. Kunci-kuncinya dapat diindeks langsung ke unet atau diberi awalan tambahan unet yang dapat digunakan untuk membedakan lapisan lora text encoder.
  • network_alphas (dict[str, float]) — Nilai network alpha yang digunakan untuk pembelajaran yang stabil dan mencegah underflow. Nilai ini memiliki makna yang sama dengan opsi --network_alpha dalam skrip trainer kohya-ss. Lihat tautan ini.
  • unet (UNet2DConditionModel) — Model UNet untuk memuat lapisan LoRA.
  • adapter_name (str, opsional) — Nama adapter yang akan digunakan untuk merujuk model adapter yang dimuat. Jika tidak ditentukan, akan digunakan default_{i} di mana i adalah total jumlah adapter yang dimuat.
  • low_cpu_mem_usage (bool, opsional) — Percepat pemuatan model dengan hanya memuat bobot LoRA pretrained dan tidak menginisialisasi bobot acak.
  • hotswap (bool, opsional) — Lihat load_lora_weights().
  • metadata (dict) — Metadata adapter LoRA opsional. Jika diberikan, argumen LoraConfig dari peft tidak akan diturunkan dari state dict.

Ini akan memuat lapisan LoRA yang ditentukan dalam state_dict ke dalam unet.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Parameter

  • pretrained_model_name_or_path_or_dict (str atau os.PathLike atau dict) — Dapat berupa:
    • String, model id (misalnya google/ddpm-celebahq-256) dari model pretrained yang dihosting di Hub.
    • Path ke direktori (misalnya ./my_model_directory) yang berisi bobot model yang disimpan dengan ModelMixin.save_pretrained().
    • torch state dict.
  • cache_dir (str | os.PathLike, opsional) — Path ke direktori tempat konfigurasi model pretrained yang diunduh di-cache jika cache standar tidak digunakan.
  • force_download (bool, opsional, default False) — Apakah akan memaksa (mengunduh ulang) bobot model dan file konfigurasi, menimpa versi yang sudah di-cache jika ada.
  • proxies (dict[str, str], opsional) — Kamus server proxy yang digunakan berdasarkan protokol atau endpoint, misalnya {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Proxy digunakan pada setiap permintaan.
  • local_files_only (bool, opsional, default False) — Apakah hanya memuat bobot model dan file konfigurasi lokal atau tidak. Jika diatur ke True, model tidak akan diunduh dari Hub.
  • token (str atau bool, opsional) — Token yang digunakan sebagai otorisasi bearer HTTP untuk file jarak jauh. Jika True, token yang dihasilkan dari diffusers-cli login (disimpan di ~/.huggingface) akan digunakan.
  • revision (str, opsional, default "main") — Versi model spesifik yang akan digunakan. Bisa berupa nama branch, nama tag, commit id, atau identifier apa pun yang diizinkan oleh Git.
  • subfolder (str, opsional, default "") — Lokasi subfolder dari file model di dalam repositori model yang lebih besar di Hub atau secara lokal.
  • weight_name (str, opsional, defaultnya None) — Nama file state dict yang diserialisasi.
  • return_lora_metadata (bool, opsional, default False) — Jika diaktifkan, kembalikan juga metadata adapter LoRA, yang biasanya ditemukan dalam state dict.

Kembalikan state dict untuk bobot lora dan alfa jaringan.

> Kami mendukung pemuatan checkpoint LoRA berformat A1111 dengan kapasitas terbatas. > > Fungsi ini bersifat eksperimental dan mungkin berubah di masa depan.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

SD3LoraLoaderMixin

kelas diffusers.loaders.SD3LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam SD3Transformer2DModel, CLIPTextModel, dan CLIPTextModelWithProjection.

Khusus untuk 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 )

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_text_encoder

< >

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

Parameter

  • state_dict (dict) — State dict standar yang berisi parameter lapisan lora. Kuncinya harus diberi awalan tambahan text_encoder untuk membedakan lapisan lora unet.
  • network_alphas (dict[str, float]) — Nilai network alpha yang digunakan untuk pembelajaran yang stabil dan mencegah underflow. Nilai ini memiliki makna yang sama dengan opsi --network_alpha dalam skrip trainer kohya-ss. Lihat tautan ini.
  • text_encoder (CLIPTextModel) — Model encoder teks untuk memuat lapisan LoRA.
  • prefix (str) — Prefix yang diharapkan dari text_encoder dalam state_dict.
  • lora_scale (float) — Berapa banyak skala output dari lora linear layer sebelum ditambahkan dengan output dari lora layer reguler.
  • adapter_name (str, opsional) — Nama adapter yang akan digunakan untuk merujuk model adapter yang dimuat. Jika tidak ditentukan, akan digunakan default_{i} di mana i adalah total jumlah adapter yang dimuat.
  • low_cpu_mem_usage (bool, opsional) — Percepat pemuatan model dengan hanya memuat bobot LoRA pretrained dan tidak menginisialisasi bobot acak.
  • hotswap (bool, opsional) — Lihat load_lora_weights().
  • metadata (dict) — Metadata adapter LoRA opsional. Jika diberikan, argumen LoraConfig dari peft tidak akan diturunkan dari state dict.

Ini akan memuat lapisan LoRA yang ditentukan dalam state_dict ke dalam text_encoder

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

FluxLoraLoaderMixin

kelas diffusers.loaders.FluxLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam FluxTransformer2DModel, CLIPTextModel.

Khusus untuk FluxPipeline.

fuse_lora

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

load_lora_into_text_encoder

< >

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

Parameter

  • state_dict (dict) — State dict standar yang berisi parameter lapisan lora. Kuncinya harus diberi awalan tambahan text_encoder untuk membedakan lapisan lora unet.
  • network_alphas (dict[str, float]) — Nilai network alpha yang digunakan untuk pembelajaran yang stabil dan mencegah underflow. Nilai ini memiliki makna yang sama dengan opsi --network_alpha dalam skrip trainer kohya-ss. Lihat tautan ini.
  • text_encoder (CLIPTextModel) — Model encoder teks untuk memuat lapisan LoRA.
  • prefix (str) — Prefix yang diharapkan dari text_encoder dalam state_dict.
  • lora_scale (float) — Berapa banyak skala output dari lora linear layer sebelum ditambahkan dengan output dari lora layer reguler.
  • adapter_name (str, opsional) — Nama adapter yang akan digunakan untuk merujuk model adapter yang dimuat. Jika tidak ditentukan, akan digunakan default_{i} di mana i adalah total jumlah adapter yang dimuat.
  • low_cpu_mem_usage (bool, opsional) — Percepat pemuatan model dengan hanya memuat bobot LoRA pretrained dan tidak menginisialisasi bobot acak.
  • hotswap (bool, opsional) — Lihat load_lora_weights().
  • metadata (dict) — Metadata adapter LoRA opsional. Jika diberikan, argumen LoraConfig dari peft tidak akan diturunkan dari state dict.

Ini akan memuat lapisan LoRA yang ditentukan dalam state_dict ke dalam text_encoder

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Parameter

  • save_directory (str atau os.PathLike) — Direktori untuk menyimpan parameter LoRA. Akan dibuat jika belum ada.
  • transformer_lora_layers (dict[str, torch.nn.Module] atau dict[str, torch.Tensor]) — State dict dari lapisan LoRA yang sesuai dengan transformer.
  • text_encoder_lora_layers (dict[str, torch.nn.Module] atau dict[str, torch.Tensor]) — State dict dari lapisan LoRA yang sesuai dengan text_encoder. Anda harus secara eksplisit meneruskan state dict LoRA text encoder karena berasal dari 🤗 Transformers.
  • is_main_process (bool, opsional, default True) — Apakah proses yang memanggil ini adalah proses utama atau tidak. Berguna selama pelatihan terdistribusi dan Anda perlu memanggil fungsi ini di semua proses. Dalam kasus ini, setel is_main_process=True hanya pada proses utama untuk menghindari kondisi balapan.
  • save_function (Callable) — Fungsi yang digunakan untuk menyimpan state dictionary. Berguna selama pelatihan terdistribusi ketika Anda perlu mengganti torch.save dengan metode lain. Dapat dikonfigurasi dengan variabel lingkungan DIFFUSERS_SAVE_MODE.
  • safe_serialization (bool, opsional, default True) — Apakah model disimpan menggunakan safetensors atau cara tradisional PyTorch dengan pickle.
  • transformer_lora_adapter_metadata — Metadata adapter LoRA yang terkait dengan transformer untuk diserialisasi bersama state dict.
  • text_encoder_lora_adapter_metadata — Metadata adapter LoRA yang terkait dengan text encoder untuk diserialisasi bersama state dict.

Simpan parameter LoRA yang sesuai dengan UNet dan text encoder.

unfuse_lora

< >

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

Parameter

  • components (list[str]) — daftar komponen yang dapat diinjeksi LoRA untuk melepas LoRA.

Membalikkan efek dari pipe.fuse_lora().

unload_lora_weights

< >

( reset_to_overwritten_params = False )

Parameter

  • reset_to_overwritten_params (bool, defaultnya False) — Apakah modul yang dimuat LoRA akan direset ke parameter aslinya. Lihat dokumentasi Flux untuk mempelajari lebih lanjut.

Memuat ulang parameter LoRA.

Contoh:

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

Flux2LoraLoaderMixin

kelas diffusers.loaders.Flux2LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam Flux2Transformer2DModel. Khusus untuk Flux2Pipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

Flux3LoraLoaderMixin

kelas diffusers.loaders.Flux3LoraLoaderMixin

< >

( )

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

BriaFibo2LoraLoaderMixin

kelas diffusers.loaders.BriaFibo2LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam BriaFibo2Transformer2DModel. Khusus untuk BriaFibo2Pipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

ErnieImageLoraLoaderMixin

kelas diffusers.loaders.ErnieImageLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam ErnieImageTransformer2DModel. Khusus untuk ErnieImagePipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

LTX2LoraLoaderMixin

kelas diffusers.loaders.LTX2LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam LTX2VideoTransformer3DModel. Khusus untuk LTX2Pipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

CogVideoXLoraLoaderMixin

kelas diffusers.loaders.CogVideoXLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam CogVideoXTransformer3DModel. Khusus untuk CogVideoXPipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

Mochi1LoraLoaderMixin

kelas diffusers.loaders.Mochi1LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam MochiTransformer3DModel. Khusus untuk MochiPipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

AuraFlowLoraLoaderMixin

kelas diffusers.loaders.AuraFlowLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam AuraFlowTransformer2DModel Khusus untuk AuraFlowPipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

LTXVideoLoraLoaderMixin

kelas diffusers.loaders.LTXVideoLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam LTXVideoTransformer3DModel. Khusus untuk LTXPipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

SanaLoraLoaderMixin

kelas diffusers.loaders.SanaLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam SanaTransformer2DModel. Khusus untuk SanaPipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

HeliosLoraLoaderMixin

kelas diffusers.loaders.HeliosLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam HeliosTransformer3DModel. Khusus untuk HeliosPipeline dan HeliosPyramidPipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

HunyuanVideoLoraLoaderMixin

kelas diffusers.loaders.HunyuanVideoLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam HunyuanVideoTransformer3DModel. Khusus untuk HunyuanVideoPipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

Lumina2LoraLoaderMixin

kelas diffusers.loaders.Lumina2LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam Lumina2Transformer2DModel. Khusus untuk Lumina2Pipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

CogView4LoraLoaderMixin

kelas diffusers.loaders.CogView4LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam WanTransformer3DModel. Khusus untuk CogView4Pipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

WanLoraLoaderMixin

kelas diffusers.loaders.WanLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam WanTransformer3DModel. Khusus untuk WanPipeline dan [WanImageToVideoPipeline].

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

SkyReelsV2LoraLoaderMixin

kelas diffusers.loaders.SkyReelsV2LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam SkyReelsV2Transformer3DModel.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

AmusedLoraLoaderMixin

kelas diffusers.loaders.AmusedLoraLoaderMixin

< >

( )

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

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 )

Parameter

  • save_directory (str atau os.PathLike) — Direktori untuk menyimpan parameter LoRA. Akan dibuat jika belum ada.
  • unet_lora_layers (dict[str, torch.nn.Module] atau dict[str, torch.Tensor]) — State dict dari lapisan LoRA yang sesuai dengan unet.
  • text_encoder_lora_layers (dict[str, torch.nn.Module] atau dict[str, torch.Tensor]) — State dict dari lapisan LoRA yang sesuai dengan text_encoder. Anda harus secara eksplisit meneruskan state dict LoRA text encoder karena berasal dari 🤗 Transformers.
  • is_main_process (bool, opsional, default True) — Apakah proses yang memanggil ini adalah proses utama atau tidak. Berguna selama pelatihan terdistribusi dan Anda perlu memanggil fungsi ini di semua proses. Dalam kasus ini, setel is_main_process=True hanya pada proses utama untuk menghindari kondisi balapan.
  • save_function (Callable) — Fungsi yang digunakan untuk menyimpan state dictionary. Berguna selama pelatihan terdistribusi ketika Anda perlu mengganti torch.save dengan metode lain. Dapat dikonfigurasi dengan variabel lingkungan DIFFUSERS_SAVE_MODE.
  • safe_serialization (bool, opsional, default True) — Apakah model disimpan menggunakan safetensors atau cara tradisional PyTorch dengan pickle.

Simpan parameter LoRA yang sesuai dengan UNet dan text encoder.

AnimaLoraLoaderMixin

kelas diffusers.loaders.AnimaLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam CosmosTransformer3DModel dan AnimaTextConditioner.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

AceStepLoraLoaderMixin

kelas diffusers.loaders.AceStepLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam AceStepTransformer1DModel. Khusus untuk AceStepPipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

HiDreamImageLoraLoaderMixin

kelas diffusers.loaders.HiDreamImageLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam HiDreamImageTransformer2DModel. Khusus untuk HiDreamImagePipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

QwenImageLoraLoaderMixin

kelas diffusers.loaders.QwenImageLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam QwenImageTransformer2DModel. Khusus untuk QwenImagePipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

ZImageLoraLoaderMixin

kelas diffusers.loaders.ZImageLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam ZImageTransformer2DModel. Khusus untuk ZImagePipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

CosmosLoraLoaderMixin

kelas diffusers.loaders.CosmosLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam CosmosTransformer3DModel, Khusus untuk Cosmos2_5_PredictBasePipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

KandinskyLoraLoaderMixin

kelas diffusers.loaders.KandinskyLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam Kandinsky5Transformer3DModel,

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

Ideogram4LoraLoaderMixin

kelas diffusers.loaders.Ideogram4LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam Ideogram4Transformer2DModel. Khusus untuk Ideogram4Pipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

Krea2LoraLoaderMixin

kelas diffusers.loaders.Krea2LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam Krea2Transformer2DModel. Khusus untuk Krea2Pipeline.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_weights

< >

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

Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

MiniMaxH3LoraLoaderMixin

kelas diffusers.loaders.MiniMaxH3LoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam MiniMaxH3Transformer3DModel. Khusus untuk MiniMaxH3ModularPipeline.

MiniMax-H3 menyediakan dua partisi DiT independen dengan nama modul yang identik (LoRA untuk satu partisi akan dimuat ke partisi lainnya dan menurunkan kualitas output), sehingga routing dilakukan secara eksplisit: state dict yang dikonversi menargetkan transformer.; akses ke transformer_ref dilakukan dengan file berawalan transformer_ref. atau load_into_transformer_ref=True.

LoRA dari DiffSynth-Studio (misalnya DiffSynth-Studio/MiniMax-H3-LoRA-LineartAnime) dilatih terhadap QKV fused per-head-interleaved dari checkpoint mentah dan di-de-interleave saat konversi. Faktor fp32 mereka membuat jalur LoRA non-fused menghitung dalam fp32; .to(torch.bfloat16) pada model setelah dimuat memulihkan anggaran memori bf16.

LoRA yang dilatih terhadap checkpoint yang dipangkas (file *_pruned_* di Comfy-Org/MiniMax-H3; joyfox/MiniMax-H3-Turbo adalah salah satunya) gagal dengan ketidakcocokan ukuran. File tanpa alpha dimuat pada alpha == rank (skala 1.0, konvensi yang dinyatakan oleh misalnya larryvrh/MiniMax-H3-Turbo-Lora); entri alpha dalam __metadata__ (misalnya file 8-langkah dari lightx2v/Minimax-h3-Turbo), jika ada, diprioritaskan.

fuse_lora

< >

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

Lihat fuse_lora() untuk detail lebih lanjut.

load_lora_into_transformer

< >

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

Lihat load_lora_into_unet() untuk detail lebih lanjut.

load_lora_into_transformer_ref

< >

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

Muat lapisan LoRA ke partisi transformer_ref. prefix adalah nama komponen yang dibawa oleh kunci, yaitu transformer_ref untuk file yang menamai partisi dan transformer untuk file yang diarahkan ke sini oleh load_into_transformer_ref=True. Lihat load_lora_into_unet() untuk detail lebih lanjut.

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 )

Parameter

  • load_into_transformer_ref (bool, default False) — Muat lapisan berawalan transformer. ke partisi transformer_ref — partisi yang digunakan oleh workflow ref2va untuk denoising — alih-alih transformer. Hanya diperlukan ketika kedua partisi dimuat: pipeline yang hanya memegang transformer_ref akan secara otomatis mengarah ke sana.

Muat lapisan LoRA ke dalam transformer atau, dengan load_into_transformer_ref=True, ke dalam transformer_ref. Lihat load_lora_weights() untuk detail lebih lanjut.

lora_state_dict

< >

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

Lihat lora_state_dict() untuk detail lebih lanjut.

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 )

Simpan lapisan LoRA dari satu atau kedua partisi MiniMax-H3. Partisi mana yang dimiliki oleh sebuah LoRA tidak dapat dipulihkan dari kuncinya, sehingga ini adalah satu-satunya cara untuk menerbitkan LoRA H3 yang mencatatnya. Lihat save_lora_weights() untuk informasi lebih lanjut.

unfuse_lora

< >

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

Lihat unfuse_lora() untuk detail lebih lanjut.

PikaH3FlexLoraLoaderMixin

kelas diffusers.loaders.PikaH3FlexLoraLoaderMixin

< >

( )

Muat lapisan LoRA ke dalam MiniMaxH3Transformer3DModel. Khusus untuk PikaH3FlexModularPipeline.

Rilis Pika H3 Flex adalah sepasang adapter rank-128 di atas dua partisi transformer MiniMax-H3, yang diterbitkan sebagai dump PEFT biasa dari nama modul diffusers (fl2va/adapter.safetensors untuk transformer, ref2va/adapter.safetensors untuk transformer_ref). File tanpa alpha dimuat pada alpha == rank (skala 1.0), sesuai kontrak adapter itu sendiri, dan proses pemuatan, perutean, serta penyimpanan mengikuti MiniMaxH3LoraLoaderMixin: adapter fl2va masuk ke transformer, dan adapter ref2va masuk ke transformer_ref — secara mandiri ketika pipeline hanya memegang partisi tersebut (workflow="ref2va"), atau dengan load_into_transformer_ref=True ketika pipeline memegang keduanya.

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

LoraBaseMixin

kelas diffusers.loaders.lora_base.LoraBaseMixin

< >

( )

Kelas utilitas untuk menangani LoRA.

delete_adapters

< >

( adapter_names: list[str] | str )

Parameter

  • adapter_names (list[str, str]) — Nama-nama adapter yang akan dihapus.

Hapus lapisan LoRA dari adapter di pipeline.

Contoh:

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

< >

( )

Menonaktifkan lapisan LoRA aktif dari pipeline.

Contoh:

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

< >

( )

Mengaktifkan lapisan LoRA aktif dari pipeline.

Contoh:

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 )

Parameter

  • target_rank (int) — Rank tertinggi di antara semua adapter yang akan dimuat.
  • check_compiled (str, opsional, defaultnya "error") — Cara menangani model yang sudah dikompilasi. Pengecekan dapat mengembalikan pesan berikut:
    • “error” (default): lempar error
    • “warn”: mengeluarkan peringatan
    • “ignore”: tidak melakukan apa pun

Hotswap adapter tanpa memicu kompilasi ulang model atau jika rank dari adapter yang dimuat berbeda.

fuse_lora

< >

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

Parameter

  • components — (list[str]): daftar komponen yang dapat disuntikkan LoRA untuk memfusi LoRA ke dalamnya.
  • lora_scale (float, default 1.0) — Mengontrol seberapa besar pengaruh parameter LoRA terhadap output.
  • safe_fusing (bool, defaultnya False) — Apakah akan memeriksa nilai NaN pada bobot yang sudah digabungkan sebelum proses penggabungan, dan jika nilainya NaN, maka bobot tersebut tidak akan digabungkan.
  • adapter_names (list[str], opsional) — Nama-nama adapter yang akan digunakan untuk fusi. Jika tidak ada yang diteruskan, semua adapter aktif akan difusi.

Menggabungkan parameter LoRA ke dalam parameter asli dari blok yang sesuai.

Contoh:

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

< >

( )

Mendapatkan daftar adapter aktif saat ini.

Contoh:

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

< >

( )

Mendapatkan daftar saat ini dari semua adapter yang tersedia di pipeline.

set_adapters

< >

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

Parameter

  • adapter_names (list[str] atau str) — Nama-nama adapter yang akan digunakan.
  • adapter_weights (float, dict atau list, opsional) — Bobot untuk adapter. Skalar akan menskalakan semua komponen yang kompatibel dengan LoRA. Kamus memetakan nama komponen (mis. "unet", "transformer" atau "text_encoder") ke bobot; bobot komponen UNet juga bisa berupa kamus bersarang dari skala blok. Skalar atau kamus tunggal diterapkan ke setiap adapter. Daftar harus berisi satu skalar, kamus, atau None per adapter, sesuai urutan adapter_names. None secara default menjadi 1.0, termasuk entri daftar dan bobot komponen. Komponen yang tidak dinyatakan dan blok UNet juga secara default menjadi 1.0.

Atur adapter yang saat ini aktif untuk digunakan dalam pipeline.

Contoh:

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 )

Parameter

  • adapter_names (list[str]) — daftar adapter untuk dikirim ke perangkat.
  • device (torch.device | str | int) — Perangkat untuk mengirim adapter. Bisa berupa perangkat torch, str, atau integer.

Memindahkan LoRA yang tercantum dalam adapter_names ke perangkat target. Berguna untuk offloading LoRA ke CPU jika Anda ingin memuat beberapa adapter dan membebaskan sebagian memori GPU.

Setelah meng-offload adapter LoRA ke CPU, selama bagian lain dari model masih berada di GPU, adapter LoRA tidak dapat lagi digunakan untuk inferensi, karena hal itu akan menyebabkan ketidakcocokan perangkat. Ingatlah untuk mengatur perangkat kembali ke GPU sebelum menggunakan adapter LoRA tersebut untuk inferensi.

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

Parameter

  • components (list[str]) — daftar komponen yang dapat diinjeksi LoRA untuk melepas LoRA.
  • unfuse_unet (bool, defaultnya True) — Apakah akan memisahkan parameter LoRA dari UNet.
  • unfuse_text_encoder (bool, defaultnya True) — Apakah akan memisahkan (unfuse) parameter LoRA dari text encoder. Jika text encoder tidak di-patch secara monkey-patch dengan parameter LoRA, maka tidak akan ada efeknya.

Membalikkan efek dari pipe.fuse_lora().

unload_lora_weights

< >

( )

Memuat ulang parameter LoRA.

Contoh:

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

Menulis state dict dari lapisan LoRA (opsional dengan metadata) ke disk.

Update on GitHub