LLM per testo-audio: cosa può e non può fare
Un LLM per testo-audio è solitamente composto da due strumenti che lavorano insieme: un modello linguistico che scrive il prompt e un modello audio che lo converte in suono. Questa API copre la prima metà.

Aggiornato
Punti chiave
Questo servizio è solo testo e non genera audio, immagini o video.
Il suo compito in un flusso di lavoro audio è scrivere prompt, testi, sceneggiature per le scene e metadati.
Collegarlo a uno strumento audio richiede uno script breve e un output JSON.
1.000 prompt da circa 600 token in e 300 in output costano circa $0,24.
Risposta breve: un LLM scrive le istruzioni, non il suono
Quando le persone cercano un LLM per testo-audio, spesso immaginano un unico modello che legge una frase e restituisce un file audio. I modelli linguistici di grandi dimensioni non lo fanno. Leggono e scrivono testo. Il suono proviene da un modello separato costruito per l'audio, che prende una descrizione testuale come input.
Questa separazione è utile perché la qualità della descrizione è fondamentale. Una richiesta vaga come "musica rilassante" offre poco al modello audio. Una specifica che indica genere, tempo, strumenti, umore, struttura e lunghezza offre molto di più. Scrivere questa descrizione specifica in volume, in un formato coerente, è un ottimo lavoro per un modello linguistico.
Questo sito offre esattamente questa metà: un'API testuale compatibile con OpenAI. Non ha generazione audio, embedding né fine-tuning. Se ti serve il suono stesso, abbinale a uno strumento che produce suono e usa questo endpoint come passaggio di scrittura davanti ad esso. Non siamo affiliati a nessun fornitore audio, quindi consulta la documentazione di ogni strumento per le regole di input.
Dove un modello testuale aiuta nella pipeline audio
I compiti che si adattano sono quelli in cui l'output è parole:
- Scrittura di prompt. Trasforma un'idea grezza in una descrizione dettagliata con genere, tempo, strumentazione e umore.
- Testi e sceneggiature. Strofe e ritornello per una canzone, o una sceneggiatura narrata per l'intro di un podcast o un capitolo di audiolibro.
- Variazioni. Dieci prompt alternativi da un concetto, per provare diverse direzioni.
- Metadati. Titoli, descrizioni, tag e note sulle tracce una volta che l'audio esiste.
- Revisione. Riscrivi un prompt dopo che un risultato ha mancato l'obiettivo, usando le tue note su cosa è andato storto.
Il modello qui è ottimizzato per rispondere senza blocchi dei contenuti per uso adulto lecito, il che è importante per l'audio ricco di finzione come narrazioni oscure, drammi horror o dialoghi per giochi maturi, dove un modello più rigoroso potrebbe rifiutare una richiesta perfettamente ragionevole. L'unica linea dura è che nulla che coinvolga i minorenni in un contesto sessuale è consentito e le chiavi non sono per quello.
La nostra pagina sui prompt video copre la stessa idea per gli strumenti video; il modello di scrivere prima una descrizione strutturata e poi passarla a un generatore si applica a tutti i media.
Esempio pratico: un'idea in, un prompt strutturato in output
Il modo più affidabile per alimentare uno strumento a valle è l'output strutturato. La modalità JSON (response_format: {"type":"json_object"}) fa sì che il modello restituisca un oggetto JSON, così il tuo script può leggere campi nominati invece di analizzare paragrafi. Ecco uno script Python che usa l'SDK OpenAI contro questo endpoint.
import json, os
from openai import OpenAI
client = OpenAI(
base_url="https://api.stableaudio.top/v1",
api_key=os.environ["UNCENSORED_API_KEY"],
)
system = (
"You write prompts for text-to-audio tools. Return a JSON object with keys: "
"genre, tempo_bpm, instruments (list), mood, structure, duration_seconds, prompt. "
"The prompt field is one paragraph, no more than 60 words."
)
resp = client.chat.completions.create(
model="uncensored",
messages=[
{"role": "system", "content": system},
{"role": "user", "content": "A tense chase scene in a rain-soaked neon city."},
],
response_format={"type": "json_object"},
temperature=0.8,
)
spec = json.loads(resp.choices[0].message.content)
print(spec["prompt"])
Mantieni la parola JSON nel tuo system message e elenca le chiavi che desideri. Il modello avrà così un obiettivo chiaro. Convalida il risultato prima di inviarlo oltre: verifica che tempo_bpm sia un numero e che instruments sia una lista, e riprova una volta se non lo è.
La stessa richiesta in curl, utile per un controllo rapido, è così:
curl https://api.stableaudio.top/v1/chat/completions \
-H "Authorization: Bearer $UNCENSORED_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"response_format": {"type": "json_object"},
"messages": [
{"role": "system", "content": "Return JSON with keys mood and prompt for a text-to-audio tool."},
{"role": "user", "content": "A quiet morning in a mountain village."}
]
}'Scrittura di prompt utilizzabili dal modello audio
Un modello linguistico scriverà qualsiasi forma di prompt gli venga richiesta, quindi il vero lavoro è decidere la forma. Alcune regole si applicano alla maggior parte degli strumenti audio.
Dici quello che vuole lo strumento, nell'ordine che vuole
Leggi la documentazione dello strumento audio e copia il suo vocabolario. Se risponde a tag di sezione tra parentesi quadre o a una riga di stile con descrittori separati da virgola, inserisci un esempio di quel formato esatto nel tuo messaggio di sistema. I modelli imitano gli esempi da vicino.
Fornisci sostantivi concreti
"Pianoforte essenziale, batteria spazzolata, basso acustico, crepitio del vinile" batte "una bella atmosfera jazz". Chiedi al modello di nominare gli strumenti, il range di tempo e la texture, ed evita aggettivi superflui.
Imposta limiti di lunghezza nell'istruzione
Molti strumenti audio limitano la lunghezza del prompt. Inserisci il limite nel messaggio di sistema ("non più di 60 parole") e applicalo anche nel codice. I modelli tendono a deviare sui conteggi di parole, quindi tronca o riprova quando il controllo fallisce.
Mantieni un ciclo di feedback
Dopo aver ascoltato un risultato, fornisci il tuo commento: "Troppo affollato nella seconda parte, batteria troppo alta, mantieni la tonalità". Una seconda chiamata può revisionare il prompt precedente includendo quel commento nel contesto. La finestra da 100.000 token ti permette di mantenere una lunga cronologia dei tentativi se vuoi che il modello impari cosa continui a scartare.
Collegamento del modello a un generatore audio
Il codice di incollaggio è breve. Genera la specifica, convalidala, poi passa il campo prompt a qualsiasi servizio audio tu usi. La chiamata audio è mostrata come segnaposto perché l'interfaccia di ogni fornitore è diversa; prendi i suoi parametri dalla loro documentazione.
def make_spec(idea: str) -> dict:
r = client.chat.completions.create(
model="uncensored",
messages=[
{"role": "system", "content": system},
{"role": "user", "content": idea},
],
response_format={"type": "json_object"},
)
return json.loads(r.choices[0].message.content)
ideas = ["Lo-fi study beat", "Epic orchestral trailer hit", "Haunted music box"]
for idea in ideas:
spec = make_spec(idea)
# send spec["prompt"] to your audio generator here
print(idea, "->", spec["prompt"][:80])
Se esegui questo in parallelo su un elenco, bada ai limiti. Una chiave completa permette 8 richieste concorrenti e 300 al minuto; la chiave di prova permette 2 e 60. Un 429 con concurrency significa troppe contemporaneamente, rate_limited significa troppe al minuto, e un'intestazione Retry-After: 5 significa aspettare cinque secondi e riprovare. Un pool di thread piccolo dimensionato al tuo limite, più un retry, è sufficiente.
La documentazione API elenca i parametri supportati, tra cui temperature, top_p, stop e seed. Un seed fisso aiuta quando vuoi prompt ripetibili mentre regoli il system message.
Testi, narrazione e metadati su larga scala
I prompt sono solo un tipo di testo di cui ha bisogno un progetto audio. Una volta che la pipeline è attiva, lo stesso endpoint può scrivere le altre parti adiacenti e puoi riutilizzare l'oggetto client dallo script precedente.
Sceneggiature narrate
Per l'audio parlato, chiedi una sceneggiatura con indicazioni di scena in una notazione fissa, come un marcatore di pausa tra i paragrafi e una nota quando il relatore dovrebbe rallentare. Dì al modello il tempo di lettura target. Una regola pratica comune è che un narratore legge circa 150 parole al minuto, quindi un pezzo di due minuti richiede circa 300 parole; chiedi quella cifra e poi conta le parole nel codice.
Testi con una struttura fissa
Chiedi sezioni denominate, una struttura di rime e un range di sillabe per riga. Un modello segue molto meglio "quattro righe, ABAB, otto-dieci sillabe ciascuna" rispetto a "un bel verso rimato". Esegui un controllo nel codice e chiedi la riscrittura solo della sezione fallita.
Titoli, tag e descrizioni
Dopo che l'audio è stato generato, invia il prompt finale e i testi al modello e chiedi tre opzioni di titolo, cinque tag e una descrizione di due frasi. È un lavoro economico e ripetitivo che si adatta bene a un modello testuale.
Storie e giochi
Audio narrativi, come una serie horror, una storia interattiva o i dialoghi per un gioco, includono spesso temi oscuri o per adulti. Il modello è ottimizzato per rispondere senza rifiuti sui contenuti per un uso adulto lecito, così una richiesta che rientra nel genere non viene accompagnata da una lezione. La regola contro i contenuti sessuali che coinvolgono i minorenni resta assoluta.
Se trasmetti script lunghi a uno schermo, imposta stream: true e leggi i chunk man mano che arrivano; l'utilizzo viene segnalato alla fine dello streaming.
Quanto costa scrivere mille prompt
Il testo è economico rispetto alla fase audio. Il prezzo è di $0,15 per 1M di token in input e di $0,50 per 1M di token in output, fatturato dal credito prepagato senza abbonamento.
Supponi che ogni richiesta invii circa 600 token (messaggio di sistema più idea) e riceva circa 300 token di JSON. Per 1.000 richieste:
- Input: 600.000 token x $0,15 / 1M = $0,09
- Output: 300.000 token x $0,50 / 1M = $0,15
- Totale: $0,24
Quindi mille prompt completati costano circa ventiquattro centesimi, e le richieste che falliscono o vengono rifiutate non vengono addebitate. Un nuovo account può richiedere $0,50 di credito di prova con un clic sulla pagina delle chiavi, senza carta, valido per 7 giorni, che corrisponde a circa duemila prompt della dimensione sopra. Dopo di che, i ricarichi partono da $20; vedi prezzi per i livelli bonus e le opzioni di pagamento. I prompt non vengono utilizzati per l'addestramento.
Altre guide
Domande e risposte
Un LLM testuale può generare audio?
No. Un modello linguistico produce testo. L'audio proviene da un modello audio separato, e il ruolo del LLM è scrivere il prompt, il testo o lo script di cui quel modello ha bisogno.
Questa API genera musica o voce?
No. È solo testo, senza generazione audio, immagini o video. È pensato come fase di scrittura davanti a uno strumento audio.
Come ottenere prompt strutturati da alimentare a uno script?
Usa la modalità JSON con response_format impostato su json_object, nomina le chiavi nel tuo messaggio di sistema e valida il risultato analizzato nel codice.
Quanto costa generare molti prompt?
A $0,15 per 1M di token in input e $0,50 per 1M di token in output, 1.000 prompt di circa 600 token in input e 300 in output costano circa $0,24.
C'è un modo gratuito per provarlo?
Gli utenti nuovi possono richiedere $0,50 di credito di prova con un solo clic dopo la registrazione. Non serve la carta ed è valido per 7 giorni.
La tua chiave è a un modulo di distanza
Crea un account, copia la chiave, modifica l'URL di base. È tutta la configurazione.