LoRA (Low-Rank Adaptation)
LoRA (Low-Rank Adaptation) je technika, ako doladiť veľký model na konkrétnu úlohu tak, že necháš pôvodné váhy „zamrznuté“ a učíš len malé doplnkové vrstvy — výsledkom je lacnejší a praktickejší fine-tuning.
1. Čo to je (definícia + analógia)
Jadro: namiesto úpravy miliónov/miliárd parametrov trénuješ malé „adaptéry“, ktoré modelu jemne zmenia správanie.
Analógia s okuliarmi: oči (základný model) necháš rovnaké, ale pridáš šošovky (LoRA), ktoré zmenia, ako vidíš detail pre konkrétnu situáciu.
Prečo low-rank: zmena správania sa dá často vystihnúť „menšou“ úpravou než plnou maticou váh.
Kde sa s tým stretneš: pri prispôsobovaní open-source modelov alebo pri generovaní obrázkov/štýlov, kde sa LoRA používa ako „balíček štýlu“.
2. Ako to funguje
Zmrazenie základného modelu: pôvodné váhy sa nemenia, čo znižuje riziko, že „rozbiješ“ všeobecné schopnosti.
Pridanie adaptérov: do vybraných vrstiev sa vložia malé trénovateľné matrice.
Tréning len adaptérov: učíš menej parametrov, takže:
Rýchlejšie trénuješ,
potrebuješ menej pamäte,
vieš spraviť viac variantov.
Použitie v inferencii: LoRA môže byť:
Pripojená dynamicky (zapnúť/vypnúť podľa potreby),
alebo zliata do váh (podľa implementácie a použitia).
Praktický detail: kvalita závisí od toho, kam adaptér vložíš a akú „kapacitu“ (rank) mu dáš.
3. Prečo je to dôležité / kde sa to používa
Personalizácia bez obrovských nákladov: firmy aj jednotlivci vedia mať vlastné verzie modelu pre:
špecifický štýl komunikácie (support, interné odpovede),
doménu (práca s internými dokumentmi, technická terminológia),
formát (šablóny, JSON výstupy, konzistentné štruktúry).
Ekosystém „malých doplnkov“: namiesto jedného monolitického modelu vzniká knižnica LoRA modulov:
- rôzne štýly, rôzne úlohy, rôzne jazyky.
Experimentovanie: vieš rýchlo porovnať, ktorý adaptér funguje lepšie, bez pretrénovania všetkého.
4. Výhody a obmedzenia
| Prístup | Výhoda | Kedy zlyháva |
|---|---|---|
| LoRA | Lacný fine-tuning, malé súbory, rýchle iterácie | Keď potrebuješ hlbokú zmenu správania naprieč celým modelom |
| Plný fine-tuning | Maximálna flexibilita | Drahý, riziko „zabudnutia“ (catastrophic forgetting) |
| Len promptovanie | Nula tréningu, rýchle nasadenie | Keď chceš stabilný štýl a prompt je príliš krehký |
Obmedzená kapacita: malý adaptér nemusí stačiť na komplexnú doménu.
Konflikty medzi adaptérmi: viac LoRA naraz môže viesť k nečakanému miešaniu štýlov.
Kvalita dát: LoRA ti neodpustí zlé príklady — ak trénuješ na chaotických dátach, dostaneš chaotické správanie.
5. Praktické použitie
Pre bežného používateľa: ak používaš nástroje, ktoré ponúkajú „štýlové balíčky“ alebo doménové doplnky, často ide práve o LoRA alebo podobný adaptér.
Pre tím, ktorý chce vlastný štýl: LoRA je dobrá voľba, keď chceš:
konzistentný tón (napr. stručné odpovede, vždy s bodmi),
dodržiavanie formátu (napr. JSON štruktúry),
doménové frázy (produktové názvy, interné skratky).
Tipy, ktoré šetria nervy:
Verzionovanie: označ si, na akých dátach a s akými nastaveniami LoRA vznikla.
Test set: maj sadu 30–100 otázok, na ktorých vždy porovnáš starú a novú verziu.
Jasné ciele: trénuj na jednu vec (štýl, doména, formát) — miešanie cieľov bez kontroly sa rýchlo pokazí.
Kedy to nepoužiť: ak je problém skôr v chýbajúcich informáciách než v správaní, často viac pomôže RAG (pripojenie znalostí) než LoRA.
Zhrnutie
LoRA umožní doladiť model tým, že trénuješ malé adaptéry namiesto celých váh.
Výhoda je nízka cena, rýchlosť a modularita — vieš mať viac špecializovaných variantov.
Limity sú kapacita adaptéra, možné konflikty a veľká závislosť od kvality tréningových dát.
V praxi je to ideálne na štýl, formát a doménové doladenie bez extrémnych nákladov.
Čo robí: Namiesto úprav všetkých váh modelu pridá malé trénovateľné „adaptéry“ (nízko-rankové matice) do vybraných vrstiev. Trénuješ iba tieto malé prídavné parametre.
Prečo „low-rank“: Zmena váh sa aproximuje ako súčin dvoch menších matíc (rank r), takže počet trénovaných parametrov je výrazne menší.
Výhody:
lacnejšie a rýchlejšie trénovanie (menej VRAM, menej času),
vieš mať viac rôznych LoRA pre jeden základný model (štýl, doména, persona…) a len ich prepínať,
základný model ostáva nezmenený (dobré na správu verzií).
Nevýhody / limity:
ak chceš veľkú „zmenu správania“ alebo nové schopnosti, LoRA nemusí stačiť (závisí od dát a ranku),
pri zlom datasete vie LoRA ľahko „prestreliť“ (overfit, nežiaduce stereotypy/artefakty).
Kde sa používa:
LLM: doménové doladenie (napr. právo, medicína), firemný štýl odpovedí, špecifické úlohy,
Stable Diffusion a pod.: štýly, postavy, produkty, vizuálne „módy“.
Ako sa nasadzuje v praxi: máš base model + LoRA checkpoint (malý súbor). Pri inferencii sa LoRA „primieša“ do vrstiev s nastaviteľnou silou (weight/alpha).