LoRA: Prečo sa oplatí dolaďovať AI modely lacnejšie a rýchlejšie

LoRA: Prečo sa oplatí dolaďovať AI modely lacnejšie a rýchlejšie

Máte k dispozícii najmodernejší jazykový model, ktorý vie napísať esej, odborný článok aj marketingový text.

No keď mu dáte napísať text v štýle vašej značky — s presnými frázami, ktoré používate v kampaniach — výsledok je generický a nepresvedčivý. Plné doladenie (fine-tuning) celého modelu by stálo tisíce eur a vyžadovalo výkonný server. Tu prichádza na scénu LoRA (Low-Rank Adaptation) — technika, ktorá vám umožní prispôsobiť správanie AI modelu za zlomok času a peňazí.

Čo je LoRA a ako funguje

LoRA je technika efektívneho doladenia (parameter-efficient fine-tuning), ktorá namiesto úpravy všetkých váh pôvodného modelu pridáva do jeho vrstiev malé, ľahko trénovateľné adaptéry. Predstavte si, že máte obrovskú knižnicu (pôvodný model) s miliónmi kníh. Namiesto prepisovania každej knihy (doladenie celého modelu) si vytvoríte malú poznámku (LoRA adaptér), ktorá hovorí: „Keď čitateľ hľadá odpoveď na otázku o marketingu, použi tieto tri konkrétne knihy a ignoruj ostatné.“ Táto poznámka je stokrát menšia ako celá knižnica, no výrazne mení výsledok.

Technicky: LoRA vkladá do vrstiev neurónovej siete dve malé matice (A a B), ktoré sa učia nové vzťahy. Počet trénovateľných parametrov klesne z miliárd na niekoľko miliónov. Výsledný model zaberá namiesto stoviek gigabajtov len pár megabajtov.

Prečo to vzniklo — problém nákladov

Doladenie veľkého jazykového modelu (LLM) ako GPT-3 (175 miliárd parametrov) by na jednom GPU trvalo niekoľko týždňov a stálo by tisíce eur za výpočtový čas. Bežná firma si to nemôže dovoliť. LoRA znižuje náklady na tréning o 90 – 95 % a čas na niekoľko hodín. Napríklad doladenie modelu Llama 2 7B (7 miliárd parametrov) pomocou LoRA stojí na cloudovom GPU približne 15 – 30 € oproti 200 – 500 € za plné doladenie.

Konkrétny príklad z praxe

Firma prevádzkujúca e-shop s oblečením chce, aby jej chatbot odpovedal v štýle značky — používal frázy ako „štýlový kúsok do šatníka“ a vyhýbal sa technickým popisom. Namiesto trénovania celého modelu (ktorý by si museli prenajať na týždeň) vytvorí LoRA adaptér na základe 50 vzorových konverzácií. Tréning trvá 2 hodiny na jednom GPU a stojí 20 €. Výsledný adaptér (veľkosť 5 MB) nahrajú do API a chatbot začne odpovedať presne v štýle značky. Ak chcú zmeniť štýl na jar, vytvoria nový adaptér za ďalších 20 €. Bez LoRA by každá zmena stála stovky eur.

Časté omyly a na čo si dať pozor

1. LoRA nie je zázrak pre všetky úlohy. Ak potrebujete, aby model ovládal úplne novú doménu (napr. medicínsku terminológiu, ktorú vôbec nepozná), LoRA nemusí stačiť — vtedy je lepšie doladenie celého modelu alebo tréning od začiatku.

2. Kvalita závisí od vstupných dát. LoRA sa učí len z toho, čo jej dáte. Ak jej poskytnete 10 príkladov, výsledok bude slabý. Odborníci odporúčajú aspoň 100 – 500 kvalitných príkladov pre viditeľné zlepšenie.

3. Riziko preučenia (overfitting). Keďže LoRA má málo parametrov, ľahšie sa prispôsobí tréningovým dátam, no horšie zovšeobecňuje na nové situácie. Riešením je použiť regularizáciu a dostatočne veľkú a rôznorodú vzorku.

4. Nie je kompatibilná so všetkými modelmi. Väčšina moderných open-source modelov (Llama, Mistral, Falcon) LoRA podporuje, no niektoré proprietárne API (napr. GPT-4) ju neponúkajú — tam musíte použiť iné metódy (napr. prompt engineering alebo Retrieval-Augmented Generation).

Porovnanie s alternatívami

Technika Náklady (tréning) Veľkosť adaptéra Rýchlosť inferencie Kedy použiť
Plné doladenie 1 000 – 5 000 € 100 GB+ Rovnaká Nová doména, veľa dát
LoRA 10 – 100 € 5 – 50 MB Rovnaká Jemné doladenie, málo dát
Prompt engineering 0 € 0 MB Rovnaká Rýchle riešenie, malé zmeny
RAG 0 € (iba indexácia) 0 MB Pomalšia (vyhľadávanie) Potreba aktuálnych informácií

Verdikt: Ak potrebujete model prispôsobiť konkrétnemu štýlu, odbornému jazyku alebo firemnej terminológii a máte k dispozícii aspoň 100 príkladov, LoRA je najefektívnejšia voľba. Pri veľmi špecializovaných úlohách (napr. lekárske diagnózy) zvážte plné doladenie.

Súvisiace pojmy

  • Fine-tuning (doladenie) — proces úpravy už natrénovaného modelu na špecifickú úlohu
  • RAG (Retrieval-Augmented Generation) — technika dopĺňania odpovedí vyhľadávaním v externých zdrojoch
  • QLoRA — vylepšená verzia LoRA, ktorá funguje aj na 4-bitovo kvantovaných modeloch (ešte nižšia spotreba pamäte)
  • Adapter — všeobecný názov pre malé trénovateľné vrstvy vložené do veľkého modelu

Podrobnejšie články a návody nájdete na ai.ezin.sk.