Il dato che colpisce non sono i 164 dollari di GPU a noleggio. È che sei difetti gravi sono passati sotto il controllo della curva di loss senza annunciarsi. Un ricercatore, da solo e senza PyTorch né Python, ha completato il pretraining end-to-end in Rust documentando un'esperienza che interessa chiunque valuti framework diversi dal mainstream. Il risultato non è una raccomandazione: è una tassonomia misurata dei cedimenti silenziosi dei due principali framework ML Rust, Candle e Burn, usati come backend di training nel 2026.

Nel report si contano cinque difetti di Candle, tra cui kernel fusi che in silenzio non producono gradiente, e tre di Burn, tra cui un backward pass che viaggia intorno al 3% della capacità teorica della GPU e un percorso di kernel fusion che va in segfault durante il training su scala multi-miliardo di parametri. Tutti e sei superavano l'ispezione ordinaria della curva di loss; nessuno si annunciava da solo. In pratica il modello sembrava apprendere mentre parti della rete restavano congelate o producevano calcoli errati.

A fare la differenza è stata una disciplina di verifica costruita attorno a un arbitro del flusso di gradiente: un test che esegue un passaggio forward/backward e controlla che ogni parametro addestrabile riceva un gradiente finito e diverso da zero. L'approccio è generalizzabile a qualsiasi framework e ha individuato i sei guasti. La curva di loss può scendere anche quando alcuni rami non contribuiscono: il segnale aggregato nasconde i singoli punti morti.

Il progetto ha anche messo a nudo una trappola di fertilità nel tokenizer per la scrittura bengalese. Con una tokenizzazione byte-level ingenua, il bengalese collassava a circa 1,4 caratteri per token contro i 3,9 dell'inglese, invertendo di fatto il bilanciamento linguistico del corpus; il fix ha portato il rapporto a circa 4,1. In dataset multilingue la tokenizzazione non è un dettaglio: decide quanto testo ciascuna lingua può trasmettere a parità di finestra di contesto.

Il modello da circa 0,4 miliardi di parametri, orientato al bengalese, mostra un segnale robusto: negative log-likelihood per token di 0,93 contro 12,60 di un gemello inizializzato casualmente. Su benchmark di buon senso in inglese resta al livello del caso, esito atteso con un budget deliberatamente piccolo e sbilanciato sul bengalese (circa 2 miliardi di token, 54,6 ore su una H100 noleggiata).

Il passaggio successivo dell'autore è un segnale per l'ecosistema: il training è migrato su PyTorch, mentre Rust è rimasto per il serving on-device. Nei fatti, Rust non è ancora un luogo competitivo per addestrare un LLM, ma può essere un buon posto per servirne uno. Per chi ragiona su stack self-hosted o on-premise, questo non significa scartare i framework Rust a priori; significa che il loro valore si concentra oggi sull'inference e che, prima di affidare loro il training, servono test di verifica del gradiente, non metriche aggregate. Il costo reale dei fallimenti silenziosi non si vede sulla bolletta della GPU finché non si accumula in modelli che sembrano validi ma non lo sono. Per chi confronta opzioni cloud e on-premise, AI-RADAR mette a disposizione framework analitici su /llm-onpremise per valutare questi trade-off.