Wir verwenden Cookies. Cookies und Browserspeicher halten Sie angemeldet und merken sich Ihre Einstellungen. Mit Ihrer Zustimmung messen wir außerdem, wie die Website genutzt wird. Sie können jederzeit . Siehe unsere Cookie-Richtlinie.

Transkription (STT)

Endpunkte

Transkription (STT)

POST /audio/transcriptions wandelt Audio in Text um, mit Whisper, GPT-4o Transcribe und mehr, kompatibel mit client.audio.transcriptions.create.

Im Playground testen

Wandeln Sie Sprache in Text um (Speech-to-Text, STT) mit Whisper, GPT-4o Transcribe, Deepgram, Voxtral und weiteren Transkriptionsmodellen. Der Endpunkt folgt POST /audio/transcriptions von OpenAI, daher funktioniert client.audio.transcriptions.create(...) unverändert.

POST https://api14.com/api/v1/audio/transcriptions

Anfrage

Senden Sie multipart/form-data mit der Audiodatei (so machen es die OpenAI-SDKs) oder einen JSON-Body.

FeldTypErforderlichBeschreibung
filefilejaAudiodatei: mp3, mp4, m4a, wav, webm, ogg, flac.
modelstringjaEine Transkriptionsmodell-ID, z. B. openai/whisper-1.
languagestringneinISO-639-1-Code (en, de), verbessert Genauigkeit und Geschwindigkeit.
promptstringneinVokabelhinweise oder der Text des vorherigen Segments.
response_formatstringneinjson (Standard), text, srt, vtt, verbose_json, wo unterstützt.
temperaturenumberneinSampling-Temperatur, 0 bis 1.

Das Limit für den Request-Body beträgt standardmäßig 25 MB. Größere Dateien liefern 413 payload_too_large; teilen Sie lange Aufnahmen in Abschnitte auf.

Multipart mit cURL

curl https://api14.com/api/v1/audio/transcriptions \
  -H "Authorization: Bearer sk-api14-..." \
  -F model=openai/whisper-1 \
  -F file=@meeting.mp3 \
  -F language=en

JSON-Body

JSON wird ebenfalls akzeptiert, mit dem Audio als Base64 bei Modellen, die dies unterstützen:

{
  "model": "openai/whisper-1",
  "input_audio": { "data": "<base64>", "format": "mp3" },
  "language": "en"
}

Beispiel

import fs from "node:fs";
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api14.com/api/v1",
  apiKey: process.env.API14_API_KEY,
});

const result = await client.audio.transcriptions.create({
  model: "openai/whisper-1",
  file: fs.createReadStream("audio.mp3"),
});
console.log(result.text);

Antwort

{
  "text": "Thanks everyone for joining. Let's start with the roadmap.",
  "usage": { "type": "duration", "seconds": 42, "cost": 0.0042 }
}

Bei response_format: "text", srt oder vtt ist der Body einfacher Text statt JSON.

Preise

Transkription wird zum gelisteten Preis des Modells abgerechnet, angezeigt als "$ / Minute" (oder pro Token bei tokenbasierten Modellen). Der Betrag wird in usage.cost zurückgegeben und von Ihrem USD-Guthaben abgebucht.

Fehler

StatusCodeWann
400invalid_bodyDer Multipart-Body konnte nicht geparst werden.
400model_requiredDas Feld model fehlt.
402insufficient_balanceIhr USD-Guthaben beträgt 0 $.
404model_not_foundUnbekannte oder deaktivierte Modell-ID.
413payload_too_largeDie Datei überschreitet das Größenlimit des Bodys.

Siehe Fehler.