OpenAI a lancé une nouvelle génération de modèles vocaux le 6 novembre 2026. La sortie principale est GPT-Realtime-2 : un modèle parole-à-parole avec raisonnement de classe GPT-5, fenêtre contextuelle de 128 000 tokens et effort de raisonnement configurable pour arbitrer entre latence et qualité. Il fonctionne avec l’API Realtime existante : si vous utilisez déjà gpt-realtime, la migration commence par remplacer l’ID du modèle et ajuster quelques champs de session.
Ce guide explique ce qu’est GPT-Realtime-2, ce qui change par rapport au modèle précédent, comment est structurée la tarification, puis comment l’appeler via WebSocket et SIP. Il inclut aussi une configuration de test avec Apidog pour rejouer des sessions Realtime sans réenregistrer l’audio à chaque exécution.
Pour situer GPT-Realtime-2 dans la gamme OpenAI 2026, consultez Qu’est-ce que GPT-5.5. Pour son équivalent multimodal côté image, voir Comment utiliser l’API GPT-Image-2.
En bref
-
Modèle :
gpt-realtime-2 - Type : parole-à-parole avec raisonnement de classe GPT-5
- Contexte : 128k tokens
- Sortie max : 32k tokens
- Audio : 32 $ / million de tokens d’entrée, 64 $ / million de tokens de sortie
- Entrée audio en cache : 0,40 $ / million
-
Voix exclusives Realtime :
cedar,marin -
Niveaux de raisonnement :
minimal,low,medium,high,xhigh -
Valeur par défaut :
low, pour limiter la latence -
WebSocket :
wss://api.openai.com/v1/realtime?model=gpt-realtime-2 -
SIP : appels entrants via
call_id -
Modèles complémentaires :
- GPT-Realtime-Translate : traduction en direct
- GPT-Realtime-Whisper : transcription STT en streaming
- Test recommandé : utiliser Apidog pour rejouer les frames WebSocket et comparer les événements audio.
Qu’est-ce que GPT-Realtime-2 ?
GPT-Realtime-2 est un modèle parole-à-parole. Vous envoyez de l’audio en streaming, le modèle renvoie de l’audio en streaming, et il gère en interne :
- la transcription ;
- le raisonnement ;
- l’appel d’outils ;
- la génération vocale.
Il ne s’agit donc pas d’un pipeline séparé du type :
STT -> LLM -> TTS
Le modèle traite la conversation dans une seule interface Realtime.
GPT-Realtime-2 accepte en entrée :
- du texte ;
- de l’audio ;
- des images.
Il peut produire en sortie :
- du texte ;
- de l’audio.
L’entrée image est la nouveauté importante : vous pouvez injecter une capture d’écran ou une photo pendant une session vocale, puis demander au modèle de la commenter ou de guider l’utilisateur à voix haute.
Exemples de cas d’usage :
- agent support qui analyse une capture d’écran d’erreur ;
- assistant terrain qui examine une photo de câblage ;
- copilote vocal qui décrit l’écran d’un utilisateur.
Spécifications
| Attribut | Valeur |
|---|---|
| ID du modèle | gpt-realtime-2 |
| Fenêtre de contexte | 128 000 tokens |
| Sortie maximale | 32 000 tokens |
| Modalités en entrée | texte, audio, image |
| Modalités en sortie | texte, audio |
| Date limite de connaissance | 2024-09-30 |
| Niveaux de raisonnement |
minimal, low, medium, high, xhigh
|
| Appel de fonction | oui |
| Serveurs MCP distants | oui |
| Entrée image | oui |
| Appels téléphoniques SIP | oui |
Ce qui change par rapport à gpt-realtime
Par rapport à gpt-realtime-1.5, GPT-Realtime-2 améliore notamment les scores suivants :
- Big Bench Audio : 81,4 % → 96,6 %
- Audio MultiChallenge : 34,7 % → 48,5 %
Ces résultats ont été obtenus avec des niveaux de raisonnement high et xhigh. En production, le niveau par défaut est low, afin de réduire la latence.
Les changements opérationnels les plus utiles côté implémentation sont les suivants.
1. Préambules vocaux
Le modèle peut prononcer une courte phrase pendant qu’il prépare sa réponse :
« Je vérifie cela. »
« Laissez-moi consulter votre dossier. »
Cela permet de masquer une partie de la latence perçue.
2. Appels d’outils parallèles
GPT-Realtime-2 peut déclencher plusieurs appels de fonction en parallèle et expliquer ce qu’il fait pendant leur résolution.
Exemple :
« Je vérifie votre solde et vos trois dernières transactions. »
3. Meilleure récupération conversationnelle
Les tours ambigus ou incomplets sont mieux gérés, ce qui évite de redémarrer le flux conversationnel au moindre échec.
4. Ton plus stable sur les domaines spécialisés
Le modèle conserve mieux les termes métier sur des sessions longues et peut adapter sa voix selon vos instructions :
- formelle ;
- décontractée ;
- lente ;
- pédagogique ;
- orientée support.
Le passage de 32k à 128k tokens est particulièrement utile pour les sessions longues : support client, banque, tutorat, diagnostic technique ou centre d’appels.
Tarification
GPT-Realtime-2 est facturé par token, avec des tarifs distincts pour le texte, l’audio et les images.
| Type de token | Entrée | Entrée en cache | Sortie |
|---|---|---|---|
| Texte | $4.00 / 1M | $0.40 / 1M | $24.00 / 1M |
| Audio | $32.00 / 1M | $0.40 / 1M | $64.00 / 1M |
| Image | $5.00 / 1M | $0.50 / 1M | n/a |
L’entrée en cache réduit fortement le coût des contextes répétés. Pour un agent vocal, gardez le cache actif lorsque vous réutilisez :
- un prompt système stable ;
- une politique de support ;
- une base documentaire injectée dans le contexte ;
- des instructions métier longues.
Pour comparer avec les autres modèles OpenAI, voir la tarification de GPT-5.5.
Modèles complémentaires
Les modèles complémentaires sont facturés à la minute :
GPT-Realtime-Translate : 0,034 $ / minute
Traduction en direct avec 70 langues d’entrée et 13 langues de sortie.GPT-Realtime-Whisper : 0,017 $ / minute
Transcription parole-texte en streaming, utile pour les sous-titres en direct et la transcription continue.
Choisissez :
- GPT-Realtime-2 pour le raisonnement + la voix ;
- GPT-Realtime-Translate pour l’interprétation multilingue en direct ;
- GPT-Realtime-Whisper pour la transcription seule.
Points d’accès et authentification
GPT-Realtime-2 est accessible via plusieurs endpoints :
POST https://api.openai.com/v1/chat/completions
POST https://api.openai.com/v1/responses
WSS wss://api.openai.com/v1/realtime?model=gpt-realtime-2
WSS wss://api.openai.com/v1/realtime?call_id={call_id}
POST https://api.openai.com/v1/realtime/translations
POST https://api.openai.com/v1/realtime/transcription_sessions
Pour un agent vocal interactif, utilisez le WebSocket :
wss://api.openai.com/v1/realtime?model=gpt-realtime-2
Ajoutez les en-têtes suivants :
Authorization: Bearer $OPENAI_API_KEY
OpenAI-Beta: realtime=v1
Définissez votre clé API dans l’environnement :
export OPENAI_API_KEY="sk-proj-..."
Connexion via WebSocket
Voici un client Node.js minimal.
import WebSocket from "ws";
const ws = new WebSocket(
"wss://api.openai.com/v1/realtime?model=gpt-realtime-2",
{
headers: {
Authorization: `Bearer ${process.env.OPENAI_API_KEY}`,
"OpenAI-Beta": "realtime=v1",
},
}
);
ws.on("open", () => {
ws.send(JSON.stringify({
type: "session.update",
session: {
voice: "cedar",
instructions: "You are a friendly support agent for a fintech app.",
input_audio_format: "pcm16",
output_audio_format: "pcm16",
turn_detection: { type: "server_vad" },
reasoning: { effort: "low" },
},
}));
});
ws.on("message", (raw) => {
const event = JSON.parse(raw.toString());
if (event.type === "response.audio.delta") {
// Chunk audio PCM16 encodé en base64.
// À router vers un haut-parleur, un navigateur ou un flux téléphonique.
process.stdout.write(Buffer.from(event.delta, "base64"));
}
});
Le flux est piloté par événements.
Côté client, vous envoyez notamment :
session.update
input_audio_buffer.append
response.create
conversation.item.create
Côté serveur, vous recevez par exemple :
response.audio.delta
response.done
response.function_call_arguments.delta
Le format PCM16 à 24 kHz est un choix sûr. Les formats G.711 mu-law et A-law sont aussi pris en charge, ce qui simplifie l’intégration avec des systèmes téléphoniques.
Pour comparer l’API Realtime avec l’API Responses, voir Comment utiliser l’API GPT-5.5.
Configurer la voix
Deux nouvelles voix sont incluses :
- Cedar : voix masculine chaude, adaptée aux agents généralistes.
- Marin : voix féminine claire, adaptée aux annonces et à la traduction.
Les deux sont exclusives à l’API Realtime.
Les voix existantes restent disponibles :
alloy
ash
ballad
coral
echo
sage
shimmer
verse
Pour changer de voix pendant une session, envoyez un nouveau session.update :
ws.send(JSON.stringify({
type: "session.update",
session: {
voice: "marin"
}
}));
Ajouter une image à une session vocale
Vous pouvez joindre une image à un tour utilisateur avec conversation.item.create.
ws.send(JSON.stringify({
type: "conversation.item.create",
item: {
type: "message",
role: "user",
content: [
{
type: "input_image",
image_url: "https://example.com/screenshot.png"
},
{
type: "input_text",
text: "What does this error mean?"
}
],
},
}));
ws.send(JSON.stringify({
type: "response.create"
}));
Cas d’usage typiques :
- QA vocale : un testeur montre une interface défectueuse et dicte le rapport.
- Support terrain : un technicien partage une photo d’équipement.
- Accessibilité : l’agent décrit l’écran pendant un appel de support.
Pour approfondir la partie image, voir Comment utiliser l’API GPT-Image-2.
Appel de fonction et MCP
GPT-Realtime-2 prend en charge :
- les fonctions déclarées dans la session ;
- les serveurs MCP distants.
Appel de fonction standard
Le fonctionnement est similaire aux Chat Completions :
- Déclarez vos outils dans
session.update. - Le modèle émet des événements
response.function_call_arguments.delta. - Votre application exécute l’outil.
- Vous renvoyez un item
function_call_output.
Le point important avec GPT-Realtime-2 est la possibilité de lancer plusieurs outils en parallèle tout en gardant une narration vocale.
Serveurs MCP distants
Avec MCP, vous pouvez déclarer un serveur d’outils distant directement dans la session.
ws.send(JSON.stringify({
type: "session.update",
session: {
tools: [
{
type: "mcp",
server_url: "https://mcp.example.com/sse",
allowed_tools: [
"lookup_account",
"list_transactions"
],
}
],
},
}));
Cette approche évite de gérer vous-même tous les allers-retours d’appel de fonction dans votre boucle WebSocket.
Elle devient utile lorsque votre agent vocal doit accéder à un catalogue d’outils large : comptes, transactions, tickets, CRM, historique utilisateur, etc.
Pour tester des serveurs MCP avant de les brancher à un agent vocal, consultez tester des serveurs MCP dans Apidog.
Appels téléphoniques SIP
GPT-Realtime-2 peut être utilisé avec de vrais appels téléphoniques.
Le flux général :
- Vous dirigez votre trunk SIP vers la passerelle SIP d’OpenAI.
- Un appel entrant crée un
call_id. - Votre application se connecte à :
wss://api.openai.com/v1/realtime?call_id={call_id}
Le modèle accepte directement :
- G.711 mu-law ;
- G.711 A-law.
Cela évite d’ajouter une étape de transcodage dans votre passerelle.
Cette intégration est utile pour les centres d’appels, surtout lorsque l’agent vocal combine :
- raisonnement ;
- appels d’outils parallèles ;
- MCP ;
- récupération conversationnelle ;
- génération vocale en temps réel.
Choisir le niveau de raisonnement
GPT-Realtime-2 expose cinq niveaux de raisonnement.
| Niveau | Cas d’usage | Coût de latence approximatif |
|---|---|---|
minimal |
Réponses simples oui/non | aucun |
low |
Support courant, chat vocal général | faible |
medium |
Désambiguïsation, outils multiples | modéré |
high |
Raisonnement multi-étapes, revue de code vocale | élevé |
xhigh |
Benchmarks, questions analytiques difficiles | le plus élevé |
Le niveau par défaut est low.
Recommandation pratique :
- Commencez avec
low. - Mesurez la qualité des réponses.
- Passez à
mediumuniquement si nécessaire. - Réservez
highetxhighaux tâches où la qualité justifie la latence.
Exemple :
ws.send(JSON.stringify({
type: "session.update",
session: {
reasoning: {
effort: "medium"
}
}
}));
Tester l’API Realtime dans Apidog
Les WebSockets sont plus difficiles à déboguer que les requêtes HTTP classiques, car la session est stateful. Avec Apidog, vous pouvez enregistrer et rejouer une session Realtime.
Workflow recommandé :
- Créez une nouvelle requête WebSocket.
- Utilisez l’URL :
wss://api.openai.com/v1/realtime?model=gpt-realtime-2
- Ajoutez les en-têtes :
Authorization: Bearer {{OPENAI_API_KEY}}
OpenAI-Beta: realtime=v1
-
Préparez une séquence de messages JSON :
session.updateconversation.item.createinput_audio_buffer.appendresponse.create
Rejouez la séquence sur une seule connexion.
Capturez les événements serveur.
Comparez plusieurs exécutions côte à côte.
C’est utile pour comparer :
- différentes voix ;
- différents niveaux de raisonnement ;
- le volume de tokens audio ;
- les erreurs d’appel d’outils ;
- les variations de latence.
Téléchargez Apidog, créez une requête WebSocket, puis stockez OPENAI_API_KEY comme variable d’environnement.
Vous pouvez aussi définir des variables pour :
model = gpt-realtime-2
voice = cedar
reasoning_effort = low
Pour comparer avec un autre modèle multimodal rapide, voir Comment utiliser l’API Gemini 3 Flash Preview.
FAQ
Quel ID de modèle utiliser ?
Utilisez :
gpt-realtime-2
Le modèle précédent reste disponible sous :
gpt-realtime
La version allégée est :
gpt-realtime-2-mini
Puis-je envoyer de l’audio pendant que le modèle parle ?
Oui. L’API Realtime utilise par défaut la détection d’activité vocale côté serveur, ou VAD.
Si l’utilisateur commence à parler, le modèle peut s’interrompre. Vous pouvez aussi désactiver la VAD et gérer les tours côté client.
Le contexte de 128k inclut-il l’audio ?
Oui. L’audio est tokenisé.
Une seconde d’audio représente environ 50 tokens selon le format. Un appel de support long peut donc consommer le contexte rapidement.
Le fine-tuning est-il supporté ?
Pas encore. D’après la fiche du modèle, GPT-Realtime-2 ne prend pas encore en charge :
- le fine-tuning ;
- les sorties prédites ;
- le streaming texte sur Chat Completions.
Le endpoint Realtime diffuse l’audio nativement.
Quelle différence avec GPT-5.5 + TTS ?
GPT-Realtime-2 raisonne directement sur la voix. Il peut prendre en compte :
- le ton ;
- l’hésitation ;
- l’emphase ;
- les interruptions.
Un modèle textuel avec TTS ne traite pas ces signaux de la même manière.
Pour du raisonnement purement textuel, voir Comment utiliser l’API GPT-5.5.
Quelles sont les limites de débit ?
Le niveau 1 commence à 40 000 tokens par minute et monte à 15 millions de tokens par minute au niveau 5.
Les limites sont appliquées par modèle. Le quota GPT-5 existant n’est donc pas automatiquement reporté.
Conclusion
GPT-Realtime-2 permet de construire des agents vocaux plus proches des agents textuels avancés : contexte 128k, raisonnement de classe GPT-5, entrée image, MCP natif et support SIP.
Pour une première implémentation :
- Connectez-vous au WebSocket
gpt-realtime-2. - Configurez
voice,instructions, formats audio et VAD. - Commencez avec
reasoning.effort = "low". - Ajoutez les outils nécessaires.
- Testez les sessions dans Apidog.
- Augmentez le niveau de raisonnement uniquement si vos mesures montrent un gain qualité clair.
Le chemin le plus rapide vers la production consiste à figer votre prompt système, votre liste d’outils et vos scénarios de test, puis à rejouer les mêmes sessions WebSocket pour comparer latence, qualité et coût.



Top comments (0)