Vai al contenuto principale

Gemini 3.8 Flash vs Flash-Lite TTS per la narrazione adulta

Flash costa $0.00032/s, Lite $0.00021/s. Quale scegliere per un audiolibro adulto, come funzionano indicazioni e dialogo a due voci, costo di un capitolo.

Autore
Lydia
Pubblicato
Lettura
9 min di lettura
Aggiornato
Un uomo e una donna, entrambi adulti, stanno in piedi a parlare accanto a una panchina di pietra con una lanterna in un giardino notturno, dietro di loro un cancello blu chiuso.

Per un capitolo di audiolibro adulto o un messaggio vocale di un personaggio, scegli Gemini 3.8 Flash TTS per le indicazioni recitate o per la sua copertura linguistica più ampia, e Flash-Lite TTS per la narrazione semplice e già rifinita, i messaggi brevi e le righe in grandi quantità. Entrambi leggono il vocabolario adulto esplicito così com'è scritto. Flash recita le indicazioni tra parentesi quadre come [whispers] (di solito; prova prima) e copre 130 lingue contro le 101 di Lite. Lite non recita in modo affidabile le indicazioni tra parentesi quadre e a volte le legge ad alta voce, quindi richiede copioni semplici. Flash costa $0.00032 per secondo audio restituito e Lite $0.00021. La differenza è di $0.066 per dieci minuti di audio, ossia $6.60 su 1.000 minuti. In base ai nostri test di settembre 2026.

Due adulti stanno ai due lati di un cancello da giardino blu chiuso, accanto a una lanterna su una panchina di pietra di notte.

Illustrazione della coppia adulta fittizia negli esempi; non è un risultato audio.

Quale modello per quale lavoro

Flash TTSFlash-Lite TTS
10 minuti di audio$0.192$0.126
Indicazioni tra parentesi quadre ([whispers], [sighs])Recitate quasi sempre; a volte la parola del tag viene pronunciataNon recitate in modo affidabile; le parole dei tag vengono a volte lette ad alta voce, quindi scrivi i suoni per esteso
Lingue130101 (nessun tailandese, svedese, finlandese, swahili o somalo)
Due voci in una richiestaSì (speakers + dialogue)Sì, stessa struttura
Voci / output30 voci preimpostate, un WAV mono 24 kHz 16 bitUguale
Usalo perScene di audiolibro recitate, suoni vocali, dialogo fitto, copertura linguistica più ampiaNarrazione semplice e rifinita e messaggi, bozze, prove di voce, righe in grandi quantità

Usa Flash TTS quando una risata, un sospiro o un sussurro deve arrivare nel punto giusto, e Flash-Lite TTS per il parlato semplice. Prova le linee semplici su Lite e tieni una presa soddisfacente; non serve rigenerarla su Flash. Passa a Flash quando la scena richiede indicazioni recitate o una lingua che Lite non supporta. Entrambi accettano gli stessi campi, quindi cambiare significa solo cambiare il nome del modello.

Crea un messaggio vocale di un personaggio

Provalo prima nel Playground. Apri Flash TTS o Flash-Lite TTS, usa la scheda Playground con la vista Form e:

  1. Inserisci in Text solo le parole che chi ascolta deve sentire (fino a 5.000 caratteri). Su Flash le scorciatoie di Cues inseriscono [whispers], [sighs], [laughs], [gasps] e [pause]; Lite mostra un avviso che questi tag vengono letti ad alta voce.
  2. Scegli una Voice (quella predefinita è Kore) e, se vuoi, uno Style e un Pace.
  3. Aggiungi note di recitazione in Delivery instructions (fino a 1.000 caratteri) e in Scene (fino a 500). Nessuna delle due viene pronunciata.
  4. Controlla la stima della durata, premi Run model e riproduci o scarica il WAV in Output.

Poi la stessa richiesta da codice (pip install spicyapi, SPICY_API_KEY impostata). Crea l'attività, attende e stampa il link del WAV; per Lite cambia il modello in google/gemini-3.8-flash-lite-tts/text-to-speech e scrivi i suoni per esteso invece di usare le parentesi quadre:

python
import uuid

from spicyapi import SpicyClient, output_assets

client = SpicyClient()  # reads SPICY_API_KEY from the environment

task = client.create_task(
    model="google/gemini-3.8-flash-tts/text-to-speech",
    input_data={
        "text": "You made it. I was starting to think you had changed your mind. Stay a little longer; I like having you here.",
        "voice_id": "Kore",
        "instructions": "Quiet, warm and intimate. Speak to one adult listener, with a natural pause after the first sentence.",
        "pace": "natural",
    },
    idempotency_key=str(uuid.uuid4()),  # new key per new request; reuse only to retry the same one
)

final = client.wait_for_terminal(task["taskId"])
if final["state"] != "succeeded":
    raise RuntimeError(f"Task {task['taskId']} ended as {final['state']}")

print(output_assets(final)[0]["url"])  # 24 kHz 16-bit mono WAV; copy it to your own storage

L'attesa, i tentativi successivi e la gestione degli errori sono nel riferimento dell'SDK Python e nella documentazione delle attività.

Tieni le etichette Character:, i numeri di presa e le descrizioni di scena fuori da text; il modello lo legge come una trascrizione. Limita instructions a una o due frasi sull'umore e sulla distanza dal microfono, e scegli un'altra voce invece di descriverci età o genere; imposta l'accento con il campo accent.

Su Flash, metti un'indicazione subito prima della riga che deve dirigere: [whispers] You made it. La pagina del modello elenca anche [sighs], [laughing] e [gasping], e i suoi esempi usano [softly] e [teasing]; le pause derivano dalla punteggiatura (virgole, puntini di sospensione, punti), non da un tag. Usa le parentesi quadre, non i tag con parentesi angolate della documentazione dell'API diretta di Google. Se un tag viene pronunciato invece di essere recitato, rigenera o sposta quella riga in instructions.

Su Lite, scrivi i suoni come parole: Mmm... you made it. oppure Ha... of course you did. Evita del tutto le parentesi quadre e porta l'umore attraverso instructions, la punteggiatura e le frasi brevi.

Oppure lascia che sia un agent a eseguirlo. Dai a un assistente la CLI o il server MCP; entrambi mostrano il prezzo e ti chiedono conferma prima di una chiamata a pagamento, e la Skill aggiunge istruzioni a entrambi.

  • CLI: spicyapi (npx @spicyapi/cli funziona senza installazione); input.json contiene l'oggetto input qui sopra:

``bash spicyapi tasks create --model google/gemini-3.8-flash-tts/text-to-speech \ --input-file input.json --wait ``

  • Server MCP: aggiungi il server MCP e chiedi «Leggi questa riga con calore usando Gemini 3.8 Flash TTS.» Chiama spicyapi_task_create (che si ferma per la tua conferma del prezzo), poi spicyapi_task_wait.
  • Skill: npx skills add spicyapi-ai/spicy-skill installa l'Agent Skill; insegna all'assistente a leggere lo schema attivo e non può eseguire attività da solo, quindi abbinalo alla CLI o all'MCP.

Scegli una voce

Gli identificativi di voce distinguono maiuscole e minuscole e Kore (ferma) è quella predefinita. Le opzioni più calde o più morbide includono Sulafat (calda), Achernar (morbida) e Enceladus (con respiro); Charon (informativa) si adatta alla narrazione, Gacrux è matura, Algenib è rauca e Puck è allegra. Prova le stesse due righe con tre voci su Lite, poi tieni quella voce per tutto il libro. Una voce mantiene il suo carattere tra le lingue. Queste preimpostazioni sono le uniche voci: niente clonazione, niente riferimento caricato.

Due adulti con le cuffie sono seduti su una panchina di pietra accanto a un piccolo registratore e a una lanterna, dietro di loro un cancello chiuso.

Illustrazione; non è un risultato audio.

Due adulti in una richiesta

Le etichette del parlante dentro text non creano due voci. Usa dialogue invece di text e dai a ogni riga un nome di parlante che compaia in speakers.

json
{
  "speakers": [
    {"name": "Mara", "voice_id": "Kore", "style": "vocal_smile"},
    {"name": "Eli", "voice_id": "Charon", "pace": "natural"}
  ],
  "dialogue": [
    {"speaker": "Mara", "text": "You can stay, if you want to."},
    {"speaker": "Eli", "text": "I was hoping you would ask."}
  ],
  "scene": "Two fictional adults speaking quietly after a dinner date."
}

Limiti: due voci, 20 righe, 250 caratteri per riga. Ottieni un unico WAV mixato, non un file per attore; per modificare le voci separatamente, genera le righe di ogni parlante come attività separate a voce singola. Ogni parlante può avere il proprio style, pace, accent e un profile (non letto ad alta voce).

Trasforma un capitolo in richieste

Una singola richiesta accetta fino a 5.000 caratteri. In pratica un paragrafo di 270 caratteri torna in circa 20-26 secondi, quindi sei-otto minuti è una stima approssimativa per una richiesta completa di 5.000 caratteri, non un limite di durata. Questo intervallo costa da $0.1152 a $0.1536 su Flash o da $0.0756 a $0.1008 su Lite (circa $0.12–$0.15 e $0.08–$0.10 rispettivamente). Un capitolo di 20 minuti corrisponde quindi a tre o quattro richieste: $0.384 su Flash, $0.252 su Lite.

  • Spezza ai cambi di scena o alle lunghe pause, non a metà frase; una giuntura dentro una scena è il punto in cui un cambio di timbro si sente di più.
  • Riutilizza esattamente la stessa voce, le stesse instructions e le stesse impostazioni per ogni pezzo, altrimenti un solo narratore inizierà a suonare come due.
  • Preventiva con un margine: paghi i secondi restituiti, e impostazioni di pace più lente ne restituiscono di più.
  • Tieni il WAV per 14 giorni. Non ci sono timestamp né sottotitoli; allinea una trascrizione nel tuo editor se ti serve.
  • Aspettati un blocco temporaneo: un'attività in corso riserva un credito per 660 secondi e rilascia la parte non utilizzata al completamento.
  • Niente MP3, tracce musicali, cursori di intonazione o velocità, né chiamate in tempo reale. Converti il WAV in locale, aggiungi un'ambientazione in un editor e usa un'integrazione in tempo reale per la voce dal vivo.

Impostazioni che cambiano il risultato

pace offre natural, rapid_fire, the_drift (lento, strascicato) e staccato. Inizia da natural; se una riga sembra affrettata, correggi prima la punteggiatura. style offre whisper, empathetic, vocal_smile, newscaster, promo_hype e deadpan; per una scena intima prova whisper o vocal_smile. accent offre otto accenti inglesi (neutro, tre americani, due britannici, transatlantico, australiano). temperature va da 0 a 2 e controlla la variazione fra le prese; lascialo non impostato per la prima presa.

Quando qualcosa suona male

Cosa sentiCosa cambiare
Lite legge ad alta voce un'indicazione tra parentesi quadreRimuovi le parentesi quadre e scrivi il suono per esteso, oppure sposta quella riga su Flash
Flash pronuncia una parola dell'indicazione invece di recitarlaRigenera; se si ripete, riformula l'indicazione o usa instructions
Una riga suona come un annuncioRimuovi promo_hype o newscaster; prova una breve istruzione conversazionale
La tua lingua non è supportata o suona male su LiteUsa Flash (130 lingue)
Le note di regia vengono pronunciate all'inizioConferma che non siano in text; se lo sono, segnala l'ID dell'attività al supporto

Come esempio di ascolto, ecco il campione Flash pubblicato con una confessione sussurrata. La documentazione del modello di Google copre solo l'API diretta.

In breve: narrazione semplice, bozze e righe in grandi quantità su Lite; indicazioni recitate o una lingua che Lite non ha su Flash. In ogni caso, esegui prima un breve brano con la voce che vuoi prima di impegnarti su un capitolo intero, poi riutilizza quella voce e quella regia per ogni pezzo.

Altre opzioni audio: il confronto delle API di sintesi vocale senza censura (articolo in inglese) e Gemini 2.5 Pro TTS per audio NSFW.

Anche in English · 日本語 · 한국어 · Deutsch · Français · Español · Português (Brasil) · Русский · Polski

Provalo tu stesso

Paghi solo quello che esegui: nessun piano, nessun abbonamento.

Creato con MiniMax H3 · ByteDance Seedance 2.0 Fast