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, model parametrelerinin tamamı yerine çok daha az sayıda parametreyi ekleyip eğiten hızlı ve hafif bir eğitim yöntemidir. Bu, daha küçük bir dosya (~100 MB) oluşturur ve bir modelin yeni bir kavramı öğrenmesi için hızla eğitilmesini kolaylaştırır. LoRA ağırlıkları genellikle denoiser'a, metin kodlayıcıya veya her ikisine yüklenir. Denoiser genellikle bir UNet (UNet2DConditionModel, örneğin) veya bir Transformer (SD3Transformer2DModel, örneğin) ile eşleşir. LoRA ağırlıklarını yüklemek için birkaç sınıf bulunmaktadır:

  • StableDiffusionLoraLoaderMixin, LoRA ağırlıklarını yönetmek için yükleme ve kaldırma, birleştirme ve ayırma, etkinleştirme ve devre dışı bırakma gibi işlevler sağlar. Bu sınıf herhangi bir modelle kullanılabilir.
  • StableDiffusionXLLoraLoaderMixin, LoRA ağırlıklarını yüklemek ve kaydetmek için StableDiffusionLoraLoaderMixin sınıfının Stable Diffusion (SDXL) sürümüdür. Yalnızca SDXL modeliyle kullanılabilir.
  • SD3LoraLoaderMixin, Stable Diffusion 3 için benzer işlevler sağlar.
  • FluxLoraLoaderMixin, Flux için benzer işlevler sağlar.
  • CogVideoXLoraLoaderMixin, CogVideoX için benzer işlevler sağlar.
  • Mochi1LoraLoaderMixin, Mochi için benzer işlevler sağlar.
  • AuraFlowLoraLoaderMixin, AuraFlow için benzer işlevler sağlar.
  • LTXVideoLoraLoaderMixin, LTX-Video için benzer işlevler sağlar.
  • SanaLoraLoaderMixin, Sana için benzer işlevler sağlar.
  • HeliosLoraLoaderMixin, HunyuanVideo için benzer işlevler sağlar.
  • HunyuanVideoLoraLoaderMixin, HunyuanVideo için benzer işlevler sağlar.
  • Lumina2LoraLoaderMixin, Lumina2 için benzer işlevler sağlar.
  • WanLoraLoaderMixin, Wan için benzer işlevler sağlar.
  • SkyReelsV2LoraLoaderMixin, SkyReels-V2 için benzer işlevler sağlar.
  • CogView4LoraLoaderMixin, CogView4 için benzer işlevler sağlar.
  • AmusedLoraLoaderMixin, AmusedPipeline içindir.
  • AnimaLoraLoaderMixin, Anima için benzer işlevler sağlar.
  • AceStepLoraLoaderMixin, ACE-Step için benzer işlevler sağlar.
  • HiDreamImageLoraLoaderMixin, HiDream Image için benzer işlevler sağlar
  • QwenImageLoraLoaderMixin, Qwen Image için benzer işlevler sağlar.
  • ZImageLoraLoaderMixin, Z-Image için benzer işlevler sağlar.
  • Flux2LoraLoaderMixin, Flux2 için benzer işlevler sağlar.
  • ErnieImageLoraLoaderMixin, Ernie-Image için benzer işlevler sağlar.
  • LTX2LoraLoaderMixin, Flux2 için benzer işlevler sağlar.
  • MiniMaxH3LoraLoaderMixin, MiniMax-H3 için benzer işlevler sağlar.
  • PikaH3FlexLoraLoaderMixin, Pika H3 Flex için benzer işlevler sağlar.
  • RFD4ProteinaLoraLoaderMixin, RFD4-Proteína için benzer işlevler sağlar.
  • BriaFibo2LoraLoaderMixin, fibo-2 için benzer işlevler sağlar.
  • LoraBaseMixin, LoRA'ları birleştirme, ayırma, yükleme ve daha fazlası için çeşitli yardımcı yöntemler içeren bir taban sınıfı sağlar.

LoRA ağırlıklarının nasıl yükleneceğini öğrenmek için LoRA yükleme kılavuzuna bakın.

RFD4ProteinaLoraLoaderMixin

sınıf diffusers.loaders.RFD4ProteinaLoraLoaderMixin

< >

( )

LoRA katmanlarını RFD4ProteinaTransformer içine yükleyin.

Otomatik kodlayıcı, gürültü azaltıcı kontrol noktasıyla eşleştirilir ve uyarlanmaz; bu nedenle dönüştürücü, yüklenebilir tek modüldür.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

LoraBaseMixin

sınıf diffusers.loaders.lora_base.LoraBaseMixin

< >

( )

LoRA'ları işlemek için yardımcı sınıf.

delete_adapters

< >

( adapter_names: list[str] | str )

Parametreler

  • adapter_names (list[str, str]) — Silinecek adaptörlerin adları.

Hattın (pipeline) içindeki bir adaptörün LoRA katmanlarını silin.

Örnek:

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

< >

( )

Hattın (pipeline) etkin LoRA katmanlarını devre dışı bırakır.

Örnek:

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

< >

( )

Hattın (pipeline) etkin LoRA katmanlarını etkinleştirir.

Örnek:

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 )

Parametreler

  • target_rank (int) — Yüklenecek tüm adaptörler arasındaki en yüksek rank.
  • check_compiled (str, isteğe bağlı, varsayılan olarak "error") — Zaten derlenmiş bir modelin nasıl ele alınacağı. Kontrol aşağıdaki mesajları döndürebilir:
    • “error” (varsayılan): bir hata fırlat
    • “warn”: bir uyarı yayınla
    • “ignore”: hiçbir şey yapma

Bir modelin yeniden derlenmesini tetiklemeden veya yüklenen adaptörlerin dereceleri farklıysa adaptörleri sıcak değiştirin.

fuse_lora

< >

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

Parametreler

  • components — (list[str]): LoRA'ların birleştirileceği, LoRA enjekte edilebilir bileşenlerin listesi.
  • lora_scale (float, varsayılan 1.0) — LoRA parametrelerinin çıktıları ne ölçüde etkileyeceğini kontrol eder.
  • safe_fusing (bool, varsayılan False) — Birleştirme işleminden önce birleştirilmiş ağırlıklarda NaN değerleri olup olmadığını kontrol edip, değerler NaN ise birleştirilmemelerini sağlar.
  • adapter_names (list[str], isteğe bağlı) — Birleştirme için kullanılacak adaptör adları. Hiçbiri geçirilmezse, tüm etkin adaptörler birleştirilir.

LoRA parametrelerini, ilgili blokların orijinal parametreleriyle birleştirir.

Örnek:

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

< >

( )

Mevcut etkin adaptörlerin listesini alır.

Örnek:

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

< >

( )

Hattın mevcut tüm kullanılabilir adaptörlerinin listesini alır.

set_adapters

< >

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

Parametreler

  • adapter_names (list[str] veya str) — Kullanılacak adaptörlerin adları.
  • adapter_weights (float, dict veya list, isteğe bağlı) — Adaptörler için ağırlıklar. Bir skaler, tüm LoRA uyumlu bileşenleri ölçekler. Bir sözlük, bileşen adlarını (ör. "unet", "transformer" veya "text_encoder") ağırlıklara eşler; bir UNet bileşeninin ağırlığı, blok ölçeklerinin iç içe geçmiş bir sözlüğü de olabilir. Tek bir skaler veya sözlük, her bir adaptöre uygulanır. Bir liste, adapter_names sırasına göre her adaptör için bir skaler, sözlük veya None içermelidir. None, liste girdileri ve bileşen ağırlıkları dahil olmak üzere 1.0 varsayılanına sahiptir. Belirtilmeyen bileşenler ve UNet blokları da 1.0 varsayılanına sahiptir.

Hattın kullanımında aktif olarak kullanılacak adaptörleri ayarlayın.

Örnek:

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 )

Parametreler

  • adapter_names (list[str]) — cihaza gönderilecek adaptörlerin listesi.
  • device (torch.device | str | int) — Adaptörlerin gönderileceği cihaz. Bir torch cihazı, str veya tamsayı olabilir.

adapter_names içinde listelenen LoRA'ları hedef bir cihaza taşır. Birden fazla adaptör yüklemek ve GPU belleğinden yer açmak istediğinizde LoRA'yı CPU'ya taşımak için kullanışlıdır.

LoRA adaptörleri CPU'ya aktardıktan sonra, modelin geri kalanı GPU'da kaldığı sürece, LoRA adaptörleri artık çıkarım için kullanılamaz; çünkü bu bir cihaz uyumsuzluğuna neden olur. Bu LoRA adaptörlerini çıkarım için kullanmadan önce cihazı tekrar GPU'ya ayarlamayı unutmayın.

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

Parametreler

  • components (list[str]) — LoRA'nın çıkarılacağı LoRA enjekte edilebilir bileşenlerin listesi.
  • unfuse_unet (bool, varsayılan True) — UNet LoRA parametrelerinin ayrıştırılıp ayrıştırılmayacağı.
  • unfuse_text_encoder (bool, varsayılan True) — Metin kodlayıcı LoRA parametrelerinin ayrıştırılıp ayrıştırılmayacağı. Metin kodlayıcı LoRA parametreleriyle yamalanmadıysa, bu parametrenin bir etkisi olmaz.

pipe.fuse_lora() işleminin etkisini geri alır.

unload_lora_weights

< >

( )

LoRA parametrelerini boşaltır.

Örnekler:

>>> # 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 katmanlarının durum sözlüğünü (isteğe bağlı olarak metadata ile birlikte) diske yazar.

StableDiffusionLoraLoaderMixin

sınıf diffusers.loaders.StableDiffusionLoraLoaderMixin

< >

( )

LoRA katmanlarını Stable Diffusion UNet2DConditionModel ve CLIPTextModel içine yükleyin.

load_lora_into_text_encoder

< >

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

Parametreler

  • state_dict (dict) — lora katman parametrelerini içeren standart bir state dict. unet lora katmanlarından ayırt edebilmek için anahtarın başına ek olarak text_encoder öneki eklenmelidir.
  • network_alphas (dict[str, float]) — Kararlı öğrenme için kullanılan ve taşma (underflow) sorununu önleyen network alfa değeri. Bu değerin anlamı, kohya-ss eğitim betiğindeki --network_alpha seçeneğiyle aynıdır. bu bağlantıya bakın.
  • text_encoder (CLIPTextModel) — LoRA katmanlarının yükleneceği metin kodlayıcı modeli.
  • prefix (str) — state_dict içindeki text_encoder için beklenen önek.
  • lora_scale (float) — Düzenli lora katmanının çıktısıyla toplanmadan önce, lora doğrusal katmanının çıktısının ne kadar ölçeklendirileceğini belirtir.
  • adapter_name (str, isteğe bağlı) — Yüklenen adaptör modeline atıfta bulunmak için kullanılacak adaptör adı. Belirtilmezse, yüklenen adaptörlerin toplam sayısını temsil eden i için default_{i} kullanılır.
  • low_cpu_mem_usage (bool, isteğe bağlı) — Rastgele ağırlıkları başlatmadan yalnızca önceden eğitilmiş LoRA ağırlıklarını yükleyerek model yükleme hızını artırır.
  • hotswap (bool, isteğe bağlı) — Bkz. load_lora_weights().
  • metadata (dict) — İsteğe bağlı LoRA adaptör meta verisi. Sağlandığında, peft'nin LoraConfig argümanları durum sözlüğünden (state dict) türetilmez.

Bu, state_dict içinde belirtilen LoRA katmanlarını text_encoder içine yükleyecektir.

load_lora_into_unet

< >

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

Parametreler

  • state_dict (dict) — lora katman parametrelerini içeren standart bir state dict. Anahtarlar, unet'e doğrudan indekslenebilir veya metin kodlayıcı lora katmanlarını ayırt etmek için kullanılabilen ek bir unet önekiyle başlatılabilir.
  • network_alphas (dict[str, float]) — Kararlı öğrenme için kullanılan ve taşma (underflow) sorununu önleyen network alfa değeri. Bu değerin anlamı, kohya-ss eğitim betiğindeki --network_alpha seçeneğiyle aynıdır. bu bağlantıya bakın.
  • unet (UNet2DConditionModel) — LoRA katmanlarının yükleneceği UNet modeli.
  • adapter_name (str, isteğe bağlı) — Yüklenen adaptör modeline atıfta bulunmak için kullanılacak adaptör adı. Belirtilmezse, yüklenen adaptörlerin toplam sayısını temsil eden i için default_{i} kullanılır.
  • low_cpu_mem_usage (bool, isteğe bağlı) — Rastgele ağırlıkları başlatmadan yalnızca önceden eğitilmiş LoRA ağırlıklarını yükleyerek model yükleme hızını artırır.
  • hotswap (bool, isteğe bağlı) — Bkz. load_lora_weights().
  • metadata (dict) — İsteğe bağlı LoRA adaptör meta verisi. Sağlandığında, peft'nin LoraConfig argümanları durum sözlüğünden (state dict) türetilmez.

Bu, state_dict içinde belirtilen LoRA katmanlarını unet içine yükleyecektir.

load_lora_weights

< >

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

Parametreler

  • pretrained_model_name_or_path_or_dict (str veya os.PathLike veya dict) — Bkz. lora_state_dict().
  • adapter_name (str, isteğe bağlı) — Yüklenen adaptör modeline atıfta bulunmak için kullanılacak adaptör adı. Belirtilmezse, yüklenen adaptörlerin toplam sayısını temsil eden i için default_{i} kullanılır.
  • low_cpu_mem_usage (bool, isteğe bağlı) — Rastgele ağırlıkları başlatmadan yalnızca önceden eğitilmiş LoRA ağırlıklarını yükleyerek model yükleme hızını artırır.
  • hotswap (bool, isteğe bağlı) — Varsayılan olarak False. Mevcut (LoRA) adaptörün, yeni yüklenen adaptörle yerinde değiştirilip değiştirilmeyeceğini belirtir. Bu, ek bir adaptör yüklemek yerine mevcut adaptör ağırlıklarının yeni adaptörün ağırlıklarıyla değiştirilmesi anlamına gelir. Bu işlem daha hızlı ve bellek açısından daha verimli olabilir. Ancak hotswap'in ana avantajı, model torch.compile ile derlendiğinde yeni adaptörün yüklenmesinin modelin yeniden derlenmesini gerektirmemesidir. Hotswap kullanıldığında, iletilen adapter_name zaten yüklenmiş bir adaptörün adı olmalıdır.

    Yeni ve eski adaptörlerin farklı rütbelere ve/veya LoRA alfa değerlerine (yani ölçeklemeye) sahip olması durumunda, adaptörü yüklemekten önce ek bir yöntemi çağırmalısınız:

pretrained_model_name_or_path_or_dict içinde belirtilen LoRA ağırlıklarını self.unet ve self.text_encoder içine yükler.

Tüm kwargs, self.lora_state_dict'ye iletilir.

State dict'in nasıl yüklendiğine dair daha fazla ayrıntı için lora_state_dict() işlevine bakın.

self.unet'e durum sözlüğünün nasıl yüklendiğine dair daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

self.text_encoder'e durum sözlüğünün nasıl yüklendiğine dair daha fazla ayrıntı için load_lora_into_text_encoder() işlevine bakın.

lora_state_dict

< >

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

Parametreler

  • pretrained_model_name_or_path_or_dict (str veya os.PathLike veya dict) — Şunlardan biri olabilir:
    • Bir dize, Hub üzerinde barındırılan önceden eğitilmiş bir modelin model kimliği (örneğin google/ddpm-celebahq-256).
    • Model ağırlıklarının ModelMixin.save_pretrained() ile kaydedildiği bir dizin (örneğin ./my_model_directory) yolunu belirtir.
    • Bir torch durum sözlüğü.
  • cache_dir (str | os.PathLike, isteğe bağlı) — Standart önbellek kullanılmıyorsa, indirilen önceden eğitilmiş model yapılandırmasının önbelleğe alındığı dizinin yolu.
  • force_download (bool, isteğe bağlı, varsayılan False) — Model ağırlıklarının ve yapılandırma dosyalarının (yeniden) indirilmesinin zorlanıp zorlanmayacağını belirler; önbellekteki sürümler varsa bunların üzerine yazar.
  • proxies (dict[str, str], isteğe bağlı) — Protokole veya uç noktaya göre kullanılacak vekil sunucuların sözlüğü, örneğin {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Vekiller her istekte kullanılır.
  • local_files_only (bool, isteğe bağlı, varsayılan False) — Yalnızca yerel model ağırlıkları ve yapılandırma dosyalarının yüklenip yüklenmeyeceğini belirtir. True olarak ayarlanırsa, model Hub'dan indirilmez.
  • token (str veya bool, isteğe bağlı) — Uzak dosyalar için HTTP bearer yetkilendirmesi olarak kullanılacak jeton. True ise, diffusers-cli login ile oluşturulan jeton ( ~/.huggingface içinde saklanır) kullanılır.
  • revision (str, isteğe bağlı, varsayılan "main") — Kullanılacak belirli model sürümü. Bir dal adı, etiket adı, commit kimliği veya Git tarafından izin verilen herhangi bir tanımlayıcı olabilir.
  • subfolder (str, isteğe bağlı, varsayılan "") — Hub'da veya yerel olarak daha büyük bir model deposu içindeki bir model dosyasının alt klasör konumu.
  • weight_name (str, isteğe bağlı, varsayılan None) — Seri hale getirilmiş state dict dosyasının adı.
  • return_lora_metadata (bool, isteğe bağlı, varsayılan olarak False) — Etkinleştirildiğinde, genellikle state dict'te bulunan LoRA adaptör meta verileri de ayrıca döndürülür.

lora ağırlıkları ve ağ alfa değerleri için durum sözlüğünü döndürür.

> A1111 biçimli LoRA checkpoint'lerini sınırlı bir kapasitede yüklemeyi destekliyoruz. > > Bu işlev deneyseldir ve gelecekte değişebilir.

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 )

Parametreler

  • save_directory (str veya os.PathLike) — LoRA parametrelerinin kaydedileceği dizin. Var değilse oluşturulur.
  • unet_lora_layers (dict[str, torch.nn.Module] veya dict[str, torch.Tensor]) — unet ile eşleşen LoRA katmanlarının state dict'i.
  • text_encoder_lora_layers (dict[str, torch.nn.Module] veya dict[str, torch.Tensor]) — text_encoder'a karşılık gelen LoRA katmanlarının state dict'i. 🤗 Transformers'tan geldiği için metin kodlayıcı LoRA state dict'inin açıkça geçirilmesi gerekir.
  • is_main_process (bool, isteğe bağlı, varsayılan True) — Bu fonksiyonu çağıran sürecin ana süreç olup olmadığı. Dağıtık eğitim sırasında ve bu fonksiyonun tüm süreçlerde çağrılması gerektiğinde kullanışlıdır. Bu durumda, yarış durumlarını önlemek için is_main_process=True değerini yalnızca ana süreçte ayarlayın.
  • save_function (Callable) — Durum sözlüğünü kaydetmek için kullanılacak işlev. Dağıtık eğitim sırasında torch.save yerine başka bir yöntem kullanmanız gerektiğinde faydalıdır. DIFFUSERS_SAVE_MODE ortam değişkeni ile yapılandırılabilir.
  • safe_serialization (bool, isteğe bağlı, varsayılan True) — Modelin safetensors ile mi yoksa geleneksel PyTorch yöntemiyle pickle kullanılarak mı kaydedileceğini belirtir.
  • unet_lora_adapter_metadata — Durum sözlüğüyle birlikte serialize edilecek unet ile ilişkili LoRA adaptör meta verileri.
  • text_encoder_lora_adapter_metadata — Durum sözlüğüyle birlikte seri hale getirilecek metin kodlayıcıyla ilişkili LoRA adaptör meta verileri.

UNet ve metin kodlayıcıya karşılık gelen LoRA parametrelerini kaydedin.

StableDiffusionXLLoraLoaderMixin

sınıf diffusers.loaders.StableDiffusionXLLoraLoaderMixin

< >

( )

Stable Diffusion XL UNet2DConditionModel, CLIPTextModel ve CLIPTextModelWithProjection bileşenlerine LoRA katmanlarını yükleyin.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_text_encoder

< >

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

Parametreler

  • state_dict (dict) — lora katman parametrelerini içeren standart bir state dict. unet lora katmanlarından ayırt edebilmek için anahtarın başına ek olarak text_encoder öneki eklenmelidir.
  • network_alphas (dict[str, float]) — Kararlı öğrenme için kullanılan ve taşma (underflow) sorununu önleyen network alfa değeri. Bu değerin anlamı, kohya-ss eğitim betiğindeki --network_alpha seçeneğiyle aynıdır. bu bağlantıya bakın.
  • text_encoder (CLIPTextModel) — LoRA katmanlarının yükleneceği metin kodlayıcı modeli.
  • prefix (str) — state_dict içindeki text_encoder için beklenen önek.
  • lora_scale (float) — Düzenli lora katmanının çıktısıyla toplanmadan önce, lora doğrusal katmanının çıktısının ne kadar ölçeklendirileceğini belirtir.
  • adapter_name (str, isteğe bağlı) — Yüklenen adaptör modeline atıfta bulunmak için kullanılacak adaptör adı. Belirtilmezse, yüklenen adaptörlerin toplam sayısını temsil eden i için default_{i} kullanılır.
  • low_cpu_mem_usage (bool, isteğe bağlı) — Rastgele ağırlıkları başlatmadan yalnızca önceden eğitilmiş LoRA ağırlıklarını yükleyerek model yükleme hızını artırır.
  • hotswap (bool, isteğe bağlı) — Bkz. load_lora_weights().
  • metadata (dict) — İsteğe bağlı LoRA adaptör meta verisi. Sağlandığında, peft'nin LoraConfig argümanları durum sözlüğünden (state dict) türetilmez.

Bu, state_dict içinde belirtilen LoRA katmanlarını text_encoder içine yükleyecektir.

load_lora_into_unet

< >

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

Parametreler

  • state_dict (dict) — lora katman parametrelerini içeren standart bir state dict. Anahtarlar, unet'e doğrudan indekslenebilir veya metin kodlayıcı lora katmanlarını ayırt etmek için kullanılabilen ek bir unet önekiyle başlatılabilir.
  • network_alphas (dict[str, float]) — Kararlı öğrenme için kullanılan ve taşma (underflow) sorununu önleyen network alfa değeri. Bu değerin anlamı, kohya-ss eğitim betiğindeki --network_alpha seçeneğiyle aynıdır. bu bağlantıya bakın.
  • unet (UNet2DConditionModel) — LoRA katmanlarının yükleneceği UNet modeli.
  • adapter_name (str, isteğe bağlı) — Yüklenen adaptör modeline atıfta bulunmak için kullanılacak adaptör adı. Belirtilmezse, yüklenen adaptörlerin toplam sayısını temsil eden i için default_{i} kullanılır.
  • low_cpu_mem_usage (bool, isteğe bağlı) — Rastgele ağırlıkları başlatmadan yalnızca önceden eğitilmiş LoRA ağırlıklarını yükleyerek model yükleme hızını artırır.
  • hotswap (bool, isteğe bağlı) — Bkz. load_lora_weights().
  • metadata (dict) — İsteğe bağlı LoRA adaptör meta verisi. Sağlandığında, peft'nin LoraConfig argümanları durum sözlüğünden (state dict) türetilmez.

Bu, state_dict içinde belirtilen LoRA katmanlarını unet içine yükleyecektir.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Parametreler

  • pretrained_model_name_or_path_or_dict (str veya os.PathLike veya dict) — Şunlardan biri olabilir:
    • Bir dize, Hub üzerinde barındırılan önceden eğitilmiş bir modelin model kimliği (örneğin google/ddpm-celebahq-256).
    • Model ağırlıklarının ModelMixin.save_pretrained() ile kaydedildiği bir dizin (örneğin ./my_model_directory) yolunu belirtir.
    • Bir torch durum sözlüğü.
  • cache_dir (str | os.PathLike, isteğe bağlı) — Standart önbellek kullanılmıyorsa, indirilen önceden eğitilmiş model yapılandırmasının önbelleğe alındığı dizinin yolu.
  • force_download (bool, isteğe bağlı, varsayılan False) — Model ağırlıklarının ve yapılandırma dosyalarının (yeniden) indirilmesinin zorlanıp zorlanmayacağını belirler; önbellekteki sürümler varsa bunların üzerine yazar.
  • proxies (dict[str, str], isteğe bağlı) — Protokole veya uç noktaya göre kullanılacak vekil sunucuların sözlüğü, örneğin {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Vekiller her istekte kullanılır.
  • local_files_only (bool, isteğe bağlı, varsayılan False) — Yalnızca yerel model ağırlıkları ve yapılandırma dosyalarının yüklenip yüklenmeyeceğini belirtir. True olarak ayarlanırsa, model Hub'dan indirilmez.
  • token (str veya bool, isteğe bağlı) — Uzak dosyalar için HTTP bearer yetkilendirmesi olarak kullanılacak jeton. True ise, diffusers-cli login ile oluşturulan jeton ( ~/.huggingface içinde saklanır) kullanılır.
  • revision (str, isteğe bağlı, varsayılan "main") — Kullanılacak belirli model sürümü. Bir dal adı, etiket adı, commit kimliği veya Git tarafından izin verilen herhangi bir tanımlayıcı olabilir.
  • subfolder (str, isteğe bağlı, varsayılan "") — Hub'da veya yerel olarak daha büyük bir model deposu içindeki bir model dosyasının alt klasör konumu.
  • weight_name (str, isteğe bağlı, varsayılan None) — Seri hale getirilmiş state dict dosyasının adı.
  • return_lora_metadata (bool, isteğe bağlı, varsayılan olarak False) — Etkinleştirildiğinde, genellikle state dict'te bulunan LoRA adaptör meta verileri de ayrıca döndürülür.

lora ağırlıkları ve ağ alfa değerleri için durum sözlüğünü döndürür.

> A1111 biçimli LoRA checkpoint'lerini sınırlı bir kapasitede yüklemeyi destekliyoruz. > > Bu işlev deneyseldir ve gelecekte değişebilir.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

SD3LoraLoaderMixin

sınıf diffusers.loaders.SD3LoraLoaderMixin

< >

( )

LoRA katmanlarını SD3Transformer2DModel, CLIPTextModel ve CLIPTextModelWithProjection içine yükleyin.

StableDiffusion3Pipeline'e özgü.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_text_encoder

< >

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

Parametreler

  • state_dict (dict) — lora katman parametrelerini içeren standart bir state dict. unet lora katmanlarından ayırt edebilmek için anahtarın başına ek olarak text_encoder öneki eklenmelidir.
  • network_alphas (dict[str, float]) — Kararlı öğrenme için kullanılan ve taşma (underflow) sorununu önleyen network alfa değeri. Bu değerin anlamı, kohya-ss eğitim betiğindeki --network_alpha seçeneğiyle aynıdır. bu bağlantıya bakın.
  • text_encoder (CLIPTextModel) — LoRA katmanlarının yükleneceği metin kodlayıcı modeli.
  • prefix (str) — state_dict içindeki text_encoder için beklenen önek.
  • lora_scale (float) — Düzenli lora katmanının çıktısıyla toplanmadan önce, lora doğrusal katmanının çıktısının ne kadar ölçeklendirileceğini belirtir.
  • adapter_name (str, isteğe bağlı) — Yüklenen adaptör modeline atıfta bulunmak için kullanılacak adaptör adı. Belirtilmezse, yüklenen adaptörlerin toplam sayısını temsil eden i için default_{i} kullanılır.
  • low_cpu_mem_usage (bool, isteğe bağlı) — Rastgele ağırlıkları başlatmadan yalnızca önceden eğitilmiş LoRA ağırlıklarını yükleyerek model yükleme hızını artırır.
  • hotswap (bool, isteğe bağlı) — Bkz. load_lora_weights().
  • metadata (dict) — İsteğe bağlı LoRA adaptör meta verisi. Sağlandığında, peft'nin LoraConfig argümanları durum sözlüğünden (state dict) türetilmez.

Bu, state_dict içinde belirtilen LoRA katmanlarını text_encoder içine yükleyecektir.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

FluxLoraLoaderMixin

sınıf diffusers.loaders.FluxLoraLoaderMixin

< >

( )

LoRA katmanlarını FluxTransformer2DModel, CLIPTextModel içine yükleyin.

FluxPipeline'ye özgü.

fuse_lora

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

load_lora_into_text_encoder

< >

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

Parametreler

  • state_dict (dict) — lora katman parametrelerini içeren standart bir state dict. unet lora katmanlarından ayırt edebilmek için anahtarın başına ek olarak text_encoder öneki eklenmelidir.
  • network_alphas (dict[str, float]) — Kararlı öğrenme için kullanılan ve taşma (underflow) sorununu önleyen network alfa değeri. Bu değerin anlamı, kohya-ss eğitim betiğindeki --network_alpha seçeneğiyle aynıdır. bu bağlantıya bakın.
  • text_encoder (CLIPTextModel) — LoRA katmanlarının yükleneceği metin kodlayıcı modeli.
  • prefix (str) — state_dict içindeki text_encoder için beklenen önek.
  • lora_scale (float) — Düzenli lora katmanının çıktısıyla toplanmadan önce, lora doğrusal katmanının çıktısının ne kadar ölçeklendirileceğini belirtir.
  • adapter_name (str, isteğe bağlı) — Yüklenen adaptör modeline atıfta bulunmak için kullanılacak adaptör adı. Belirtilmezse, yüklenen adaptörlerin toplam sayısını temsil eden i için default_{i} kullanılır.
  • low_cpu_mem_usage (bool, isteğe bağlı) — Rastgele ağırlıkları başlatmadan yalnızca önceden eğitilmiş LoRA ağırlıklarını yükleyerek model yükleme hızını artırır.
  • hotswap (bool, isteğe bağlı) — Bkz. load_lora_weights().
  • metadata (dict) — İsteğe bağlı LoRA adaptör meta verisi. Sağlandığında, peft'nin LoraConfig argümanları durum sözlüğünden (state dict) türetilmez.

Bu, state_dict içinde belirtilen LoRA katmanlarını text_encoder içine yükleyecektir.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Parametreler

  • save_directory (str veya os.PathLike) — LoRA parametrelerinin kaydedileceği dizin. Var değilse oluşturulur.
  • transformer_lora_layers (dict[str, torch.nn.Module] veya dict[str, torch.Tensor]) — transformer'a karşılık gelen LoRA katmanlarının state dict'i.
  • text_encoder_lora_layers (dict[str, torch.nn.Module] veya dict[str, torch.Tensor]) — text_encoder'a karşılık gelen LoRA katmanlarının state dict'i. 🤗 Transformers'tan geldiği için metin kodlayıcı LoRA state dict'inin açıkça geçirilmesi gerekir.
  • is_main_process (bool, isteğe bağlı, varsayılan True) — Bu fonksiyonu çağıran sürecin ana süreç olup olmadığı. Dağıtık eğitim sırasında ve bu fonksiyonun tüm süreçlerde çağrılması gerektiğinde kullanışlıdır. Bu durumda, yarış durumlarını önlemek için is_main_process=True değerini yalnızca ana süreçte ayarlayın.
  • save_function (Callable) — Durum sözlüğünü kaydetmek için kullanılacak işlev. Dağıtık eğitim sırasında torch.save yerine başka bir yöntem kullanmanız gerektiğinde faydalıdır. DIFFUSERS_SAVE_MODE ortam değişkeni ile yapılandırılabilir.
  • safe_serialization (bool, isteğe bağlı, varsayılan True) — Modelin safetensors ile mi yoksa geleneksel PyTorch yöntemiyle pickle kullanılarak mı kaydedileceğini belirtir.
  • transformer_lora_adapter_metadata — Durum sözlüğüyle birlikte serialize edilecek transformer'a ait LoRA adaptör meta verileri.
  • text_encoder_lora_adapter_metadata — Durum sözlüğüyle birlikte seri hale getirilecek metin kodlayıcıyla ilişkili LoRA adaptör meta verileri.

UNet ve metin kodlayıcıya karşılık gelen LoRA parametrelerini kaydedin.

unfuse_lora

< >

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

Parametreler

  • components (list[str]) — LoRA'nın çıkarılacağı LoRA enjekte edilebilir bileşenlerin listesi.

pipe.fuse_lora() işleminin etkisini geri alır.

unload_lora_weights

< >

( reset_to_overwritten_params = False )

Parametreler

  • reset_to_overwritten_params (bool, varsayılan False) — LoRA yüklenmiş modüllerin orijinal parametrelerine sıfırlanıp sıfırlanmayacağını belirtir. Daha fazla bilgi için Flux belgelerine bakın.

LoRA parametrelerini boşaltır.

Örnekler:

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

Flux2LoraLoaderMixin

sınıf diffusers.loaders.Flux2LoraLoaderMixin

< >

( )

LoRA katmanlarını Flux2Transformer2DModel içine yükleyin. Flux2Pipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

Flux3LoraLoaderMixin

sınıf diffusers.loaders.Flux3LoraLoaderMixin

< >

( )

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

BriaFibo2LoraLoaderMixin

sınıf diffusers.loaders.BriaFibo2LoraLoaderMixin

< >

( )

LoRA katmanlarını BriaFibo2Transformer2DModel içine yükleyin. BriaFibo2Pipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

ErnieImageLoraLoaderMixin

sınıf diffusers.loaders.ErnieImageLoraLoaderMixin

< >

( )

LoRA katmanlarını ErnieImageTransformer2DModel içine yükleyin. ErnieImagePipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

LTX2LoraLoaderMixin

sınıf diffusers.loaders.LTX2LoraLoaderMixin

< >

( )

LoRA katmanlarını LTX2VideoTransformer3DModel içine yükleyin. LTX2Pipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

CogVideoXLoraLoaderMixin

sınıf diffusers.loaders.CogVideoXLoraLoaderMixin

< >

( )

LoRA katmanlarını CogVideoXTransformer3DModel içine yükleyin. CogVideoXPipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

Mochi1LoraLoaderMixin

sınıf diffusers.loaders.Mochi1LoraLoaderMixin

< >

( )

LoRA katmanlarını MochiTransformer3DModel içine yükleyin. MochiPipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

AuraFlowLoraLoaderMixin

sınıf diffusers.loaders.AuraFlowLoraLoaderMixin

< >

( )

LoRA katmanlarını AuraFlowTransformer2DModel içine yükle AuraFlowPipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

LTXVideoLoraLoaderMixin

sınıf diffusers.loaders.LTXVideoLoraLoaderMixin

< >

( )

LoRA katmanlarını LTXVideoTransformer3DModel içine yükleyin. LTXPipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

SanaLoraLoaderMixin

sınıf diffusers.loaders.SanaLoraLoaderMixin

< >

( )

LoRA katmanlarını SanaTransformer2DModel içine yükleyin. SanaPipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

HeliosLoraLoaderMixin

sınıf diffusers.loaders.HeliosLoraLoaderMixin

< >

( )

LoRA katmanlarını HeliosTransformer3DModel içine yükler. HeliosPipeline ve HeliosPyramidPipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

HunyuanVideoLoraLoaderMixin

sınıf diffusers.loaders.HunyuanVideoLoraLoaderMixin

< >

( )

LoRA katmanlarını HunyuanVideoTransformer3DModel içine yükleyin. HunyuanVideoPipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

Lumina2LoraLoaderMixin

sınıf diffusers.loaders.Lumina2LoraLoaderMixin

< >

( )

LoRA katmanlarını Lumina2Transformer2DModel içine yükleyin. Lumina2Pipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

CogView4LoraLoaderMixin

sınıf diffusers.loaders.CogView4LoraLoaderMixin

< >

( )

LoRA katmanlarını WanTransformer3DModel içine yükler. CogView4Pipeline'e özgüdür.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

WanLoraLoaderMixin

sınıf diffusers.loaders.WanLoraLoaderMixin

< >

( )

LoRA katmanlarını WanTransformer3DModel içine yükleyin. WanPipeline ve [WanImageToVideoPipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

SkyReelsV2LoraLoaderMixin

sınıf diffusers.loaders.SkyReelsV2LoraLoaderMixin

< >

( )

LoRA katmanlarını SkyReelsV2Transformer3DModel içine yükleyin.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

AmusedLoraLoaderMixin

sınıf diffusers.loaders.AmusedLoraLoaderMixin

< >

( )

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

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 )

Parametreler

  • save_directory (str veya os.PathLike) — LoRA parametrelerinin kaydedileceği dizin. Var değilse oluşturulur.
  • unet_lora_layers (dict[str, torch.nn.Module] veya dict[str, torch.Tensor]) — unet ile eşleşen LoRA katmanlarının state dict'i.
  • text_encoder_lora_layers (dict[str, torch.nn.Module] veya dict[str, torch.Tensor]) — text_encoder'a karşılık gelen LoRA katmanlarının state dict'i. 🤗 Transformers'tan geldiği için metin kodlayıcı LoRA state dict'inin açıkça geçirilmesi gerekir.
  • is_main_process (bool, isteğe bağlı, varsayılan True) — Bu fonksiyonu çağıran sürecin ana süreç olup olmadığı. Dağıtık eğitim sırasında ve bu fonksiyonun tüm süreçlerde çağrılması gerektiğinde kullanışlıdır. Bu durumda, yarış durumlarını önlemek için is_main_process=True değerini yalnızca ana süreçte ayarlayın.
  • save_function (Callable) — Durum sözlüğünü kaydetmek için kullanılacak işlev. Dağıtık eğitim sırasında torch.save yerine başka bir yöntem kullanmanız gerektiğinde faydalıdır. DIFFUSERS_SAVE_MODE ortam değişkeni ile yapılandırılabilir.
  • safe_serialization (bool, isteğe bağlı, varsayılan True) — Modelin safetensors ile mi yoksa geleneksel PyTorch yöntemiyle pickle kullanılarak mı kaydedileceğini belirtir.

UNet ve metin kodlayıcıya karşılık gelen LoRA parametrelerini kaydedin.

AnimaLoraLoaderMixin

sınıf diffusers.loaders.AnimaLoraLoaderMixin

< >

( )

LoRA katmanlarını CosmosTransformer3DModel ve AnimaTextConditioner içine yükleyin.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

AceStepLoraLoaderMixin

sınıf diffusers.loaders.AceStepLoraLoaderMixin

< >

( )

LoRA katmanlarını AceStepTransformer1DModel içine yükleyin. AceStepPipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

HiDreamImageLoraLoaderMixin

sınıf diffusers.loaders.HiDreamImageLoraLoaderMixin

< >

( )

LoRA katmanlarını HiDreamImageTransformer2DModel içine yükleyin. HiDreamImagePipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

QwenImageLoraLoaderMixin

sınıf diffusers.loaders.QwenImageLoraLoaderMixin

< >

( )

LoRA katmanlarını QwenImageTransformer2DModel içine yükleyin. QwenImagePipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

ZImageLoraLoaderMixin

sınıf diffusers.loaders.ZImageLoraLoaderMixin

< >

( )

LoRA katmanlarını ZImageTransformer2DModel içine yükleyin. ZImagePipeline'e özgüdür.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

CosmosLoraLoaderMixin

sınıf diffusers.loaders.CosmosLoraLoaderMixin

< >

( )

LoRA katmanlarını CosmosTransformer3DModel içine yükleyin, Cosmos2_5_PredictBasePipeline için özelleştirilmiş.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

KandinskyLoraLoaderMixin

sınıf diffusers.loaders.KandinskyLoraLoaderMixin

< >

( )

LoRA katmanlarını Kandinsky5Transformer3DModel içine yükleyin,

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

Ideogram4LoraLoaderMixin

sınıf diffusers.loaders.Ideogram4LoraLoaderMixin

< >

( )

LoRA katmanlarını Ideogram4Transformer2DModel içine yükleyin. Ideogram4Pipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

Krea2LoraLoaderMixin

sınıf diffusers.loaders.Krea2LoraLoaderMixin

< >

( )

LoRA katmanlarını Krea2Transformer2DModel içine yükleyin. Krea2Pipeline için özeldir.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_weights

< >

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

Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

Daha fazla bilgi için save_lora_weights() bölümüne bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

MiniMaxH3LoraLoaderMixin

sınıf diffusers.loaders.MiniMaxH3LoraLoaderMixin

< >

( )

LoRA katmanlarını MiniMaxH3Transformer3DModel içine yükleyin. MiniMaxH3ModularPipeline için özeldir.

MiniMax-H3, aynı modül adlarına sahip iki bağımsız DiT bölümüyle birlikte gelir (biri için yüklenen bir LoRA diğerine yüklenir ve çıktıyı bozar), bu nedenle yönlendirme açıktır: dönüştürülen state dict'ler transformer. hedefini alır; transformer_ref'e, transformer_ref. önekli bir dosya veya load_into_transformer_ref=True ile erişilir.

DiffSynth-Studio LoRA'ları (ör. DiffSynth-Studio/MiniMax-H3-LoRA-LineartAnime) ham checkpoint'in baş başa iç içe geçmiş (per-head-interleaved) füzyonlu QKV'sine karşı eğitilir ve dönüştürme sırasında iç içe geçme kaldırılır. fp32 katsayıları, füzyon yapılmamış LoRA yolunun fp32'de hesaplamasını sağlar; yükleme sonrası modele .to(torch.bfloat16) uygulanması bf16 bellek bütçesini geri getirir.

Budaklanmış bir kontrol noktasına karşı eğitilen LoRA'lar (Comfy-Org/MiniMax-H3 içindeki *_pruned_* dosyaları; joyfox/MiniMax-H3-Turbo bunlardan biridir) boyut uyumsuzluğu hatasıyla başarısız olur. Alpha içermeyen dosyalar alpha == rank olarak yüklenir (ölçek 1.0, örneğin larryvrh/MiniMax-H3-Turbo-Lora tarafından belirtilen sözleşme); mevcut olduğunda __metadata__ içindeki alpha girdisi (ör. lightx2v/Minimax-h3-Turbo'nin 8 adımlık dosyası) yerine geçer.

fuse_lora

< >

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

Daha fazla ayrıntı için fuse_lora() bölümüne bakın.

load_lora_into_transformer

< >

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

Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

load_lora_into_transformer_ref

< >

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

LoRA katmanlarını transformer_ref bölümüne yükleyin. prefix, anahtarların taşıdığı bileşen adını belirtir; bölümü adlandıran bir dosya için bu değer transformer_ref, load_into_transformer_ref=True ile buraya yönlendirilen bir dosya için ise transformer olur. Daha fazla ayrıntı için load_lora_into_unet() işlevine bakın.

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 )

Parametreler

  • load_into_transformer_ref (bool, varsayılan False) — transformer. önekli katmanları transformer yerine, ref2va iş akışının gürültüden arındırdığı transformer_ref bölümüne yükler. Yalnızca her iki bölümün de yüklendiği durumlarda gereklidir: yalnızca transformer_ref tutan bir pipeline, bu yönlendirmeyi kendi başına yapar.

LoRA katmanlarını transformer içine veya load_into_transformer_ref=True ile transformer_ref içine yükleyin. Daha fazla ayrıntı için load_lora_weights() bölümüne bakın.

lora_state_dict

< >

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

Daha fazla ayrıntı için lora_state_dict() bölümüne bakın.

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 )

MiniMax-H3 bölümlerinden birinin veya her ikisinin de LoRA katmanlarını kaydedin. Bir LoRA'nın hangi bölüme ait olduğu, anahtarlarından geri kazanılamadığı için, bunu kaydeden bir H3 LoRA yayınlamanın tek yolu budur. Daha fazla bilgi için save_lora_weights() işlevine bakın.

unfuse_lora

< >

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

Daha fazla ayrıntı için unfuse_lora() bölümüne bakın.

PikaH3FlexLoraLoaderMixin

sınıf diffusers.loaders.PikaH3FlexLoraLoaderMixin

< >

( )

LoRA katmanlarını MiniMaxH3Transformer3DModel içine yükleyin. PikaH3FlexModularPipeline için özeldir.

Pika H3 Flex sürümü iki MiniMax-H3 dönüştürücü bölmesi üzerinde rank-128 adaptör çiftidir ve diffusers modül adlarının düz PEFT dökümleri olarak yayımlanmıştır (transformer için fl2va/adapter.safetensors, transformer_ref için ref2va/adapter.safetensors). Alpha içermeyen dosyalar alpha == rank (ölçek 1.0) değerinde yüklenir; bu, adaptörlerin kendi sözleşmesidir. Yükleme, yönlendirme ve kaydetme işlemleri MiniMaxH3LoraLoaderMixin’inkidir: fl2va adaptörü transformer içine, ref2va adaptörü ise transformer_ref içine yerleştirilir — pipeline yalnızca bu bölmeyi tutuyorsa (workflow="ref2va") tek başına, her ikisini de tutuyorsa load_into_transformer_ref=True ile.

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

LoraBaseMixin

sınıf diffusers.loaders.lora_base.LoraBaseMixin

< >

( )

LoRA'ları işlemek için yardımcı sınıf.

delete_adapters

< >

( adapter_names: list[str] | str )

Parametreler

  • adapter_names (list[str, str]) — Silinecek adaptörlerin adları.

Hattın (pipeline) içindeki bir adaptörün LoRA katmanlarını silin.

Örnek:

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

< >

( )

Hattın (pipeline) etkin LoRA katmanlarını devre dışı bırakır.

Örnek:

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

< >

( )

Hattın (pipeline) etkin LoRA katmanlarını etkinleştirir.

Örnek:

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 )

Parametreler

  • target_rank (int) — Yüklenecek tüm adaptörler arasındaki en yüksek rank.
  • check_compiled (str, isteğe bağlı, varsayılan olarak "error") — Zaten derlenmiş bir modelin nasıl ele alınacağı. Kontrol aşağıdaki mesajları döndürebilir:
    • “error” (varsayılan): bir hata fırlat
    • “warn”: bir uyarı yayınla
    • “ignore”: hiçbir şey yapma

Bir modelin yeniden derlenmesini tetiklemeden veya yüklenen adaptörlerin dereceleri farklıysa adaptörleri sıcak değiştirin.

fuse_lora

< >

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

Parametreler

  • components — (list[str]): LoRA'ların birleştirileceği, LoRA enjekte edilebilir bileşenlerin listesi.
  • lora_scale (float, varsayılan 1.0) — LoRA parametrelerinin çıktıları ne ölçüde etkileyeceğini kontrol eder.
  • safe_fusing (bool, varsayılan False) — Birleştirme işleminden önce birleştirilmiş ağırlıklarda NaN değerleri olup olmadığını kontrol edip, değerler NaN ise birleştirilmemelerini sağlar.
  • adapter_names (list[str], isteğe bağlı) — Birleştirme için kullanılacak adaptör adları. Hiçbiri geçirilmezse, tüm etkin adaptörler birleştirilir.

LoRA parametrelerini, ilgili blokların orijinal parametreleriyle birleştirir.

Örnek:

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

< >

( )

Mevcut etkin adaptörlerin listesini alır.

Örnek:

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

< >

( )

Hattın mevcut tüm kullanılabilir adaptörlerinin listesini alır.

set_adapters

< >

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

Parametreler

  • adapter_names (list[str] veya str) — Kullanılacak adaptörlerin adları.
  • adapter_weights (float, dict veya list, isteğe bağlı) — Adaptörler için ağırlıklar. Bir skaler, tüm LoRA uyumlu bileşenleri ölçekler. Bir sözlük, bileşen adlarını (ör. "unet", "transformer" veya "text_encoder") ağırlıklara eşler; bir UNet bileşeninin ağırlığı, blok ölçeklerinin iç içe geçmiş bir sözlüğü de olabilir. Tek bir skaler veya sözlük, her bir adaptöre uygulanır. Bir liste, adapter_names sırasına göre her adaptör için bir skaler, sözlük veya None içermelidir. None, liste girdileri ve bileşen ağırlıkları dahil olmak üzere 1.0 varsayılanına sahiptir. Belirtilmeyen bileşenler ve UNet blokları da 1.0 varsayılanına sahiptir.

Hattın kullanımında aktif olarak kullanılacak adaptörleri ayarlayın.

Örnek:

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 )

Parametreler

  • adapter_names (list[str]) — cihaza gönderilecek adaptörlerin listesi.
  • device (torch.device | str | int) — Adaptörlerin gönderileceği cihaz. Bir torch cihazı, str veya tamsayı olabilir.

adapter_names içinde listelenen LoRA'ları hedef bir cihaza taşır. Birden fazla adaptör yüklemek ve GPU belleğinden yer açmak istediğinizde LoRA'yı CPU'ya taşımak için kullanışlıdır.

LoRA adaptörleri CPU'ya aktardıktan sonra, modelin geri kalanı GPU'da kaldığı sürece, LoRA adaptörleri artık çıkarım için kullanılamaz; çünkü bu bir cihaz uyumsuzluğuna neden olur. Bu LoRA adaptörlerini çıkarım için kullanmadan önce cihazı tekrar GPU'ya ayarlamayı unutmayın.

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

Parametreler

  • components (list[str]) — LoRA'nın çıkarılacağı LoRA enjekte edilebilir bileşenlerin listesi.
  • unfuse_unet (bool, varsayılan True) — UNet LoRA parametrelerinin ayrıştırılıp ayrıştırılmayacağı.
  • unfuse_text_encoder (bool, varsayılan True) — Metin kodlayıcı LoRA parametrelerinin ayrıştırılıp ayrıştırılmayacağı. Metin kodlayıcı LoRA parametreleriyle yamalanmadıysa, bu parametrenin bir etkisi olmaz.

pipe.fuse_lora() işleminin etkisini geri alır.

unload_lora_weights

< >

( )

LoRA parametrelerini boşaltır.

Örnekler:

>>> # 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 katmanlarının durum sözlüğünü (isteğe bağlı olarak metadata ile birlikte) diske yazar.

Update on GitHub