We gebruiken cookies. Cookies en browseropslag houden je ingelogd en onthouden je voorkeuren. Met je toestemming meten we ook hoe de site wordt gebruikt. Je kunt je wanneer je wilt. Zie ons cookiebeleid.

Muziek en audio

Endpoints

Muziek en audio

Genereer muziek en gesproken audio met chatmodellen die audio uitvoeren, via chat completions en de parameter modalities.

Probeer het in de playground

Muziek- en audio-uitvoermodellen (Lyria 3, GPT Audio en andere) hebben geen eigen endpoint: je roept ze aan via Chat completions en vraagt met modalities om audio-uitvoer. De gegenereerde audio komt base64-gecodeerd terug in het assistentbericht.

POST https://api14.com/api/v1/chat/completions

Request

Alle parameters van chat completions gelden. De audiospecifieke:

ParameterTypeVerplichtBeschrijving
modelstringjaEen audiomodel-id, bijv. google/lyria-3 of openai/gpt-audio.
messagesarrayjaBeschrijf de muziek of de spraak die je wilt.
modalitiesstring[]ja["text", "audio"] om audio te ontvangen.
audioobjectneeUitvoeropties voor spraakmodellen: { "voice": "alloy", "format": "wav" }.
streambooleanneeStream audiochunks als server-sent events waar ondersteund.

Voorbeeld

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);

Een ruw request:

{
  "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." }
  ]
}

Response

{
  "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 }
}

Decodeer choices[0].message.audio.data uit base64 en sla het op met de bestandsextensie van het meegegeven format.

Audio als invoer

Om audio naar een model te sturen (bijv. "vat deze opname samen") gebruik je een contentdeel input_audio, zie Beeld en bestanden. Voor gewone spraak-naar-tekst is Transcriptie eenvoudiger en goedkoper; voor tekst-naar-spraak gebruik je Spraak.

Audiomodellen weergeven

curl "https://api14.com/api/v1/models?category=audio"

Prijzen

Audiomodellen worden gefactureerd tegen hun vermelde prijs (per audiotoken, per seconde of per request, afhankelijk van het model). De exacte kosten staan in usage.cost.

Fouten

StatusCodeWanneer
402insufficient_balanceJe USD-saldo is $0.
403plan_requiredJe abonnement bevat geen audiomodellen.
404model_not_foundOnbekend of uitgeschakeld model-id.

Zie Fouten.