Chi ha provato a farsi leggere un messaggio in wolof, in quechua o anche solo in friulano da un assistente vocale conosce la risposta: silenzio, oppure un italiano con l’accento sbagliato che legge lettere a caso. La sintesi vocale di oggi somiglia a un doppiatore bravissimo che conosce venti lingue e basta. Con tre secondi di registrazione imita la voce di chiunque, ma fuori da quel repertorio non apre bocca. E la ragione non è la mancanza di talento: è che per le altre lingue nessuno ha mai messo insieme abbastanza ore di parlato pulito da insegnargliele.
OmniVoice: Towards Omnilingual Zero-Shot Text-to-Speech with Diffusion Language Models (arXiv 2604.00688, aprile 2026, in tendenza in questi giorni su Papers with Code) prova a cambiare il repertorio. Lo firmano dieci ricercatori di Xiaomi, fra cui Daniel Povey; il codice è pubblicato sotto k2-fsa, il progetto di strumenti vocali open source del gruppo. Il modello copre, dichiarano, più di 600 lingue, clona una voce da un breve campione audio ed è addestrato esclusivamente su dati pubblici. Codice e pesi sono su GitHub.
Come si passa da un testo a un’onda sonora, che cosa sono vocoder e codec audio e perché la sintesi «zero-shot» imita una voce mai sentita in addestramento: le basi del text-to-speech sono nel libro.
Un piano in meno
I sistemi di sintesi più recenti rappresentano il suono come una griglia di token discreti: per ogni istante di tempo un codec audio produce non uno ma più codici, impilati su più livelli (i codebook). Il livello basso fissa il grosso del suono, quelli alti aggiungono il dettaglio fine. Generare voce significa riempire questa griglia.
Fra i modelli non autoregressivi, quelli che riempiono la griglia in parallelo invece che un istante dopo l’altro, i migliori a token discreti lavorano in due tempi: prima il testo diventa una sequenza «semantica» povera di dettagli, poi da quella si ricavano i token acustici. È una catena di montaggio comoda da addestrare, ma con due difetti che gli autori mettono in fila: l’errore del primo stadio si propaga al secondo, e la rappresentazione intermedia, a bassa capacità, strozza le informazioni acustiche fini. Le alternative a un solo stadio esistevano già, ma finora capivano peggio il testo: la voce usciva meno intelligibile.
OmniVoice sceglie lo stadio unico e lo tratta come un modello linguistico a diffusione. Un Transformer bidirezionale riceve il testo (istruzioni più trascrizione), un frammento di audio di riferimento già tokenizzato e la parte da generare, in cui una quota casuale di token è coperta da maschere. Impara a rimettere al loro posto i token mascherati. L’obiettivo di addestramento è la verosimiglianza dei soli token nascosti:
$$\mathcal{L} = -\sum_{(t,c)\in\mathcal{M}} \log P\big(x_{t,c} \mid X, Y; \theta\big),$$
dove $x_{t,c}$ è il token all’istante $t$ nel codebook $c$, $X$ la griglia acustica parzialmente mascherata, $Y$ il testo e $\mathcal{M}$ l’insieme delle posizioni coperte. In generazione si parte da una griglia tutta mascherata e la si scopre in 32 passi, scegliendo a ogni giro quali posizioni scoprire in base alla confidenza del modello, con una dose voluta di casualità e una preferenza per i livelli bassi.
Come si corrompe una sequenza token per token con le maschere e come un modello impara a riportarla indietro: la diffusione discreta, la stessa che OmniVoice applica alla voce, è spiegata nel libro.
Le due mosse che lo fanno funzionare
Uno stadio solo, da solo, non basta: è la strada su cui altri erano già rimasti indietro. Il paper attribuisce il risultato a due scelte.
La prima riguarda dove si mettono le maschere. I metodi precedenti, come SoundStorm e MaskGCT, mascherano un livello alla volta: per ogni esempio scelgono un codebook, coprono una parte dei suoi token, coprono per intero quelli sopra e calcolano la perdita solo sul livello scelto. È coerente con il modo in cui poi generano, livello dopo livello, ma a ogni passo di addestramento il modello impara da una fetta sottile della griglia. OmniVoice copre ogni cella in modo indipendente, con una probabilità $p_t$ estratta a caso fra 0 e 1 per ciascun esempio. In media metà dei token entra nella perdita: $C$ volte più che nello schema per livello, dove $C$ è il numero di codebook, qui otto.
L’ablazione, fatta sul dataset bilingue Emilia con 300 mila passi per tutti, dà una misura dell’effetto sull’inglese di LibriSpeech-PC, con il tasso di errore sulle parole (WER, ricavato trascrivendo l’audio con un riconoscitore automatico). Il mascheramento su tutta la griglia batte entrambi gli schemi per livello. E tenere il mascheramento casuale ma calcolare la perdita su un livello solo fa risalire l’errore: il guadagno viene proprio dalla densità della perdita.
| Schema di mascheramento | WER |
|---|---|
| Casuale su tutta la griglia, perdita su ogni cella coperta | 1,57% |
| Casuale, ma perdita su un livello solo | 2,85% |
| Per livello, alla MaskGCT | 2,04% |
| Per livello, alla SoundStorm | 3,00% |
La seconda mossa è partire da un LLM. La spina dorsale ha la stessa struttura di un modello linguistico autoregressivo e viene inizializzata con i pesi di Qwen3-0.6B, anche se quei pesi erano stati addestrati con la maschera causale e qui lavorano in modo bidirezionale. Gli autori riferiscono che la conoscenza del linguaggio sopravvive al cambio, e rivendicano di essere i primi a ottenere un vantaggio così in un TTS non autoregressivo. Con l’inizializzazione, il WER su LibriSpeech-PC è 1,57%; da pesi casuali, anche provando quattro tassi di apprendimento, il migliore resta a 2,52%. Lo stesso ordine vale su Seed-TTS in inglese (1,72 contro 2,07) e in cinese (0,89 contro 1,01).
Il tokenizzatore di testo è quello dell’LLM, a sottoparole: niente conversione da grafemi a fonemi, niente normalizzazione scritta a mano lingua per lingua. È una scelta che pesa quando le lingue sono seicento.
581 mila ore, distribuite male
I dati sono l’altra metà del lavoro. Gli autori hanno messo insieme 50 dataset pubblici (Emilia, Common Voice, FLEURS, il corpus di Meta per l’Omnilingual ASR, raccolte indiane, vietnamite, arabe e molte altre), ripulito l’audio degradato con un modello di restauro e filtrato con regole le trascrizioni inutilizzabili. Il risultato è di 581 mila ore in più di 600 lingue. Distribuite in modo estremamente diseguale: secondo la statistica del paper solo due lingue superano le centomila ore, 76 superano le cento, 381 le dieci.
Per non lasciare che cinese e inglese si prendano tutto, le lingue povere vengono ripetute durante l’addestramento con un fattore
$$r_i = \max\!\left(1,\ \mathrm{round}\!\left(\left(\frac{D_{\max}}{D_i}\right)^{1-\beta}\right)\right),$$
dove $D_i$ è la durata disponibile per la lingua $i$ e $D_{\max}$ quella della lingua più ricca. Con $\beta = 1$ si tiene la coda lunga naturale, con $\beta = 0$ tutte le lingue pesano uguale; gli autori scelgono $\beta = 0{,}8$, un compromesso fra non danneggiare le lingue grandi e far vedere abbastanza quelle piccole. Il modello finale ha circa 0,8 miliardi di parametri contando anche il codec audio (Higgs-audio, otto codebook) ed è stato addestrato su 8 GPU H800 per 9,66 giorni.
I numeri
Su cinese e inglese il confronto più pulito è con i modelli addestrati sugli stessi dati. La versione OmniVoice-Emilia, allenata solo sulle 100 mila ore di Emilia, batte nel complesso i non autoregressivi con lo stesso corpus (F5-TTS, ZipVoice, MaskGCT), anche se non su ogni cifra: su Seed-TTS inglese ZipVoice ha un WER appena più basso (1,70 contro 1,72), su quello cinese MaskGCT una somiglianza del parlante più alta. La versione multilingue arriva su LibriSpeech-PC a un WER di 1,30%, contro l’1,60% di Qwen3-TTS, che secondo la tabella è addestrato su cinque milioni di ore; la somiglianza del parlante (SIM-o) è 0,729 contro 0,704. Su Seed-TTS cinese il WER è 0,84%. Nei test d’ascolto con giudici umani il vantaggio sulla concorrenza più vicina è sottile: CMOS di 0,44 contro 0,40 di Qwen3-TTS, SMOS di 3,80 contro 3,65.
Sul banco multilingue di MiniMax, 24 lingue, OmniVoice ha in media l’errore più basso e la somiglianza del parlante più alta dei tre sistemi confrontati, davanti a MiniMax-Speech e a ElevenLabs Multilingual v2. La media di ElevenLabs però è gonfiata da tre lingue in cui crolla (thailandese, vietnamita, cantonese, tutte sopra il 50%); lingua per lingua il quadro è più misto. In italiano, per esempio, OmniVoice ha il WER peggiore dei tre, mentre la somiglianza del parlante resta nettamente più alta. E il suo cantonese al 17,7% scende al 2,3%, dicono gli autori, se lo si trascrive con un riconoscitore diverso da Whisper.
| Misura | OmniVoice | MiniMax-Speech | ElevenLabs |
|---|---|---|---|
| Media sulle 24 lingue | |||
| WER | 2,85% | 3,77% | 10,95% |
| SIM-o | 0,830 | 0,766 | 0,655 |
| Italiano | |||
| WER | 2,07% | 1,54% | 1,74% |
| SIM-o | 0,812 | 0,699 | 0,579 |
Il banco più largo, FLEURS-Multilingual-102, l’hanno costruito gli stessi autori. Qui l’errore sui caratteri (CER) medio è 4,00%, più basso del 5,11% che il riconoscitore commette sulle registrazioni umane originali; 82 lingue stanno sotto il 5% (75 per l’audio vero) e 95 sotto il 10%. Molte lingue con meno di dieci ore di addestramento restano sotto la soglia del 5%. Gli autori sono i primi a precisare come leggere il sorpasso: non sostengono che la voce sintetica sia migliore di quella umana, ma che ha superato ciò che i riconoscitori sanno misurare. Una lettura plausibile, che il paper non sviluppa: una voce più pulita e standard si trascrive meglio di una registrazione reale.
Quanto alla velocità, su una GPU H20 il modello genera dieci secondi di audio con un fattore di tempo reale di 0,0319 con 16 passi, contro 0,0557 di ZipVoice nella stessa configurazione. Con 32 passi sale a 0,0598; in batch da otto, con 16 passi, scende a 0,0224. Con i 32 passi usati per i risultati principali, a batch singolo, resta più lento di ZipVoice.
I limiti
Seicento lingue dichiarate, 102 misurate. Secondo gli autori è il banco più ampio mai usato per un TTS zero-shot, ma la copertura oltre quelle 102 è una proprietà dell’addestramento, non un risultato verificato. Per centinaia di lingue non sappiamo quanto bene parli il modello.
Le metriche automatiche sono al loro limite. Intelligibilità e somiglianza sono misurate da altri modelli: un riconoscitore vocale e un modello di verifica del parlante. Il caso del cantonese mostra quanto il numero dipenda da chi trascrive, e il sorpasso sul parlato umano mostra che, in cima, quel metro non separa più bene. I test con ascoltatori riguardano solo cinese e inglese.
Denoising e somiglianza si contendono il campo. Con l’opzione che ripulisce un campione rumoroso la naturalezza stimata sale (UTMOS da 4,23 a 4,32), ma la somiglianza scende da 0,697 a 0,668: la voce generata è più pulita e meno fedele al campione.
Quelli dichiarati dagli autori. I dati open source hanno qualità disomogenea; le istruzioni per progettare una voce (genere, età, accento) sono limitate dai pochi dataset di istruzioni disponibili; il modello non è ancora ottimizzato per sequenze numeriche complesse e formule, per cui servirebbe una normalizzazione esterna del testo; e per i modelli discreti come questo non esiste ancora una distillazione che riduca drasticamente i passi, come invece accade per quelli continui.
Il rischio più evidente. Il paper ne parla in quattro righe: il lavoro è destinato alla sola ricerca accademica, il modello imita voci con alta somiglianza, dunque si presta ad abusi, e l’uso illecito è «strettamente proibito». Clonare una voce da pochi secondi di audio, in seicento lingue, con pesi scaricabili, è esattamente la capacità che rende più facili le truffe telefoniche e i falsi audio. Il paper non discute filigrane o altre salvaguardie tecniche.
Perché conta adesso
Due cose rendono OmniVoice una notizia più che un altro punto in classifica. La prima è di metodo: la ricetta dei modelli linguistici a diffusione, finora discussa soprattutto per il testo, qui si trasferisce alla voce in modo semplice, con un Transformer solo e i pesi di un LLM come punto di partenza. La seconda è di accesso. Un sistema addestrato solo su dati pubblici, con codice e pesi aperti, supera in media due servizi commerciali sul banco multilingue di MiniMax e dichiara centinaia di lingue che i sistemi di clonazione vocale zero-shot finora non coprivano. Per chi lavora con lingue minoritarie, dialetti o comunità che la tecnologia vocale ha sempre saltato, è un punto di partenza reale. Resta da vedere quanto bene suoni davvero, lingua per lingua, quando a giudicare saranno orecchie di madrelingua invece di un riconoscitore automatico.

I commenti sono riservati agli iscritti.
Accedi per commentare