Vai al contenuto principale

Gemini 2.5 Pro TTS per audio NSFW: test e impostazioni efficaci

Gemini 2.5 Pro TTS legge i copioni NSFW senza modifiche e interpreta indicazioni e dialoghi. Voci, richieste e costi: $0,00045 al secondo.

Autore
SpicyAPI Engineering
Pubblicato
Lettura
9 min di lettura
Aggiornato
Una donna si avvicina a un microfono da studio in una cabina di registrazione poco illuminata

Hai un copione per adulti, che sia un messaggio vocale, un capitolo di narrativa o una scena tra due personaggi, e vuoi che venga letto così com’è scritto, con respiri e sospiri, sapendo quanto costerà. Gemini 2.5 Pro TTS lo fa su SpicyAPI. SpicyAPI non aggiunge filtri sui contenuti: nei nostri test di settembre 2026, i copioni per adulti sono stati restituiti come audio completo, senza omissioni, attenuazioni o interruzioni premature.

Per iniziare nel Playground:

  1. Scegli una Voice adatta all’atmosfera: Enceladus (soffiata), Achernar (dolce), Sulafat (calda), Gacrux (matura) o quella predefinita Kore (decisa).
  2. Imposta Style (Whisper è la scelta abituale per materiale intimo), poi aggiungi una o due frasi in Delivery instructions o Scene per descrivere il momento.
  3. Inserisci i suoni tra parentesi quadre in Text, come [sighs] o [laughs]. Nei nostri esempi queste indicazioni sono state interpretate come suoni; se una viene letta, sposta la sua istruzione in Delivery instructions.
  4. Per due personaggi, usa Dialogue e Speakers al posto di Text.

Prova Gemini 2.5 Pro TTS →

Provalo prima nel Playground

Apri Gemini 2.5 Pro TTS e usa la scheda Playground con la vista Form:

  1. Incolla il copione in Text (fino a 5.000 caratteri). Le scorciatoie Cues inseriscono [whispers], [sighs], [laughs], [gasps] e [pause].
  2. Scegli una Voice (per esempio Enceladus · Breathy), poi imposta Style su Whisper e Pace su Unhurried per una lettura lenta che lascia indugiare le parole.
  3. Scrivi una o due frasi in Delivery instructions e Scene. Nessuno dei due campi viene pronunciato.
  4. Controlla la stima basata sulla lunghezza sotto Text, premi Run model e ascolta il risultato in Output. Scarica il WAV da lì.

Ascolta qui il passaggio più difficile prima di scrivere codice: un’indicazione letta invece che interpretata nel Playground verrà letta anche tramite API. Le impostazioni seguenti spiegano ogni controllo.

Le impostazioni che cambiano il risultato

voice_id accetta una delle 30 voci predefinite. Il valore predefinito è Kore.

AtmosferaVoci da provare
Soffiata, ravvicinataEnceladus
Dolce, delicataAchernar, Vindemiatrix
CaldaSulafat
Matura, rocaGacrux, Algenib
DecisaKore, Orus
Allegra, disinvoltaPuck, Aoede

Quattro campi facoltativi modellano poi l’interpretazione. Nessuno viene letto ad alta voce.

  • style imposta il modo generale di parlare: whisper, empathetic, vocal_smile, newscaster, promo_hype o deadpan.
  • pace imposta il ritmo: natural, rapid_fire (veloce, secco), the_drift (lento, prolungato) o staccato (frasi brevi e separate). Un ritmo più lento produce più secondi di audio, e paghi per i secondi.
  • instructions (fino a 1.000 caratteri) contiene indicazioni libere su atmosfera, distanza dal microfono e destinatario. Una o due frasi funzionano meglio di un elenco di aggettivi: "close to the microphone, unhurried, as if speaking only to the listener".
  • scene (fino a 500 caratteri) indica dove e a chi vengono rivolte le parole, per esempio "a quiet hotel room after midnight".

accent (otto accenti inglesi, solo per copioni in inglese) e temperature (quanto variano le registrazioni) sono facoltativi; lasciali non impostati finché non desideri una variazione. Non esiste un campo per la lingua: il modello rileva quella del copione e ogni voce mantiene il proprio carattere.

Scrivi il copione per l’interpretazione

Dentro text, brevi indicazioni tra parentesi quadre segnano dove produrre un suono o cambiare modo di parlare. [sighs] e [laughs] sono stati interpretati nei nostri esempi. Usa style: "whisper" o instructions per dirigere un passaggio più lungo; se un tag viene letto come parola, usa questi campi al suo posto. I puntini di sospensione suggeriscono pause.

Due abitudini aiutano:

  • Scrivi per l’ascolto. Scrivi per esteso ciò che deve essere detto, usa puntini di sospensione e virgole per le pause e mantieni brevi le frasi.
  • Metti la regia nei campi, non nel testo. Se scrivi "she whispers breathlessly" dentro text, quelle parole verranno lette. Inseriscilo in style o instructions.

Poi richiamalo dal codice

Questo blocco crea l’attività, ne attende il completamento e stampa il link WAV (pip install spicyapi, con SPICY_API_KEY impostata):

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-2.5-pro-tts/text-to-speech",
    input_data={
        "text": "Hey... it is me. [sighs] I know it is late. Stay on the line a little longer?",
        "voice_id": "Enceladus",
        "style": "whisper",
        "pace": "the_drift",
        "scene": "A quiet bedroom after midnight, speaking to one listener",
        "instructions": "Close to the microphone, unhurried, a little tired.",
    },
    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"])  # a 24 kHz, 16-bit mono WAV; copy it to your own storage

L’audio viene conservato per 14 giorni e non include tempi delle singole parole o sottotitoli. Attesa, nuovi tentativi, scadenza dei link ai risultati e gestione degli errori sono descritti nella guida di riferimento del SDK Python, nella documentazione delle attività e nelle regole di conservazione.

Oppure lascia che se ne occupi un Agent

Se un assistente deve generare i messaggi vocali, forniscigli la CLI o il server MCP: entrambi mostrano il prezzo e chiedono conferma prima di una chiamata a pagamento. Lo Skill aggiunge istruzioni a entrambi.

  • CLI. spicyapi (npx @spicyapi/cli funziona senza installazione); input.json contiene l’oggetto input del blocco precedente:

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

  • Server MCP. Aggiungi il server MCP, poi chiedi: "Read this script in a whispered Enceladus voice with Gemini 2.5 Pro TTS." Richiama spicyapi_task_create (che si ferma per la conferma del prezzo) e spicyapi_task_wait.
  • Skill. npx skills add spicyapi-ai/spicy-skill installa l’Agent Skill, che insegna a un assistente di programmazione a leggere lo schema attuale e riutilizzare le chiavi di idempotenza. Non può eseguire attività da solo, quindi usalo con la CLI o MCP.

Due personaggi in un unico clip

Per una scena tra due personaggi, invia dialogue al posto di text (non entrambi), insieme a speakers con il cast. Ogni parlante ha un name a cui si riferiscono le battute e un voice_id, e può impostare i propri accent, style e pace, oltre a un breve profile che descrive chi parla (non viene letto). I valori omessi dal parlante vengono ripresi dal livello principale. Ogni battuta è {speaker, text} e viene interpretata in ordine, con un massimo di 20 battute da 250 caratteri ciascuna e due parlanti. Usa la stessa chiamata di prima, sostituendo l’oggetto input con questo.

json
{
  "speakers": [
    { "name": "Mara", "voice_id": "Sulafat", "style": "whisper", "profile": "Warm, close, unhurried" },
    { "name": "Jonah", "voice_id": "Charon", "profile": "Low, amused" }
  ],
  "dialogue": [
    { "speaker": "Mara", "text": "Stay a little longer." },
    { "speaker": "Jonah", "text": "[laughs] You say that every time." },
    { "speaker": "Mara", "text": "And every time you do." }
  ],
  "scene": "A quiet apartment after midnight"
}

La conversazione viene restituita come un unico WAV mixato. Per modificare in seguito le battute di un personaggio separatamente, genera ogni personaggio con un’attività distinta a voce singola e unisci i file nel tuo editor. Per scene più lunghe, più di due voci o una voce clonata da un clip di riferimento, consulta il confronto TTS e la guida ai riferimenti vocali di Chatterbox.

Quanto costa

La fatturazione avviene per secondo di audio effettivamente restituito, misurato dal file, a $0,00045 al secondo. La durata dipende da voce, stile e ritmo: un paragrafo di 270 caratteri dura da 23 a 29 secondi, quindi il costo indicativo è il numero di caratteri diviso per 10, moltiplicato per $0,00045.

Durata del clipCostoQuantità indicativa di testo
15 secondi$0,0068150 caratteri
30 secondi$0,0135300 caratteri
60 secondi$0,027600 caratteri
5 minuti$0,1353.000 caratteri
Da 7 a 9 minutiDa $0,19 a $0,245.000 caratteri, il limite di text

Durante l’esecuzione viene riservato sul saldo un importo di circa $0,30 (660 secondi alla tariffa al secondo, sufficienti per il clip più lungo che il modello può produrre, circa 655 secondi). La parte inutilizzata viene sbloccata dopo la misurazione dell’audio. Una richiesta fallita non viene addebitata. Mantieni almeno questo importo disponibile prima di accodare un lotto, perché le riserve delle attività precedenti possono impedire l’avvio della successiva.

Gli errori più comuni

  • Un’indicazione viene letta come parola. Riformulala oppure sposta la regia in style o instructions, lasciando tra parentesi solo il suono.
  • La regia sembra ignorata. accent influisce solo sui copioni in inglese; style e pace impostati al livello principale si applicano a tutti i parlanti che non definiscono valori propri.
  • Hai inviato sia text sia dialogue. Scegline uno; dialogue richiede anche speakers.

Quando scegliere una voce Gemini più recente

Gemini 3.8 Flash TTS ($0,00032 al secondo) e Gemini 3.8 Flash-Lite TTS ($0,00021 al secondo) accettano gli stessi campi, incluso dialogue, a un prezzo inferiore. Flash-Lite tende a leggere alcune indicazioni tra parentesi quadre, quindi scegli Pro quando respiri e sospiri sono importanti. Anche Flash di solito interpreta le indicazioni tra parentesi; prova prima un breve passaggio. La guida alla narrazione con Gemini 3.8 approfondisce entrambi.

Domande frequenti

Gemini 2.5 Pro TTS è senza censura?

I copioni per adulti che abbiamo testato sono stati restituiti completi, senza parole omesse o attenuate. SpicyAPI non aggiunge filtri sui contenuti ulteriori. Rimani responsabile dei copioni e dell’uso dell’audio, incluso non presentarlo come parole di una persona reale. Usa personaggi fittizi e adulti.

Indicazioni come [sighs] o [laughs] vengono lette ad alta voce?

Negli esempi testati, [sighs] e [laughs] sono stati interpretati come suoni. Se un’altra indicazione viene letta, spostala in instructions o usa style. Altri modelli si comportano diversamente, come spiega il confronto TTS precedente.

Qual è la differenza tra instructions, scene e style?

style è un elenco fisso di modi generali di parlare. instructions contiene regia libera per l’interpretazione e scene indica dove e a chi sono rivolte le parole. Usa prima style, poi aggiungi instructions o scene per descrivere il momento.

Quanto costa un minuto di audio?

Circa $0,027, fatturati in base ai secondi restituiti anziché alla lunghezza del copione.

Posso clonare una voce?

Non su questo endpoint. Scegli tra le 30 voci predefinite oppure usa un modello che accetta un clip di riferimento.

Inizia dal Playground (crea prima un account): Enceladus, Whisper e un breve copione con un’indicazione [sighs] mostrano come viene interpretata la regia.

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