Compatibilité avec l’API Realtime d’OpenAI
Connectez un client OpenAI Realtime existant à ElevenLabs Realtime en modifiant l’endpoint et la configuration de session.
ElevenLabs Realtime utilise le même protocole de communication que l’API Realtime d’OpenAI : les mêmes événements client et serveur, via le même transport WebSocket. Si vous disposez déjà d’une application conçue avec le SDK Realtime d’OpenAI, vous pouvez la diriger vers ElevenLabs Realtime au lieu de api.openai.com, sans changer de SDK.
Ce guide couvre le flux basé sur le navigateur, dans lequel une brève étape côté serveur génère un identifiant à courte durée de vie et le navigateur se connecte directement à ElevenLabs Realtime.
Modèles disponibles
Fonctionnement
- Votre backend demande à ElevenLabs un secret client à courte durée de vie, limité à une configuration de session spécifique.
- Votre frontend transmet ce secret client au SDK Realtime d’OpenAI à la place d’une clé API OpenAI.
- Le SDK se connecte à ElevenLabs Realtime via WebSocket, et la conversation se déroule avec les mêmes événements client et serveur que l’API Realtime d’OpenAI.
Générer un secret client
Demandez le secret client depuis votre backend, et non depuis le navigateur, afin que votre clé API ElevenLabs n’atteigne jamais le client.
Créez une clé API dans le Dashboard ici, que vous utiliserez pour accéder à l’API en toute sécurité.
Stockez la clé comme secret géré et transmettez-la aux SDK, soit sous forme de variable d’environnement via un fichier .env, soit directement dans la configuration de votre application, selon vos préférences.
La réponse contient value (l’identifiant éphémère que votre frontend utilisera), sa date d’expiration et la session négociée. Ne renvoyez que value au navigateur.
Une chaîne model sélectionne directement le comportement de l’agent, plutôt que de référencer un agent_id depuis
le Dashboard. La configuration de session envoyée lors de la génération du secret client constitue la
session initiale de référence pour cet identifiant.
Se connecter depuis le navigateur
Transmettez le secret client au SDK Realtime d’OpenAI (@openai/agents-realtime) comme clé API, et dirigez le transport WebSocket vers l’endpoint ElevenLabs plutôt que vers celui d’OpenAI par défaut.
Le SDK ne connecte automatiquement l’audio que pour son transport WebRTC. Avec WebSocket, capturez et lisez vous-même l’audio PCM16 à 24 kHz, par exemple avec wavtools, le même outil auxiliaire qu’OpenAI utilise dans ses propres exemples WebSocket.
Pour une application complète qui génère le secret client et configure l’audio, consultez l’exemple Next.js sur GitHub.
Limites
Ce guide couvre la connexion directe depuis un navigateur. La documentation relative à la connexion depuis les SDK Realtime d’OpenAI côté serveur n’est pas encore publiée.
FAQ
Quand utiliser les modèles Realtime ?
Les modèles Realtime constituent le moyen le plus rapide d’intégrer la voix à un produit. Eleven Realtime v1 mini est optimisé pour le prix et la rapidité ; Eleven Realtime v1 max est optimisé pour la qualité et les tâches plus complexes.
Quelle architecture sous-tend les modèles Realtime ?
Eleven Realtime v1 mini et max utilisent une architecture en cascade, optimisée de bout en bout afin que chaque composant fonctionne au mieux au sein d’un système unique.
Comment se comparent-ils à la sélection des modèles de composants dans ElevenAgents ?
Les spécificités des modèles sous-jacents ne sont pas publiques. Chaque composant s’appuie sur les dernières recherches d’ElevenLabs et est optimisé pour fonctionner au mieux avec les autres au sein des modèles Realtime.
Les modèles Realtime sont-ils des modèles fusionnés ?
Non. Les modèles Realtime utilisent une architecture en cascade : chaque composant est un modèle distinct, conçu à partir des dernières recherches d’ElevenLabs et optimisé pour fonctionner au mieux avec les autres.