Co je LoRA v AI?
LoRA znamená Low-Rank Adaptation. Jde o parametricky efektivní metodu dolaďování, která ponechává původní váhy předtrénovaného modelu zmrazené a učí mnohem menší nízkorozměrné matice pro vybrané vrstvy. Tyto naučené aktualizace lze uložit jako adaptér a později aplikovat na kompatibilní základní model.

Tato stránka se zabývá adaptací modelů AI. LoRa s malým písmenem „a“ také označuje rádiovou technologii s dlouhým dosahem. S adaptéry LoRA pro jazykové modely nebo modely generování obrazu nesouvisí.
Základní myšlenka bez algebraické mlhy
Běžné úplné doladění může aktualizovat mnoho nebo všechny parametry modelu. LoRA předpokládá, že užitečnou změnu pro konkrétní úlohu lze často vyjádřit s mnohem méně stupni volnosti. Namísto učení úplné matice aktualizace vyjadřuje aktualizaci jako součin dvou užších matic s rankem r.
Efektivní váha kombinuje zmrazenou základní váhu se škálovanou nízkorozměrnou aktualizací:
W′ = W + (B × A) · scale
Je-li zvolený rank mnohem menší než původní rozměry, obsahují matice A a B podstatně méně trénovatelných parametrů než úplná aktualizace. To snižuje nároky trénování na paměť a vytváří kompaktní artefakt adaptéru. Většinu práce stále vykonává základní model.
Model LoRA, adaptér LoRA a váhy LoRA
Lidé tyto výrazy používají volně, proto je užitečné je oddělit:
- Metoda LoRA: technika nízkorozměrné adaptace používaná během dolaďování.
- Adaptér LoRA: naučená aktualizace a konfigurace potřebná k její aplikaci na kompatibilní základ.
- Váhy LoRA: trénovatelné hodnoty tenzorů v tomto adaptéru.
- „Model LoRA“: běžná zkratka pro adaptér nebo kombinaci základu s adaptérem. Je nejednoznačná; zjistěte, který artefakt je skutečně přítomen.
Stažený soubor LoRA obvykle neobsahuje celý základní model. Proto vás uživatelské rozhraní žádá, abyste vybrali checkpoint a poté aplikovali jednu či více LoRAs.
Co se může LoRA naučit?
V jazykových modelech může adaptér specializovat chování pro doménu, úlohu nebo styl pokynů. V difuzních modelech se LoRAs běžně používají pro vizuální styly, postavy, subjekty, produkty, koncepty nebo menší úpravy chování. Co adaptér dokáže vyjádřit, určují cílové moduly, rank, dataset a trénovací postup.
LoRA nezaručuje kvalitu ani věrnost. Kompaktní adaptér se může přeučit, být v konfliktu se svým základem, reagovat nepředvídatelně při různých silách nebo záviset na spouštěcích tokenech a volbách předzpracování. Kartu modelu a kontext trénování považujte za provozní metadata, nikoli za ozdobu.
Jak se adaptér používá při inferenci
Kompatibilní framework načte základ, přečte konfiguraci adaptéru a aplikuje jeho tenzory na cílové moduly. Některá běhová prostředí ponechávají aktualizaci oddělenou, takže ji lze povolit, vážit nebo odebrat z paměti. Jiná ji mohou sloučit do odvozené kopie pro nasazení.
Sloučení není totéž jako vytvoření samostatného původního adaptéru. Chcete-li upravovat sílu, kombinovat adaptéry nebo reprodukovat výstupní soubor, zachovejte nesloučený adaptér, přesný základ a postup. Průvodce checkpointem a LoRA mapuje tyto rozdíly obnovy.
LoRA, QLoRA a úplné dolaďování
LoRA popisuje nízkorozměrnou aktualizaci. QLoRA kombinuje trénování LoRA s kvantovaným zmrazeným základem a dalšími technikami úspory paměti. Konečným výsledkem může být stále adaptér, a proto samotný název souboru nemusí odhalit, jak byl vytrénován. Srovnání metod najdete v článku LoRA a QLoRA.
Úplné dolaďování aktualizuje mnohem větší část modelu a může nabídnout jinou kapacitu a provozní kompromisy, vytváří však větší stav a má vyšší nároky na prostředky. Správná volba závisí na úloze, hardwaru, hodnocení a nasazení — nikoli na předpokladu, že jedna metoda je vždy „profesionálnější“.
Důvody růstu knihoven LoRA
Jeden adaptér je ve srovnání se svým základem kompaktní, sbírky však rostou kvůli variantám, rankům, epochám, sílám, duplicitním stažením a několika kompatibilním rodinám základů. Základní checkpointy, VAEs, enkodéry, náhledy a trénovací výstupy často převyšují kterýkoli jednotlivý adaptér. Složka plná malých souborů proto může záviset na mnohem rozsáhlejším souboru modelů.
Pomocí návodu uspořádejte jeden základní model s mnoha adaptéry a praktického postupu uvolněte místo pro LoRA bez změny vah. Cílem je ucelená rodina, kterou dokážete obnovit, nikoli co nejmenší adresář za každou cenu.
Co by se mělo archivovat s LoRA?
Minimálně zachovejte váhy adaptéru, jeho konfiguraci a přesný identifikátor základního modelu. Pokud je základ soukromý, místně upravený nebo pravděpodobně zmizí, zachovejte také tento přesný základ. Kvůli reprodukovatelnosti uchovejte relevantní spouštěcí tokeny, trénovací konfiguraci, odkaz na dataset, licenci nebo podmínky použití a kontrolní součty.
Tensor Archive uchovává vybrané místní rodiny tenzorů a ověřuje přesnou obnovu. Nevytváří znovu chybějící základ, nevymýšlí metadata adaptéru ani nedokazuje kompatibilitu dvou podobně pojmenovaných architektur.
Zdroje
- LoRA: Low-Rank Adaptation of Large Language Models — původní článek definující zmrazené předtrénované váhy a trénovatelný nízkorozměrný rozklad.
- Hugging Face PEFT: LoRA — aktuální pojmy konfigurace, ranku, škálování a cílových modulů.
- Formát checkpointu Hugging Face PEFT — co checkpointy adaptéru ukládají a jak odkazují na základní model.
- Diffusers: načítání adaptérů — aplikování, vážení, odebírání z paměti a slučování adaptérů LoRA.