Vai al contenuto principale
Casi d’usoPrincipiante6 min di lettura

MagpieTTS 357M: la sintesi vocale in 12 lingue che gira anche su laptop

i
iaLocale Team
•
MagpieTTS 357M: la sintesi vocale in 12 lingue che gira anche su laptop

MagpieTTS è il modello di sintesi vocale multilingue di NVIDIA: 364 milioni di parametri, 12 lingue — italiano e francese inclusi — e un file da 332 MB che gira in locale su un normale laptop, senza GPU. È il secondo anello della catena voce che abbiamo già visto su questo sito: Whisper trasforma la voce in testo, e MagpieTTS fa il contrario, trasforma il testo in voce.

Fino a un anno fa la sintesi vocale locale era un compromesso: o funzionava in una lingua sola, o aveva l'accento di un robot. Un modello unico che copre 12 lingue con la stessa identità di voce in ciascuna è una cosa diversa. E costa meno di un'ora di vita.

Cos'è MagpieTTS Multilingual 357M

NVIDIA ha pubblicato su Hugging Face MagpieTTS Multilingual: un modello end-to-end di text-to-speech con architettura transformer encoder-decoder, 364M parametri e licenza open che permette l'uso commerciale. Copre dodici lingue: arabo, cinese, inglese, francese, tedesco, hindi, italiano, giapponese, coreano, portoghese, spagnolo e vietnamita.

La versione attuale è la v2607 (luglio 2026), che ha aggiunto arabo, coreano e portoghese alle nove della v2602 di marzo. Esistono anche checkpoint precedenti (v2512 di gennaio) se serve un'installazione pinnata.

Sotto il cofano, il modello non "disegna" l'audio come fa un modello di immagini: predice i token di un codec vocale (NanoCodec, 22 kHz, 1.89 kbps, 21.5 fotogrammi al secondo) e li decodifica in un WAV mono a 16 bit. La qualità del risultato dipende molto da questo codec, non solo dal modello di testo — è lo stesso principio per cui un film compresso bene resta bello anche a bitrate basso.

Cinque voci, Aria, Jason, Leo, Sofia e John Van Stan, con toni diversi. L'output è sempre un file WAV: nessun server, nessuna API, nessun invio di dati fuori dalla macchina.

I requisiti: i conti

Questo è il punto che interessa davvero: quanto serve per girarlo?

MagpieTTS 357M
File modello (GGUF Q8_0)332 MB
File modello (F16 completo)569 MB
RAM stimata totale (modello + codec)meno di 1 GB
GPUnon richiesta (supportata come opzione)

I numeri vengono dalla scheda del modello: il quantizzato Q8_0 pesa 332 MB, la versione a precisione intera 569 MB. Il decoder NanoCodec che converte i token in audio aggiunge poche centinaia di MB. Totale: meno di un gigabyte di RAM. Un laptop da 8 GB, un Raspberry Pi 5, un vecchio desktop: tutti ce la fanno.

Il motore è NeMo-Speech.cpp, un runtime C++ nativo di NVIDIA (v0.2.0, ottobre 2026) per Linux, macOS e Windows che gira a CPU e, se c'è una GPU NVIDIA, anche a CUDA. Scarica automaticamente modello GGUF, tokenizer e codec: niente configurazioni, niente ambienti Python.

Confrontato con l'alternativa storica per la voce locale, Piper, la differenza è di approccio:

MagpieTTS 357MPiper
Parametri364Mmodelli compatti per lingua
Lingue12, stesso modellouna per modello
Voci5, condivise tra linguemolte, una per lingua e per voce
Installazionebinario C++ + 332 MBPython + modello per lingua
LicenzaNVIDIA Open Model License (uso commerciale OK)GPL-3.0

Piper ha una voce italiana specifica e una comunità vastissima; MagpieTTS ha la copertura multilingue in un file solo. Se la voce la usi in due o tre lingue, MagpieTTS vince sul pratico. Se ti serve un'italiana che suona italiana, oggi Piper è più avanti — e più in generale, il modello più piccolo è sempre quello che gira meglio su un portatile.

Da zero al primo audio

La via più corta è il runtime C++:

  1. Installa NeMo-Speech.cpp seguendo la guida di installazione (binario precompilato per Linux/macOS, oppure build da sorgente).
  2. Scarica il modello: nemo-speech pull magpie — prende la v2607 GGUF, il tokenizer e NanoCodec. Se vuoi solo i file senza sintetizzare, questo comando basta.
  3. Sintetizza: nemo-speech synthesize "Buongiorno, sono la tua voce locale." --output voce.wav — al posto di voce.wav devi trovare un file audio di alcuni secondi e aprirlo: è il risultato.

Se non va: se il passo 2 fallisce il download, verifica la connessione (i file vengono da Hugging Face); se il passo 3 non produce il file, controlla che la cartella in cui scrivi esista e sia scrivibile. Il runtime stampa in locale anche i log di normalizzazione del testo, utili a capire dove si blocca.

Per chi vuole programmare, c'è la via Python con il framework NeMo Speech:

pip install nemo_toolkit[tts]@main
from nemo.collections.tts.models import MagpieTTSModel
model = MagpieTTSModel.from_pretrained("nvidia/magpie_tts_multilingual_357m")
audio, _ = model.do_tts("Ciao, mondo.", language="it", speaker_index=4)

Serve Python ≥ 3.10.12 e la versione recente di PyTorch. La via C++ è per girare; la via Python è per integrare e sperimentare.

E i limiti?

Ogni voce ha un prezzo, e qui ce ne sono due.

Le dodici lingue usano le stesse cinque voci. Aria suona come Aria sia in italiano sia in vietnamita: è una scelta progettuale (identità costante tra le lingue, utile per un agente vocale), ma non troverai una voce con pronuncia italiana nativa. Per un prodotto destinato a chi parla italiano, questo si sente.

La fedeltà al testo dipende dalla normalizzazione. Numeri, sigle e abbreviazioni vengono gestite dal normalizzatore incorporato del modello per tutte le dodici lingue; in pratica, se scrivi "IVA 22%" e vuoi "iva ventidue percento", il normalizzatore deve capirlo. Per domini tecnici con sigle proprie, i test contano più delle specifiche.

C'è anche un limite di licenza da tenere a mente: la NVIDIA Open Model License permette l'uso commerciale ma ha condizioni proprie da leggere, non è una licenza libera stile MIT o Apache.

Dove lo metti

Il caso d'uso più naturale è la catena completa in locale: Whisper ascolta, il modello di testo ragiona, MagpieTTS risponde. È la stessa architettura di un assistente vocale, ma senza un singolo byte che attraversa la rete. Per chi arriva da qui, la voce locale parte da Whisper al text-to-speech; e se il modello di testo non è ancora installato, come eseguire un LLM localmente è il primo passo.

In sintesi

MagpieTTS Multilingual 357M è la sintesi vocale locale più completa uscita in questa stagione: 12 lingue, italiano incluso, in un file da 332 MB che gira su qualsiasi laptop senza GPU. Il runtime C++ di NVIDIA porta da zero al primo audio in tre comandi, e la licenza consente l'uso commerciale. Il limite onesto: le cinque voci sono inglesi in tutte le lingue, e per una voce italiana nativa Piper resta davanti. Se la voce la usi in più lingue, MagpieTTS è la scelta giusta; se in una sola, guarda anche l'alternativa.

Fonti

Articolo generato con IA

#locale#multilingua#NVIDIA#text-to-speech#TTS
Condividi:

Ti è piaciuto questo articolo?

Iscriviti alla newsletter per ricevere nuovi tutorial e guide.

Dopo l'iscrizione ricevi una email di conferma (double opt-in). Senza conferma non inviamo nulla. Nessuno spam, ti promettiamo.

Articoli Correlati