Dofinální trénování Mistral 7B pro češtinu: od LoRA k plnému fine-tuning pro sumarizaci dialogů
Mistral 7B vykazuje slabé výsledky v češtině: chyby v pádech, ignorování promptů, ztráta smyslu v dlouhých dialozích. Tým AiGenda se rozhodl model dotrénovat pro automatizaci protokolování schůzek. Úkol zahrnuje rozpoznávání řeči, identifikaci mluvčích, detekci témat a sumarizaci pomocí LLM s až 7B parametry a kontextem 8192 tokenů.
Architektura je navržena s ohledem na škálovatelnost, bezpečnost a odolnost proti selhání. Backend směruje požadavky přes RabbitMQ do ML služby. ML Controller spravuje modely, komunikuje s vektorovou databází pro embeddingy. Data jsou izolovaná, S3 úložiště a záznam schůzek přes OpenStack API.
Architektura ML systému
Řetězec zpracování: rozhraní → Backend → RabbitMQ → ML → odpověď. ML Controller rozděluje úkoly mezi Whisper (řeč), pyannote/ResNet34 (mluvčí), embeddingy pro témata a Mistral pro text.
Klíčové komponenty:
- Fronta RabbitMQ: dávkové zpracování, snížení latence.
- ML Controller: směrování, přidání/výměna modelů.
- Vektorová databáze: embeddingy mluvčích a textu.
- Meeting Controller: dynamické zdroje pro záznam.
- Monitorování: Grafana, Sentry.
To zajišťuje flexibilitu a bezpečnost bez přímého přístupu k modelům.
Neúspěch LoRA a přechod k plnému dofinálnímu trénování
LoRA vyhladila chyby, ale neodstranila slabou logiku vět kvůli nedostatku českých dat v základním modelu. Přešli jsme k plnému fine-tuning.
Shromáždili jsme dataset 5,35 miliardy tokenů: texty, dialogy, instrukce, strojový překlad. Trénování na transformers (Hugging Face) s optimalizacemi:
- Mixed Precision, bfloat16.
- Padding-free sampler (zrychlení x10).
- Flash Attention 2 (úspora VRAM).
- ZeRO-2 s přesunem na CPU.
Dvě Nvidia RTX A6000 (48 GB) se vešly do rozpočtu. Logy v wandb.ai.
Hodnocení jazykového modelu na MERA
Testovali jsme na Ubuntu 20.04, RTX 4090, 16 jádrech Ice Lake, 32 GB RAM. Dofinálně trénovaný model překonal základní Mistral 7B, GigaChat a MTS Chat v:
- LCS.
- PARus.
- SimpleAR.
- RuHumanEval.
- ruHH.
Praxe: snížení chyb v dialozích, extrakce informací v 8192 tokenech s nízkými halucinacemi.
Co je důležité:
- Plné dofinální trénování je klíčové pro jazyky s malým objemem dat v předtrénovaných modelech.
- Optimalizace (Flash Attention, ZeRO-2) umožňují trénovat 7B na běžném hardwaru.
- MERA je spolehlivý benchmark pro češtinu.
- Kontext 8192 tokenů stačí pro dialogy schůzek.
- Integrace s architekturou zajišťuje připravenost pro produkci.
Fine-tuning pro úkol a Whisper
Finální LoRA na dialogovém datasetu (sumarizace, akční body, témata). Anotace: ruční + GPT-4 API. BertScore F1 = 0,93 pro sumarizaci.
Whisper jsme dotrénovali na 50 %+ češtiny: přednášky, konference, rozhovory. Pseudolabeling + slovní kontrola (např. „ETMO“ → „ITMO“). Snížení WER na hlučných audioschůzkách.
Perspektivy vývoje
Plány: kontext až 128k tokenů, nové architektury. Sbírání zpětné vazby pro iterace.
— Editorial Team
Zatím žádné komentáře.