Endpoints
Música e áudio
Gere música e áudio com Lyria 3 e GPT Audio por chat completions usando modalities, e saiba como decodificar o áudio em base64 retornado na resposta.
Teste no playgroundOs modelos de música e de saída de áudio (Lyria 3, GPT Audio e outros) não têm um endpoint dedicado: você os chama por Chat completions e pede a saída de áudio com modalities. O áudio gerado volta codificado em base64 na mensagem do assistente.
POST https://api14.com/api/v1/chat/completions
Requisição
Todos os parâmetros de chat completions se aplicam. Os específicos de áudio:
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
model | string | sim | Id de um modelo de áudio, por exemplo google/lyria-3 ou openai/gpt-audio. |
messages | array | sim | Descreva a música ou a fala que você quer. |
modalities | string[] | sim | ["text", "audio"] para receber áudio. |
audio | object | não | Opções de saída para modelos de fala: { "voice": "alloy", "format": "wav" }. |
stream | boolean | não | Transmite trechos de áudio como server-sent events, onde houver suporte. |
Exemplo
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);
Uma requisição bruta:
{
"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." }
]
}
Resposta
{
"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 }
}
Decodifique choices[0].message.audio.data de base64 e salve com a extensão do format informado.
Entrada de áudio
Para enviar áudio para um modelo (por exemplo, "resuma esta gravação"), use uma parte de conteúdo input_audio; veja Visão e arquivos. Para simples fala para texto, a Transcrição é mais simples e barata; para texto para fala, use Fala.
Listar modelos de áudio
curl "https://api14.com/api/v1/models?category=audio"
Preços
Os modelos de áudio são cobrados ao preço listado (por token de áudio, por segundo ou por requisição, conforme o modelo). O custo exato está em usage.cost.
Erros
| Status | Código | Quando |
|---|---|---|
| 402 | insufficient_balance | Seu saldo em USD é $0. |
| 403 | plan_required | Seu plano não inclui modelos de áudio. |
| 404 | model_not_found | Id de modelo desconhecido ou desativado. |
Veja Erros.