| .. | ||
| aya_test | ||
| configs | ||
| requirements | ||
| scripts | ||
| sk_bench | ||
| training | ||
| .gitignore | ||
| README.md | ||
Perun – dotrénovanie Ministralu 3B na slovenskej Aya
Model ministral/Ministral-3b-instruct bol dotrénovaný metódou SFT s LoRA cez LLaMA-Factory a Unsloth. Použila sa základná revízia 2c95908929198d6e69af8638f0dbbd9bc6b93f9e. Behy prebehli na Perune.
Dáta a tréning
Slovenská časť Aya Collection bola načítaná z Parquetu. Po vyradení prázdnych alebo neplatných záznamov a odstránení duplicitných párov zostalo 3 492 041 príkladov. Rovnaké normalizované prompty sa držali v jednej skupine pri delení dát.
| Množina | Príklady |
|---|---|
| Tréningová | 3 490 041 |
| Validačná | 1 000 |
| Testovacia | 1 000 |
Manifest dát obsahuje počty, seed a kontrolné súčty vstupu aj pripravených súborov. Jeho SHA-256 sa zhoduje s hodnotou zaznamenanou v metadátach tréningu.
| Nastavenie jobu 148065 | Hodnota |
|---|---|
| Hardvér a presnosť | 4× NVIDIA H200 na jednom uzle, BF16 |
| Tréning | 1 epocha, 109 064 krokov |
| Efektívna dávka | 32 príkladov, 8 na GPU a akumulácia 1 |
| LoRA | Rank 16, alpha 32, dropout 0 |
| Learning rate | 0.0002, kosínusový plán a warmup 8 % |
| Kontext | 4 096 tokenov |
| Seed | 42 pre model aj dáta |
Tréningová slučka trvala 24 h 06 min. Priemerný tréningový loss bol 1,33344. Najnižší validačný loss bol 1,13089 v kroku 109 000. Posledný checkpoint z kroku 109 064 mal validačný loss 1,13097. Na testovanie Aya aj porovnanie v SK-bench sa použil posledný checkpoint.
Tréningové metriky · Validačný priebeh · Graf tréningového lossu · Graf validačného lossu
Test na odloženej Aya množine
Job 152588 vyhodnotil checkpoint 109 064 na 1 000 testovacích príkladoch. Pri generovaní bol limit 256 nových tokenov. Pri jednom príklade zostala po normalizácii prázdna referencia, takže tokenové F1 a presná zhoda používajú 999 hodnotiteľných odpovedí.
| Metrika | Hodnota |
|---|---|
| Testovací loss | 1,08998 |
| Perplexita | 2,97423 |
| Tokenové F1 (0–100) | 35,06 |
| Normalizovaná presná zhoda | 3,60 % (36 z 999) |
Súhrn testu · Konfigurácia výpočtu lossu · Konfigurácia generovania
Čiastočné výsledky SK-bench
Pôvodný Ministral a model so zlúčeným adaptérom z checkpointu 109 064 boli vyhodnotené na rovnakých 385 z 412 slovenských zero-shot variantov, ktoré pokrývajú 29 z 33 úloh.
| Skupina | Pokrytie | Pôvodný | Dotrénovaný | Rozdiel |
|---|---|---|---|---|
| Knowledge & Reasoning | 10/10 | 20,57 | 23,37 | +2,80 |
| Reading & QA | 8/9 | 7,42 | 12,53 | +5,11 |
| Classification | 8/9 | 0,00 | 23,34 | +23,34 |
| Instruction | 1/1 | 7,82 | 10,24 | +2,42 |
| Grammar & Morphology | 2/2 | 0,12 | 0,88 | +0,76 |
| Overall | 5/6 skupín | 7,18 | 14,07 | +6,89 |
Chýbajú OneRuler-SK (18 variantov), NLI-SK-annotated (3), SMESum (3) a SlovakSum (3). Skupina Generation preto nemá skóre. Overall je priemer piatich dostupných skupín s rovnakou váhou, vypočítaný postupom verejného leaderboardu. Dotrénovaný model sa zlepšil v 26 z 29 úloh. Najväčší pokles bol pri SKJ1, z 59,67 na 0,00.
Skóre po úlohách · Zoznam variantov · Agregát pôvodného modelu · Agregát dotrénovaného modelu
Agregované JSON-y vznikli oficiálnym skriptom z revízie SK-bench 15823bbcc2d995e69441fcb7d34abb61bd8180c5. CSV používa hlavné metriky úloh z revízie leaderboardu 833bd28e96fd392b7064de053084dc0a6ca9a3e3. Hodnoty sú na škále 0–100 a rozdiel je v bodoch. Agregačný skript · Výpočet leaderboardu
Spustenie tréningu a testu
Príkazy sa spúšťajú z tohto priečinka v pripravenom prostredí s tréningovými závislosťami. Príprava používa pôvodný slovenský Parquet. Tréningový skript spúšťa štyri procesy na uzle so štyrmi GPU. Evaluácia testovacej množiny sa spúšťa na jednej GPU.
python scripts/prepare_data.py --local-parquet /cesta/k/slovak_train.parquet \
--output-dir data/aya_slovak_fixed --seed 42 --eval-size 1000 --test-size 1000
python scripts/train.py configs/input_config.yaml --run-dir runs/ministral_aya
python scripts/evaluate.py runs/ministral_aya/used_config.yaml \
--adapter runs/ministral_aya/adapter/checkpoint-109064 \
--split test --output-dir runs/ministral_aya/evaluations/aya_test --max-new-tokens 256
Skript scripts/train.py načíta vstupné nastavenia tréningu zo súboru input_config.yaml. V priečinku zadanom cez --run-dir tréning vytvorí used_config.yaml, ktorý potom použije evaluačný skript. Použité nastavenia jobu 148065 sú uložené v run.json.