Kompatibilität mit der OpenAI Realtime API
Verbinden Sie einen bestehenden OpenAI-Realtime-Client mit ElevenLabs Realtime, indem Sie den Endpunkt und die Sitzungskonfiguration ändern.
ElevenLabs Realtime verwendet dasselbe Netzwerkprotokoll wie die Realtime API von OpenAI: dieselben Client- und Serverereignisse über denselben WebSocket-Transport. Wenn Sie bereits eine App mit dem Realtime SDK von OpenAI entwickelt haben, können Sie sie auf ElevenLabs Realtime statt auf api.openai.com verweisen lassen, ohne das SDK zu wechseln.
Dieser Leitfaden behandelt den browserbasierten Ablauf: Ein kleiner serverseitiger Schritt erstellt eine kurzlebige Anmeldeinformation, und der Browser verbindet sich direkt mit ElevenLabs Realtime.
Verfügbare Modelle
So funktioniert es
- Ihr Backend fordert bei ElevenLabs ein kurzlebiges Client-Secret an, das auf eine bestimmte Sitzungskonfiguration beschränkt ist.
- Ihr Frontend übergibt dieses Client-Secret anstelle eines OpenAI-API-Schlüssels an das Realtime SDK von OpenAI.
- Das SDK verbindet sich über WebSocket mit ElevenLabs Realtime, und die Konversation läuft mit denselben Client- und Serverereignissen wie bei der Realtime API von OpenAI ab.
Client-Secret erstellen
Fordern Sie das Client-Secret über Ihr Backend an, nicht über den Browser, damit Ihr ElevenLabs-API-Schlüssel nie den Client erreicht.
Erstellen Sie hier im Dashboard einen API-Schlüssel, den Sie verwenden, um sicher auf die API zuzugreifen.
Speichern Sie den Schlüssel als verwaltetes Secret und übergeben Sie ihn den SDKs je nach Präferenz entweder als Umgebungsvariable über eine .env-Datei oder direkt in der Konfiguration Ihrer App.
Die Antwort enthält value (die kurzlebige Anmeldeinformation, die Ihr Frontend verwendet), die Ablaufzeit und die ausgehandelte session. Geben Sie nur value an den Browser zurück.
Ein model-String wählt das Verhalten des Agenten direkt aus, anstatt auf eine agent_id im
Dashboard zu verweisen. Die Sitzungskonfiguration, die Sie beim Erstellen des Client-Secrets senden, ist die
maßgebliche initiale Sitzung für diese Anmeldeinformation.
Über den Browser verbinden
Übergeben Sie das Client-Secret als API-Schlüssel an das Realtime SDK von OpenAI (@openai/agents-realtime) und verweisen Sie den WebSocket-Transport auf den ElevenLabs-Endpunkt statt auf den standardmäßigen OpenAI-Endpunkt.
Das SDK verbindet Audio nur für seinen WebRTC-Transport automatisch. Erfassen und spielen Sie über WebSocket PCM16-Audio mit 24 kHz selbst ab, beispielsweise mit wavtools, derselben Hilfe, die OpenAI in seinen eigenen WebSocket-Beispielen verwendet.
Eine vollständige App, die das Client-Secret erstellt und Audio verbindet, finden Sie im Next.js-Beispiel auf GitHub.
Einschränkungen
Dieser Leitfaden behandelt die direkte Verbindung über einen Browser. Dokumentation zur Verbindung über serverseitige OpenAI-Realtime-SDKs wurde noch nicht veröffentlicht.
FAQ
Wann sollte ich Realtime-Modelle verwenden?
Realtime-Modelle sind der schnellste Weg, ein Produkt um Sprache zu erweitern. Eleven Realtime v1 mini ist für Preis und Geschwindigkeit optimiert; Eleven Realtime v1 max ist für Qualität und komplexere Aufgaben optimiert.
Welche Architektur liegt Realtime-Modellen zugrunde?
Eleven Realtime v1 mini und max verwenden eine kaskadierte Architektur, die Ende-zu-Ende optimiert ist, sodass jede Komponente als Teil eines einzelnen Systems optimal funktioniert.
Wie vergleichen sie sich mit der Auswahl der Komponentenmodelle in ElevenAgents?
Die Details der zugrunde liegenden Modelle sind nicht öffentlich. Jede Komponente nutzt die neueste Forschung von ElevenLabs und ist darauf optimiert, innerhalb von Realtime-Modellen optimal zusammenzuarbeiten.
Sind Realtime-Modelle fusionierte Modelle?
Nein. Realtime-Modelle verwenden eine kaskadierte Architektur: Jede Komponente ist ein eigenständiges Modell, das mit der neuesten Forschung von ElevenLabs entwickelt und für optimale Zusammenarbeit optimiert wurde.