Endpoint
Musica e audio
Genera musica e audio parlato con i modelli di chat con output audio come Lyria 3 e GPT Audio, tramite chat completions e il parametro modalities.
Provalo nel playgroundI modelli di musica e con output audio (Lyria 3, GPT Audio e altri) non hanno un endpoint dedicato: li chiami tramite Chat completions e richiedi l'output audio con modalities. L'audio generato torna codificato in base64 nel messaggio dell'assistente.
POST https://api14.com/api/v1/chat/completions
Richiesta
Si applicano tutti i parametri di chat completion. Quelli specifici per l'audio:
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
model | string | sì | L'id di un modello audio, ad es. google/lyria-3 o openai/gpt-audio. |
messages | array | sì | Descrivi la musica o il parlato che vuoi. |
modalities | string[] | sì | ["text", "audio"] per ricevere l'audio. |
audio | object | no | Opzioni di output per i modelli vocali: { "voice": "alloy", "format": "wav" }. |
stream | boolean | no | Riceve i chunk audio come server-sent events dove supportato. |
Esempio
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api14.com/api/v1",
apiKey: process.env.API14_API_KEY,
});
const result = await client.chat.completions.create({
"model": "google/lyria-3",
"messages": [
{
"role": "user",
"content": "Explain vector databases in two sentences."
}
]
});
console.log(result.choices[0].message.content);
Una richiesta grezza:
{
"model": "google/lyria-3",
"modalities": ["text", "audio"],
"messages": [
{ "role": "user", "content": "A 30-second lo-fi hip hop loop with soft piano and vinyl crackle." }
]
}
Risposta
{
"id": "gen-1791100000-xyz",
"object": "chat.completion",
"model": "google/lyria-3",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Here is your loop.",
"audio": { "id": "audio_01", "data": "UklGRiQAAABXQVZFZm10...", "format": "wav" }
},
"finish_reason": "stop"
}
],
"usage": { "prompt_tokens": 24, "completion_tokens": 1500, "total_tokens": 1524, "cost": 0.06 }
}
Decodifica da base64 choices[0].message.audio.data e salvalo con l'estensione indicata da format.
Input audio
Per inviare audio a un modello (ad es. "riassumi questa registrazione"), usa una parte di contenuto input_audio, vedi Visione e file. Per il semplice speech-to-text, la Trascrizione è più semplice ed economica; per il text-to-speech usa Speech.
Elencare i modelli audio
curl "https://api14.com/api/v1/models?category=audio"
Prezzi
I modelli audio sono fatturati al prezzo indicato (per token audio, per secondo o per richiesta, a seconda del modello). Il costo esatto è in usage.cost.
Errori
| Stato | Codice | Quando |
|---|---|---|
| 402 | insufficient_balance | Il tuo saldo in USD è $0. |
| 403 | plan_required | Il tuo piano non include i modelli audio. |
| 404 | model_not_found | Id del modello sconosciuto o disattivato. |
Vedi Errori.