Realtime API OpenAI: voz, audio y texto en tiempo real
Realtime API OpenAI permite construir aplicaciones interactivas de baja latencia con texto, audio, function calling y sesiones persistentes. Puedes conectarte mediante WebRTC, WebSocket o SIP para crear asistentes de voz, agentes conversacionales, experiencias de soporte en vivo y aplicaciones que necesitan respuestas inmediatas.
¿Qué es Realtime API OpenAI?
Realtime API OpenAI es una API orientada a sesiones de baja latencia donde un modelo puede recibir y producir texto o audio en tiempo real. A diferencia de una request tradicional, la conexión permanece activa y permite intercambiar eventos de manera continua entre cliente y servidor.
Qué permite hacer Realtime API OpenAI
Realtime API está diseñada para experiencias donde la latencia es crítica.
Conversaciones por voz
Recibir audio y responder con audio en tiempo real.
Texto en vivo
Intercambiar mensajes de texto dentro de una sesión persistente.
WebRTC
Conectar navegadores y aplicaciones con baja latencia para audio interactivo.
WebSocket
Mantener conexiones persistentes desde servidores o clientes compatibles.
Function Calling
Ejecutar herramientas y funciones dentro del flujo conversacional.
SIP
Integrar llamadas telefónicas y sistemas de voz existentes.
Cómo funciona Realtime API OpenAI
Realtime API mantiene una sesión activa donde cliente y servidor intercambian eventos continuamente.
Abres una sesión
Utilizas WebRTC, WebSocket o SIP.
Intercambias eventos
Envías texto, audio y comandos al modelo.
Recibes respuesta
El modelo responde con audio, texto o tool calls.
WebRTC, WebSocket y SIP en Realtime API
OpenAI permite conectarse a Realtime API mediante diferentes transportes.
| Transporte | Uso recomendado |
|---|---|
| WebRTC | Navegadores, audio interactivo y baja latencia |
| WebSocket | Backends, servidores y aplicaciones persistentes |
| SIP | Telefonía y sistemas de llamadas |
Para un navegador, WebRTC suele ser la opción natural. Para un backend, WebSocket puede resultar más sencillo.
Cómo crear una llamada WebRTC con Realtime API OpenAI
La API dispone de un endpoint específico para crear una llamada Realtime mediante una oferta SDP.
Enviar una oferta SDP
import OpenAI from "openai";
const client = new OpenAI();
const call = await client.realtime.calls.create({
sdp: offerSdp,
session: {
type: "realtime",
model: "gpt-realtime"
}
});
console.log(call);
El cliente utiliza esa respuesta para completar la conexión WebRTC.
Qué es SDP en Realtime API
SDP significa Session Description Protocol y describe parámetros necesarios para establecer una conexión WebRTC.
El cliente crea la oferta
El navegador genera una oferta SDP, la envía a OpenAI y recibe un SDP answer para completar el peer connection.
Flujo típico de una conexión WebRTC
Crear
RTCPeerConnection.
Capturar audio del micrófono.
Crear una oferta SDP.
Enviar la oferta a Realtime API.
Recibir el SDP answer.
Establecer la descripción remota.
Eventos de Realtime API mediante DataChannel
WebRTC puede utilizar un canal de datos además de las pistas de audio.
Controlar la sesión
A través del DataChannel puedes intercambiar eventos JSON relacionados con mensajes, respuestas, herramientas y configuración.
Realtime API OpenAI mediante WebSocket
WebSocket resulta especialmente útil en aplicaciones del lado servidor.
Conexión bidireccional
Cliente y servidor pueden enviar eventos durante toda la sesión sin crear una nueva request para cada mensaje.
Configurar una sesión Realtime
La sesión puede actualizarse con instrucciones y modalidades de salida.
Ejemplo conceptual
{
"type": "session.update",
"session": {
"type": "realtime",
"instructions": "Responde de forma clara y breve.",
"output_modalities": ["audio"]
}
}
Texto y audio en Realtime API
Los modelos Realtime pueden trabajar con diferentes modalidades según el modelo y la sesión.
| Modalidad | Compatibilidad general |
|---|---|
| Texto input | Sí |
| Texto output | Sí |
| Audio input | Sí |
| Audio output | Sí |
| Imagen input | Disponible en modelos Realtime compatibles |
| Video | No soportado en gpt-realtime |
GPT-Realtime
OpenAI dispone de modelos diseñados específicamente para interacción Realtime.
Texto y audio en tiempo real
gpt-realtime
admite texto
y audio
como entrada
y salida,
además
de Function Calling.
La ficha actual
de gpt-realtime
publica
una ventana
de contexto
de 32.000 tokens
y hasta
4.096 tokens
de salida.
GPT-Realtime Mini
Para aplicaciones sensibles al costo, OpenAI también publica una variante Realtime más económica.
Menor costo para alto volumen
gpt-realtime-mini
también admite
texto y audio
en tiempo real
mediante
WebRTC,
WebSocket
o SIP.
Precios de modelos Realtime OpenAI
La facturación distingue tokens de texto y tokens de audio.
| Modelo | Texto input | Texto output |
|---|---|---|
| GPT-Realtime | $4.00 / 1M | $16.00 / 1M |
| GPT-Realtime Mini | $0.60 / 1M | $2.40 / 1M |
Realtime API puede facturar audio input y audio output de forma independiente al texto.
Cómo funciona un agente de voz con Realtime API
Un asistente de voz puede mantener una conversación continua sin depender de un pipeline separado de STT y TTS.
El usuario habla por el micrófono.
El audio entra en la sesión.
El modelo interpreta la conversación.
Puede llamar herramientas si necesita información externa.
La respuesta vuelve como audio.
Function Calling en Realtime API
Los modelos Realtime pueden solicitar funciones externas durante una sesión.
Voz conectada a sistemas reales
Un agente puede consultar un CRM, reservar una cita, buscar disponibilidad o ejecutar otra acción mientras mantiene la conversación.
Realtime API y llamadas SIP
Realtime API también dispone de endpoints orientados a llamadas SIP.
Aceptar llamadas entrantes
OpenAI permite aceptar una llamada entrante y configurar la sesión Realtime que la gestionará.
Soporte telefónico, reservas, recepcionistas virtuales y atención automatizada.
Realtime API OpenAI vs Streaming
Esta diferencia es importante para evitar confundir dos arquitecturas distintas.
| Aspecto | Realtime API | Responses Streaming |
|---|---|---|
| Sesión persistente | Sí | Durante una Response |
| Bidireccional | Sí | Principalmente servidor → cliente |
| Audio en vivo | Sí | No es su objetivo principal |
| WebRTC | Sí | No |
| WebSocket | Sí | No como arquitectura principal |
| Uso típico | Voz y experiencias live | Texto progresivo |
Realtime API vs STT + LLM + TTS
Una aplicación de voz también puede construirse mediante varios servicios separados.
| Aspecto | Realtime API | Pipeline tradicional |
|---|---|---|
| Audio input | Directo | STT separado |
| Razonamiento | Mismo sistema | LLM separado |
| Audio output | Directo | TTS separado |
| Latencia | Optimizada para interacción | Depende de múltiples servicios |
| Control modular | Más integrado | Mayor separación de componentes |
No expongas tu API key permanente al navegador
Una aplicación cliente no debería contener una API key privada de servidor.
El servidor controla la autenticación
Tu backend debe participar en la creación o autorización de sesiones y mantener las credenciales sensibles fuera del frontend.
Control sideband de sesiones Realtime
Una arquitectura avanzada puede mantener la conexión de audio del usuario mientras un backend controla la sesión por separado.
Cliente y servidor con roles diferentes
El cliente puede manejar audio mediante WebRTC, mientras el servidor mantiene control adicional de tools, instrucciones o lógica de negocio.
Por qué Realtime API ofrece menor latencia percibida
La interacción no necesita esperar a completar una cadena independiente de servicios.
La conversación puede ser continua
El usuario puede hablar, interrumpir y continuar dentro de una misma sesión activa.
Casos de uso de Realtime API OpenAI
Realtime API aporta mayor valor cuando el usuario necesita interacción inmediata.
Asistentes de voz: conversación natural en aplicaciones web y móviles.
Call centers: atender llamadas y consultar sistemas internos.
Reservas: asistentes que consultan disponibilidad durante la conversación.
Tutores: experiencias educativas conversacionales.
Soporte técnico: diagnóstico guiado en tiempo real.
Aplicaciones accesibles: interacción principalmente mediante voz.
Cuándo conviene usar Realtime API
Audio interactivo
El usuario habla y espera respuesta inmediata.
Sesión persistente
Necesitas múltiples intercambios dentro de una misma conexión.
Baja latencia
La experiencia depende de respuestas rápidas y naturales.
Cuándo no necesitas Realtime API
Chat tradicional
Responses API con streaming puede ser suficiente.
Procesamiento masivo
Batch API puede ser más apropiada.
Tarea individual larga
Background Mode puede resultar más sencillo.
Rate limits de modelos Realtime
Los modelos Realtime también están sujetos a límites según usage tier.
Los límites aumentan con el tier
La ficha actual
de gpt-realtime
publica límites
específicos
de RPM y TPM
que aumentan
según
el nivel de uso.
Buenas prácticas con Realtime API OpenAI
Mantén las API keys privadas en el backend.
Usa WebRTC para audio desde navegadores cuando corresponda.
Limita herramientas según usuario y contexto.
Diseña una estrategia de reconexión.
Registra errores, tool calls y eventos importantes.
Controla consumo de audio y duración de sesiones.
Documentación oficial de Realtime API OpenAI
Los modelos, eventos y transportes pueden evolucionar con nuevas versiones de la plataforma.
Realtime API
Consulta modelos Realtime, WebRTC, WebSocket, SIP, sesiones y function calling.
Consultar documentación oficial →Guías relacionadas con Realtime API OpenAI
Continúa explorando voz, streaming y herramientas de OpenAI API.
FAQ sobre Realtime API OpenAI
Respuestas sobre WebRTC, WebSocket, audio, voz, SIP y modelos Realtime.
Realtime API OpenAI permite construir sesiones de baja latencia con texto, audio, function calling y eventos bidireccionales.
Sí. OpenAI admite conexiones Realtime mediante WebRTC.
Sí. Los modelos Realtime pueden utilizarse mediante WebSocket para conexiones persistentes.
Sí. Los modelos Realtime están diseñados para recibir y producir audio en tiempo real.
Sí. Los modelos Realtime compatibles soportan Function Calling.
No. Streaming transmite progresivamente una Response, mientras Realtime API mantiene una sesión bidireccional de baja latencia.
OpenAI dispone
de modelos específicos
como
gpt-realtime
y variantes
Realtime optimizadas.
Sí.
OpenAI publica
gpt-realtime-mini
como una opción
de menor costo.
Sí. OpenAI dispone de integración SIP para llamadas Realtime.
No. Las credenciales privadas deben mantenerse en el backend y no exponerse al navegador.
Continúa con Speech-to-Text en OpenAI API
Ya sabes cómo construir sesiones Realtime con voz. El siguiente paso es profundizar en transcripción de audio, modelos speech-to-text y procesamiento de archivos de voz.
Ver Speech-to-Text →