Firma nasadí RAG nad internou dokumentáciou, výsledky sú primerané, ale model stále robí podivné chyby — nerozumie skratkám, mieša si pojmy z oboru, pri formuláciách odpovedí sa správa genericky. Tím skúsi SFT (supervised fine-tuning) na niekoľkých stovkách príkladov. Zlepšenie je, ale prehĺbená doménová znalosť stále chýba. Niekto navrhne: "Čo keby sme model doučili na celej firemnej dokumentácii? Všetkých tých 800 PDF?"
To je presne situácia, kde prichádza na rad continued pretraining — metóda, ktorá stojí medzi trénovaním modelu od nuly a klasickým doménovým fine-tuningom. Je mocnejšia, drahšia a menej prebádaná ako SFT. A práve preto sa ju oplatí pochopiť skôr, ako ju nasadíte alebo zamietnete.
Čo je continued pretraining a čo nie je
Continued pretraining (niekedy nazývaný aj domain-adaptive pretraining, DAPT, alebo second-stage pretraining) je proces, kde vezmete hotový pretrained model a naďalej ho trénujete štýlom pretrainingu — teda na veľkom korpuse neoznačených textov, pomocou causal language modeling (predikcia nasledujúceho tokenu).
Rozdiel oproti klasickému fine-tuningu (SFT) je zásadný:
- SFT trénuje model na označených pároch vstup–výstup (otázka–odpoveď, inštrukcia–výsledok). Učí model *ako sa správať* a *ako odpovedať*. Vyžaduje relatívne malé, ale starostlivo označené datasety.
- Continued pretraining trénuje model na surových textoch bez štruktúrovaných odpovedí. Učí model *čo vie* — distribúciu jazyka, pojmy, vzory a faktografiu konkrétnej domény. Vyžaduje veľké množstvo textu, ale bez manuálneho labellovania.
Ďalší bežný zmätok: continued pretraining nie je totožný s full fine-tuningom. Full fine-tuning opisuje, *koľko váh sa trénuje* (všetky, na rozdiel od LoRA). Continued pretraining opisuje, *aký typ tréningu* prebieha (ďalší pretraining vs. inštrukčný fine-tuning). Môžete robiť continued pretraining cez LoRA, QLoRA aj cez full parameter update — ide o ortogonálne rozmery.
Kedy continued pretraining dáva zmysel
Nie každý doménový problém si vyžaduje continued pretraining. Z praxe vidíme, že má zmysel v troch hlavných scenároch:
1. Nová doména s vysokou technickou hustotou a vlastným jazykom
Keď vaša doména používa terminológiu, skratky a frázy, ktoré sú v štandardnom trénovanom texte vzácne alebo chýbajú. Príklady: priemyselná dokumentácia s desaťtisícami skratiek, špecifické medicínske sub-odbory, firemný regulatórny jazyk, technické normy. Model po SFT síce vie *formátovať* odpovede, ale nerozumie hlboko pojmom — a to sa pri konkrétnych otázkach prejaví.
2. Nedostatok označených dát, ale dostatok surového textu
Labelling dát pre SFT je drahý a pomalý. Ak máte 500 GB technickej dokumentácie, ale len 500 kvalitne označených Q&A príkladov, continued pretraining vám dovolí využiť celý textový korpus bez nutnosti labellovania. Potom nasleduje SFT ako "naladenie správania" na tej novej znalostnej báze.
3. Iný jazyk alebo miešanie jazykov
Väčšina populárnych open-weight modelov je dominantne anglická. Ak potrebujete silné schopnosti v slovenčine, nemčine, češtine alebo iných jazykoch s menšou reprezentáciou v pôvodnom pretrainingu, continued pretraining na veľkom jazykovom korpuse výrazne zlepší schopnosti v danom jazyku — vrátane gramatiky, idiomov a kultúrneho kontextu.
Naopak, continued pretraining *nemá zmysel* keď: - Máte dostatok kvalitných Q&A príkladov a doména nie je radikálne odlišná od pôvodného pretrainingu - Vaša hlavná potreba je zmena *správania* (formát, tón, odmietanie, štruktúra odpovedí) — to je práca pre SFT alebo DPO - Máte obmedzený výpočtový rozpočet a potrebujete rýchly výsledok
Typický pipeline: ako to vyzerá v praxi
Keď sa rozhodnete pre continued pretraining, ide o viacfázový proces. Skratky nevedú k dobru.
Fáza 1 — Príprava korpusu
Toto je najdlhšia a najdôležitejšia fáza. Zdrojový text musí byť vyčistený: bez duplicít, bez artefaktov OCR, bez irelevantného obsahu (footery, navigácia, formulárové políčka). Odporúčané je aj deduplication na úrovni n-gramov — model by nemal vidieť tú istú vetu stokrát, pretože to vedie k memorization a nie k generalizácii.
Veľkosť korpusu: pre zmysluplný efekt sa v praxi bavíme o *stovkách miliónov tokenov*, ideálne *miliardách*. Štandardný technický dokument vo formáte PDF má rádovo 50–200 tisíc tokenov po spracovaní. Päťsto takýchto dokumentov je teda rádovo 25–100 miliónov tokenov — čo je na spodnej hranici zmysluplného continued pretrainingu.
Dôležitý detail: mixed pretraining je lepší ako čisto doménový. Ak trénujete len na doménových textoch, model zabudne všeobecné schopnosti a jazyk mu "stuhne" na jeden register. Dobrý recept je mix 80–90 % doménovej dáty a 10–20 % všeobecného textu (napr. quality web corpus). Toto zmierňuje katastrofické zabudnutie.
Fáza 2 — Konfigurácia tréningu
Kľúčový rozdiel oproti SFT: learning rate musí byť výrazne nižší ako pri pretrainingu od nuly. Bežne sa používa hodnota rádovo 1e-5 až 1e-4, čo je typicky 10–100× nižšie ako pri pôvodnom pretrainingu. Príliš vysoký learning rate = model "zabudne" čo vedel, príliš nízky = žiadna doménová adaptácia.
Pre architektúru trénovania: väčšina tímov v praxi siaha po LoRA alebo QLoRA aj pri continued pretrainingu, pretože plné parameter update je extrémne nákladné. LoRA pri continued pretrainingu funguje — nie tak dobre ako plné váhy, ale v praxi postačujúce pre väčšinu doménových adaptácií.
Fáza 3 — SFT ako finalizácia
Continued pretraining sám osebe nevyrobí "chatovateľný" model. Vyrobí model, ktorý hlboko rozumie doméne, ale vie generovať len voľný text. Preto sa po continued pretrainingu skoro vždy robí SFT (a niekedy DPO), aby sa model naučil správne reagovať na inštrukcie, odpovedať na otázky a dodržiavať formát. Viac o tomto pipeline nájdete v článku o rozhodovaní medzi SFT, DPO a GRPO.
Náklady a hardvérové nároky
Tu treba byť úprimný: continued pretraining je *drahší* ako SFT, a to znateľne.
Pri SFT na 10 000 príkladoch sa bavíme o hodinách tréningu na jednej A100 — rádovo desiatky dolárov. Continued pretraining na 500 miliónoch tokenov môže trvať dni aj na viacerých GPU — a to aj pri LoRA. Plný parameter update na miliardovom korpuse môže vyžadovať desiatky A100-hodín, čo v cloude znamená náklady v stovkách až tisícoch eur.
Pre orientáciu z praxe: - LoRA continued pretraining 7B modelu na ~200M tokenoch: rádovo 10–30 hodín na jednej A100 80 GB - QLoRA 4-bit continued pretraining 7B modelu na rovnakom korpuse: dlhšie (dequantizácia spomaľuje), ale zmestíte sa na spotrebiteľský GPU s 24 GB VRAM - Full parameter continued pretraining 13B modelu: multi-GPU takmer nevyhnutné
Ceny A100 v cloude sú dnes rádovo od ~$0.60/hod (spot ceny u menších poskytovateľov) do ~$3–4/hod u veľkých hyperscalerov. Plánujte buffer — prvý run zvyčajne odhalí problémy s dátami a tréning treba spustiť znova.
Riziká, ktoré vidíme v praxi
Katastrofické zabudnutie je reálna hrozba. Model po príliš agresívnom continued pretrainingu môže degradovať na všeobecných schopnostiach — horšia angličtina, horšie inštrukčné sledovanie, horšia logika. Riešenia: nízky learning rate, mixed training (viď vyššie), prípadne regularizácia. Evaluujte nielen doménovú výkonnosť, ale aj všeobecné benchmarky pred a po tréningu.
"Model len memoruje" — ak je korpus malý a obsahuje veľa opakujúcich sa dokumentov, model sa naučí citovať texty namiesto toho, aby im rozumel. Deduplication a diverzita dát sú povinné.
Naivná dáta = naivný model — v roku 2026 je podstatná časť nového webového textu AI-generovaná, čo pri web crawlingu prináša riziko trénovania na syntetickej distribuovanej generácii. Pre priemyselné firemné dokumenty to zvyčajne nie je problém, ale pozor pri zbieraní externých zdrojov.
Regulačné a dátové riziká — continued pretraining na firemnej dokumentácii môže nechtiac "zabudnúť" guardrails z pôvodného instruction-tuned modelu. Po continued pretrainingu nasleduje SFT a alignment fine-tuning (DPO alebo GRPO), ktoré tieto mechanizmy obnovia. Ak to preskočíte, máte model bez zabudovaných bezpečnostných správaní. Pre regulované odvetvia je toto kritické.
O ďalších dôvodoch, prečo doménová adaptácia zlyhá, píšeme podrobnejšie v článku o najčastejších príčinách neúspešného fine-tuningu.
Alternatíva: keď RAG nahrádza continued pretraining
Pre mnohé firmy je continued pretraining nesprávna odpoveď na správnu otázku. Keď cieľom je, aby model "vedel obsah dokumentov", RAG (Retrieval-Augmented Generation) to rieši lacnejšie, rýchlejšie a s lepšou aktualizovateľnosťou. Model nemusí dokumenty "vedieť" — stačí, ak ich dostane do kontextu v momente dopytu.
Continued pretraining je lepší voľbou keď: - Doménový jazyk je natoľko špecifický, že retrieval nestačí (model nerozumie pojmom ani keď ich dostane do kontextu) - Potrebujete nízku latenciu bez retrieval kroku (edge nasadenie, real-time procesy) - Chcete, aby model generoval obsah v doménovom jazyku, nielen odpovedal na otázky
RAG a continued pretraining nie sú vzájomne vylučujúce — najlepšie výsledky v praxi dosahuje kombinácia: domain-adapted model s RAG nad aktuálnou dokumentáciou. Viac o rozhodovaní medzi týmito prístupmi nájdete v porovnaní RAG vs fine-tuning.
Praktický rozhodovací rámec
Keď zákazník príde s otázkou "doučiť model alebo nie", prechádzame týmito krokmi:
- 1.Čo presne nefunguje? — zlý formát/tón → SFT; model nerozumie pojmom → continued pretraining; model cituje zastaralé info → RAG; model halucinuje fakty → kombinácia
- 2.Koľko neoznačeného textu máte? — menej ako 10 miliónov tokenov? Continued pretraining pravdepodobne nestojí za to; 100M+ tokenov? Má zmysel zvážiť
- 3.Aký je váš výpočtový rozpočet? — ak nemáte prístup k A100+ alebo cloud GPU, začnite SFT; continued pretraining je pre tímy s etablovanou ML infraštruktúrou
- 4.Je doména naozaj špecifická? — ak váš odborný jazyk nájdete aj v bežnom webovom texte, SFT na dobrých príkladoch postačí
Časté otázky
Je continued pretraining to isté čo domain-adaptive pretraining?
V podstate áno — termíny sa používajú zameniteľne. "Domain-adaptive pretraining" (DAPT) je akademický termín z výskumnej komunity, "continued pretraining" je bežnejší v priemysle. Oba opisujú rovnakú vec: pokračovanie pretrainingu na doménovo špecifickom korpuse neoznačených textov.
Môžem robiť continued pretraining cez LoRA, alebo treba full parameter update?
LoRA (aj QLoRA) funguje pri continued pretrainingu a väčšina tímov ho preferuje práve kvôli pamäťovej úspore. Plný parameter update dáva mierne lepšie výsledky, ale rozdiel je väčšinou menší ako nákladový rozdiel. Pre väčšinu doménových adaptácií je LoRA postačujúca.
Koľko textu potrebujem na zmysluplný efekt?
Z praxe: pod 50 miliónmi tokenov je efekt väčšinou marginálny. Výrazná doménová adaptácia sa začína prejavovať od stoviek miliónov tokenov. Ak máte menej, investujte radšej do kvality SFT dát — pravdepodobne dostanete lepší výsledok za nižšiu cenu.
Stratí model po continued pretrainingu schopnosť sledovať inštrukcie?
Áno — a to je bežná pasca. Continued pretraining robíte typicky nad *base* modelom (nie instruction-tuned variantom), alebo ak nad instruction-tuned, riskujete oslabenie zabudovaných správaní. Preto po continued pretrainingu nasleduje SFT (a prípadne DPO) ako povinná fáza. Nikdy nedávajte continued-pretrained model priamo do produkcie bez instruction-finetuning vrstvy.
Je continued pretraining vhodný aj pre malé modely (1B–4B)?
Áno, niekedy dokonca efektívnejší. Malé modely majú obmedzenú kapacitu všeobecných znalostí, takže doménová "prepísanosť" je relatívne väčšia. Fine-tuned 4B model na úzkej doméne môže v rámci tej domény prekonať generický model rádovo väčší. Viac o tejto téme nájdete v porovnaní malého fine-tuned modelu vs veľkého base modelu.
Záver
Continued pretraining nie je univerzálna odpoveď na problémy s doménovým LLM — ale pre firmy s rozsiahlou technickou dokumentáciou, špecifickým odborným jazykom alebo potrebou hlbokej jazykovej adaptácie je to nástroj, ktorý SFT jednoducho nahradiť nevie. Kľúčové je vedieť, kedy ho použiť: keď model nerozumie doméne na fundamentálnej úrovni, nie len keď nevie správne formátovať odpovede.
*Ak zvažujete, či je continued pretraining pre váš prípad vhodný, alebo hľadáte rámec na rozhodnutie medzi RAG, SFT a doménovou adaptáciou, radi to prejdeme spoločne. MP Industrial Solutions má skúsenosti s nasadzovaním lokálnych LLM v priemyselnom prostredí — vrátane prípadov, kde sme od continued pretrainingu odporučili ustúpiť a zvoliť jednoduchšie riešenie.*
