AIREITER

Kokoro 82M TTS: test su CPU in locale, voci e costi

Ultimo Aggiornamento: 2026-09-28 01:23:51

Se vuoi generare una voce narrante naturale senza inviare ogni frase a un’API a pagamento, Kokoro 82M TTS è uno dei primi modelli open che vale la pena provare. La precisazione importante è che “82M” non significa “sostituto universale di ElevenLabs”: Kokoro dà il meglio con voci preimpostate, narrazioni pulite e processi batch in locale. Per il voice cloning, il controllo drammatico e l’affidabilità di un servizio gestito, invece, bisogna guardare altrove.

La scelta in breve

Kokoro-82M è un modello text-to-speech open-weight con 82 milioni di parametri. La scheda del modello su Hugging Face indica che la versione v1.0 è stata rilasciata il 27 gennaio 2025, supporta otto lingue e 54 voci e distribuisce i pesi con licenza Apache 2.0: scheda ufficiale del modello. La libreria ufficiale per l’inferenza è hexgrad/kokoro.

Sceglilo se ti servono narrazioni private o offline, le voci preimpostate sono sufficienti e il volume di lavoro rende rilevanti i costi delle API. Scegli ElevenLabs se hai bisogno di voice cloning, di uno studio gestito o di una resa espressiva per la produzione commerciale. Scegli Qwen3-TTS se la copertura multilingue e il cloning contano più delle dimensioni molto contenute del modello.

Configurazione locale: il percorso che funziona davvero

Gli esempi ufficiali usano Python, kokoro, soundfile, PyTorch ed espeak-ng; la pipeline restituisce audio a 24 kHz. Su Linux, l’installazione di base è:

pip install -q "kokoro>=0.9.4" soundfile
sudo apt-get install espeak-ng

Un esempio minimo in inglese:

from kokoro import KPipeline
import soundfile as sf

pipeline = KPipeline(lang_code="a")
text = "Kokoro is a small local text to speech model."

for index, (_, _, audio) in enumerate(
    pipeline(text, voice="af_heart", speed=1)
):
    sf.write(f"kokoro-{index}.wav", audio, 24000)

Il repository documenta i codici lingua per inglese americano e britannico, spagnolo, francese, hindi, italiano, giapponese, portoghese brasiliano e cinese mandarino. Per giapponese e mandarino servono gli extra Misaki corrispondenti. Il codice lingua selezionato deve essere compatibile con la voce.

Su Windows non basta un singolo comando: il README del progetto indirizza gli utenti alla release MSI di espeak-ng. Chi usa Apple Silicon può provare PyTorch MPS con PYTORCH_ENABLE_MPS_FALLBACK=1. Quando la prima esecuzione non va a buon fine, questi dettagli contano più del numero di parametri del modello.

CPU, GPU e velocità in tempo reale: cosa è verificato

L’inferenza su CPU è supportata, ma né la scheda ufficiale del modello né la libreria ufficiale forniscono un unico real-time factor valido in ogni situazione. La velocità dipende dal runtime, dal processore, dalla lingua, dalla suddivisione del testo e dal fatto che la prima esecuzione includa anche il caricamento del modello.

Le misurazioni della community mostrano perché è rischioso fare affermazioni generiche. In un confronto dettagliato, @analogalok ha riportato circa 0,7 secondi per generare 21 secondi di audio su una GPU, con circa 0,9 GB di VRAM in quella configurazione. È una prova utile della possibilità di eseguire il modello su una GPU con poca memoria, non una garanzia per qualsiasi portatile.

“Riesco a eseguirlo comodamente usando la CPU e l’audio risultante è molto piacevole da ascoltare.” — @rasmus1610, X

Sul tuo hardware, misura separatamente tre valori:

  1. Il tempo dall’avvio del processo al primo segmento audio.
  2. Il tempo necessario dopo che modello e voce sono già in memoria.
  3. La durata dell’audio divisa per il tempo di generazione a regime: il real-time factor effettivo.

Per un narratore batch, è il terzo valore a determinare la produttività. Per un assistente interattivo contano di più la latenza al primo token e il comportamento dello streaming. Non presentare un risultato ottenuto su GPU come se fosse un risultato su CPU e non definire “produttività da produzione” un campione di 10 secondi.

Voci, lingue e limiti da tenere presenti

La scheda del modello v1.0 indica otto lingue e 54 voci: un’espansione sostanziale rispetto a v0.19, che offriva una sola lingua e 10 voci. I codici lingua documentati dalla libreria includono:

CodiceLingua
aInglese americano
bInglese britannico
eSpagnolo
fFrancese
hHindi
iItaliano
jGiapponese
pPortoghese brasiliano
zCinese mandarino

Kokoro usa voci preimpostate: non è un sistema di voice cloning basato su un audio di riferimento. Si appoggia inoltre allo stack grapheme-to-phoneme di Misaki e ai percorsi di fallback di espeak-ng. Nomi propri, abbreviazioni, numeri e testi in più lingue richiedono una verifica prima di avviare un’esportazione lunga.

La licenza Apache 2.0 del modello è interessante per l’uso commerciale, ma dire che “il modello è Apache 2.0” non significa avere automaticamente una risposta valida per ogni campione vocale, dataset o dipendenza di terze parti. Inserisci nella checklist di rilascio la scheda del modello, i file delle voci e le licenze delle dipendenze.

Kokoro vs ElevenLabs vs Qwen3-TTS

Un confronto d’ascolto alla cieca ha senso solo se tutti e tre i sistemi usano lo stesso testo, lo stesso brief vocale, la stessa normalizzazione, lo stesso livello di output e lo stesso gruppo di valutatori. Questo articolo non decreta un vincitore sulla base di un ascolto alla cieca controllato: i materiali ufficiali di Kokoro non pubblicano un test di questo tipo. Il confronto più solido riguarda quindi i compromessi del flusso di lavoro:

Fattore di sceltaKokoro-82MElevenLabsQwen3-TTS
DistribuzionePesi locali/openAPI e studio hostedFamiglia di modelli locali/open
Licenza/origine del modelloPesi Apache 2.0Termini del providerLe schede ufficiali dei modelli indicano Apache 2.0
Voci preimpostateSìAmpia libreria di voci hostedCustomVoice e altre varianti
Voice cloningNoDisponibile nei piani e nelle funzioni supportateLa variante Base supporta il cloning da riferimento
Lingue8 indicate per v1.0Dipende dal modello; i prezzi ufficiali delle API variano in base al modello10 lingue indicate
Uso idealeNarrazione batch privataProduzione gestita ed espressivaEsperimenti multilingue o di cloning
Costo principaleHardware o inferenza hostedAddebito a caratteri/creditiHardware o hosting

La pagina ufficiale dei prezzi delle API di ElevenLabs indica attualmente circa 0,05 $ ogni 1.000 caratteri per Flash/Turbo e 0,10 $ ogni 1.000 caratteri per v2 Multilingual e v3: prezzi delle API. La scheda ufficiale di Qwen3-TTS indica cinese, inglese, giapponese, coreano, tedesco, francese, russo, portoghese, spagnolo e italiano, oltre a varianti pensate per il cloning: scheda del modello Qwen3-TTS.

Il risultato pratico non è che “Kokoro suona meglio”. Kokoro elimina la dipendenza ricorrente da un’API e può mantenere il testo sulla tua macchina; ElevenLabs offre comodità e Qwen3-TTS una dotazione più ampia per lingue e cloning, a fronte di un modello locale più ingombrante.

Costi della narrazione batch: i numeri che puoi sostenere

Con Kokoro in locale non ci sono costi del modello calcolati per carattere. Il costo marginale è dato da elettricità, spazio di archiviazione e macchina o istanza cloud usata per l’inferenza. Se possiedi già l’hardware, il costo software incrementale è di fatto nullo; se noleggi una GPU o una CPU, moltiplica la tariffa oraria del provider per il tempo effettivo di generazione.

Per il confronto con un’API, nella scheda del modello di Kokoro sono riportati, ad aprile 2025, esempi di servizi hosted sotto 1 $ per milione di caratteri in ingresso, inclusi 0,65 $ su Replicate e 0,80 $ su DeepInfra. Sono riferimenti datati, non garanzie sui prezzi attuali. A parità di volume di testo, le tariffe ufficiali di ElevenLabs implicano:

Carico di lavoroCosto del modello Kokoro in localeElevenLabs Flash/TurboElevenLabs v2 Multilingual/v3
100.000 caratteri0 $ in locale*5 $10 $
1.000.000 di caratteri0 $ in locale*50 $100 $
10.000.000 di caratteri0 $ in locale*500 $1.000 $

\*Esclude elettricità, hardware, hosting e tempo di progettazione. Le cifre di ElevenLabs usano le tariffe ufficiali di 0,05/0,10 $ ogni 1.000 caratteri e ignorano sconti sui piani, crediti, tasse e regole sugli extra. La tabella è un modello di budget, non una garanzia sull’importo finale fatturato.

Per questo Kokoro è particolarmente interessante nelle pipeline di narrazione ripetibili: sottotitoli, documentazione, contenuti audio per l’accessibilità e materiali interni di formazione. Conviene meno quando il costo umano per controllare la pronuncia e ricomporre i segmenti supera quello dell’API.

Domande frequenti

Kokoro può funzionare senza una GPU?

Sì. L’inferenza su CPU è supportata, ma il progetto ufficiale non garantisce un real-time factor universale. Misura la produttività a regime sulla CPU e nella lingua che utilizzerai davvero.

Kokoro clona le voci?

No. Kokoro usa un sistema di voci preimpostate. Se l’identità del parlante è un requisito centrale, usa un modello capace di voice cloning, come una variante appropriata di Qwen3-TTS.

Kokoro è gratuito per l’uso commerciale?

La scheda del modello Kokoro-82M indica pesi con licenza Apache 2.0, una licenza permissiva. Prima di distribuire un prodotto commerciale, verifica i termini specifici della voce, delle dipendenze e della distribuzione.

Quali lingue supporta Kokoro?

La scheda del modello v1.0 indica otto lingue; la libreria ufficiale documenta inglese americano e britannico, oltre a spagnolo, francese, hindi, italiano, giapponese, portoghese brasiliano e cinese mandarino. Potrebbero essere necessari pacchetti specifici per alcune lingue.

Kokoro è migliore di ElevenLabs?

Non sotto ogni aspetto. Kokoro è più adatto alla narrazione batch locale e privata con voci preimpostate; ElevenLabs è la scelta più sicura per infrastruttura gestita, voice cloning e flussi di produzione espressivi.

La scelta pratica

Inizia da Kokoro se il tuo test di accettazione è: “Questa macchina riesce a produrre una narrazione pulita e privata, alla produttività richiesta, usando una delle voci disponibili?”. Esegui il test con nomi, date, numeri, paragrafi lunghi e le lingue che ti servono davvero.

Se supera la prova, l’economia è semplice: sostituisci i costi ricorrenti calcolati sui caratteri con il tempo macchina. Se invece non funziona bene con la pronuncia, l’identità del parlante o la direzione emotiva, passare a ElevenLabs o Qwen3-TTS non significa ammettere una sconfitta qualitativa: significa pagare per una capacità che Kokoro ha scelto consapevolmente di non mettere al centro.

Per l’aspetto commerciale della stessa scelta, consulta la guida all’API ElevenLabs Eleven v3.