Strona główna / Rozdział 2 · Skąd model wie to, co wie
    Ostatnia zmiana · 8 min czytania

    Użyj z AI

    Fine-tuning i LoRA

    Fine-tuning to dalszy trening gotowego modelu na twoich przykładach: dobrze zmienia to, jak model odpowiada, a słabo to, co wie. LoRA robi to tanio, bo zamraża model i trenuje małą poprawkę, często poniżej 1% wag.

    Po ludzkuFine-tuning to szkolenie stanowiskowe doświadczonego pracownika. Po nim pisze w firmowym formacie i tonie, ale cennika na pamięć nie wykuje, od tego jest segregator na biurku, czyli RAG. LoRA to poprawki na przezroczystej folii nałożonej na podręcznik: oryginał zostaje nietknięty, a folię można zdjąć albo podmienić na inną.

    Wybierz problem i zobacz, od którego szczebla zacząć

    Co fine-tuning zmienia, a czego nie

    Rodzaje fine-tuningu i gdzie trenować

    Jak działa LoRA

    Zmień rank i klasę modelu. Zobacz, ile wag trenuje LoRA i ile pamięci GPU potrzeba

    wag, które zmienia pełny fine-tuning

    Pamięć GPU na wagi i stan optymalizatora:

    Liczby poglądowe. Architektura jak Llama 3.1 8B i 70B, LoRA na wszystkich siedmiu macierzach liniowych w każdej warstwie (Q, K, V, O i trzy w MLP). Pamięć według reguły kciuka: pełny fine-tuning z Adamem w mieszanej precyzji to ok. 16 bajtów na parametr (wagi i gradienty w BF16, kopia wag w FP32, dwa momenty Adama), LoRA to 2 bajty na zamrożoną wagę w BF16, QLoRA ok. 0,5 bajta (4 bity), plus 16 bajtów na każdy parametr adaptera. Aktywacje doliczasz osobno: rosną z długością sekwencji i batchem. Karty dobrane z zapasem 20% na aktywacje.

    Dane, ewaluacja, utrzymanie

    Sprawdź się

    Kiedy użyjesz fine-tuningu zamiast promptu albo RAG i jak działa LoRA?

    Kolejność: prompt i kontekst, dla wiedzy RAG, fine-tuning na końcu. Fine-tuning dobrze uczy zachowania (formatu, tonu, wąskiego zadania) i potrafi przenieść zachowanie dużego modelu do małego. Faktów uczy słabo: wchodzą niepewnie, bez źródła, każda zmiana to nowy trening, a do tego mogą nasilić halucynacje. LoRA zamraża wagi i uczy poprawki ΔW = B·A o niskim ranku r, czyli r·(d + k) parametrów zamiast d·k. Adapter waży dziesiątki MB, więc na jednej bazie serwuje się wiele adapterów. QLoRA robi to samo na bazie w 4 bitach.

    In English

    Order: prompt and context first, RAG for knowledge, fine-tuning last. Fine-tuning is good at behaviour: format, tone, a narrow task, or distilling a large model’s behaviour into a small one. It is poor at facts: they go in unreliably, without a source, every change means retraining, and they can increase confident errors. LoRA freezes the weights and learns a low-rank update ΔW = B·A of rank r, so it trains r·(d + k) parameters instead of d·k. An adapter is tens of MB, so many adapters can be served on one base. QLoRA does the same on a 4-bit base.

    Pytania pogłębiające (5)
    Masz 50 tys. firmowych dokumentów, które zmieniają się co tydzień. Fine-tuning czy RAG?
    RAG. Fakty z fine-tuningu wchodzą niepewnie, nie mają źródła, a każda zmiana wymaga nowego treningu. Fine-tuning może dojść później, żeby nauczyć model formatu odpowiedzi i cytowania fragmentów, ale wiedza zostaje w indeksie.
    Jak dobierasz rank LoRA i warstwy, do których ją dodajesz?
    Wszystkie macierze liniowe, łącznie z MLP, bo LoRA tylko w attention wyraźnie odstaje. Rank to pojemność adaptera: na małych i średnich zbiorach niski wystarcza, w RL nawet r = 1, a przy dużych zbiorach LoRA zaczyna przegrywać z pełnym fine-tuningiem. Learning rate ok. 10 razy wyższy niż przy pełnym fine-tuningu, a kilka ranków porównuje się na ewaluacji.
    Masz 200 klientów i każdy chce model w swoim stylu. Jak to serwujesz?
    Jedna baza i adapter LoRA na klienta, bez scalania. vLLM wybiera adapter dla każdego requestu, trzyma kilka aktywnych adapterów w jednym batchu obok jednej kopii bazy i ładuje kolejne w locie. Cena to trochę dodatkowego liczenia w każdym kroku zamiast 200 pełnych kopii modelu.
    Po fine-tuningu format jest idealny, ale model gorzej radzi sobie poza zadaniem i łatwiej go namówić na rzeczy, których wcześniej odmawiał. Co się stało?
    Katastrofalne zapominanie i osłabione zabezpieczenia: trening przesunął wagi tylko w stronę twoich przykładów. Pomaga mniej epok, niższy learning rate albo LoRA zamiast pełnego fine-tuningu, przykłady ogólne i odmowy w danych, a w ewaluacji zestaw spoza zadania i testy bezpieczeństwa.
    Dostawca wycofuje model bazowy, na którym stoi twój fine-tuning. Co robisz?
    Najpierw sprawdź, czy nowa baza z samym promptem nie przechodzi już ewaluacji, bo wtedy fine-tuning przestaje być potrzebny. Jeśli nie, trenujesz od nowa na nowej bazie tym samym pipeline’em. Dane, konfiguracja i zestaw ewaluacyjny są wersjonowane, więc to jedno uruchomienie.

    Źródła

    Zgłoś błąd · Zaproponuj poprawkę