Medienleitfäden

Audio & Echtzeit

Wählen Sie Sprachsynthese, Transkription, Übersetzung oder Realtime-WebSocket-Flows für Audioanwendungen.

Audio-Workloads haben zwei Formen. Verwenden Sie die Audio-Endpunkte für dateiähnliche Anfragen wie Text-to-Speech, Transkription und Audioübersetzung. Verwenden Sie den Realtime-WebSocket-Endpunkt, wenn die Nutzererfahrung interaktive Audio- oder multimodale Ereignisse mit niedriger Latenz benötigt.

Workflow Wählen

WorkflowEndpunktVerwenden, wenn
Text zu SprachePOST /v1/audio/speechSie eine Audiodatei aus Text benötigen.
TranskriptionPOST /v1/audio/transcriptionsSie Text aus einer Audiodatei benötigen.
AudioübersetzungPOST /v1/audio/translationsSie übersetzten Text aus einer Audiodatei benötigen.
Realtime-SitzungGET /v1/realtimeSie bidirektionales Streaming-Audio oder Echtzeitereignisse benötigen.

Modelle Finden

Fragen Sie den Modellkatalog ab, bevor Sie ein Modell fest einbauen. Nutzen Sie empfohlene Shortlists für Speech und Transkription, und prüfen Sie Realtime-Unterstützung in den Modelldetails, bevor Sie einen Socket öffnen.

curl "https://api.tokenlab.sh/v1/models?recommended_for=tts" \
  -H "Authorization: Bearer sk-your-api-key"

curl "https://api.tokenlab.sh/v1/models?recommended_for=stt" \
  -H "Authorization: Bearer sk-your-api-key"

Synchrone Audioanfragen

Sprachausgabe liefert Audio in der HTTP-Antwort. Transkription und Übersetzung können fertigen Text oder einen angenommenen Auftrag liefern. Enthält die Antwort eine Auftrags-ID und einen Status statt Text, speichern Sie die ID und fragen Sie poll_url bis zum Abschluss oder Fehler ab. Planen Sie für große Dateien genügend Zeit ein und speichern Sie die Request ID.

curl -X POST "https://api.tokenlab.sh/v1/audio/speech" \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "tts-1-hd",
    "voice": "nova",
    "input": "Welcome to TokenLab."
  }' \
  --output speech.mp3

Realtime-Sitzungen

Öffnen Sie einen WebSocket mit dem Modell in der Query und dem API-Key im Authorization-Header. Nutzen Sie das Ereignisformat aus der Dokumentation des gewählten Realtime-Modells und schließen Sie den Socket am Ende der Sitzung.

Dieser Leitfaden deckt nur das WebSocket subset ab. TokenLab stellt derzeit keine OpenAI-Realtime-REST-Endpunkte für client secret, translation client secret, Calls oder legacy beta session-Verwaltung bereit.

Installieren Sie für das Serverbeispiel ws und setzen Sie TOKENLAB_REALTIME_MODEL auf ein aktuelles Modell, dessen Details /v1/realtime nennen. Übergeben Sie TOKENLAB_API_KEY in der Serverumgebung; der Modellname allein belegt keine Realtime-Unterstützung.

npm install ws
import WebSocket from 'ws';

const model = process.env.TOKENLAB_REALTIME_MODEL;
const apiKey = process.env.TOKENLAB_API_KEY;
if (!model || !apiKey) throw new Error('Set TOKENLAB_REALTIME_MODEL and TOKENLAB_API_KEY');

const url = new URL('wss://api.tokenlab.sh/v1/realtime');
url.searchParams.set('model', model);
const socket = new WebSocket(url, {
  headers: { Authorization: `Bearer ${apiKey}` },
});
socket.on('message', (event) => console.log(event.toString()));
socket.on('error', (error) => console.error(error.message));
process.once('SIGINT', () => socket.close(1000, 'Client stopped'));

Statusbehandlung

  • Speichern Sie generierte Audiodateien, statt dieselbe Anfrage beim Aktualisieren erneut auszuführen.
  • Zeigen Sie Upload- und Verarbeitungsstatus auch bei synchroner Transkription und Übersetzung.
  • Behandeln Sie Close-Events bei Realtime und verbinden Sie erst neu, wenn der Nutzer eine neue Sitzung startet.
  • Legen Sie keine API-Keys, privaten URLs oder Konto-Geheimnisse in Audio-Texteingaben ab.

API-Referenz

ThemaReferenz
Speech ErstellenSpeech Erstellen
Transkription ErstellenTranskription Erstellen
Übersetzung ErstellenÜbersetzung Erstellen
Realtime WebSocketRealtime WebSocket
Modelle AuflistenModelle Auflisten
Abrechnung & PreiseAbrechnung & Preise

Auf dieser Seite