GPT Realtime 2.1 Mini es el miembro rentable de la familia realtime de OpenAI: un modelo de razonamiento destilado para interacciones de voz realtime más rápidas y de menor coste, que lleva el razonamiento y el uso de herramientas al nivel mini.
- Entrada
- audio texto $0.6/M
- Salida
- audio texto $2.4/M
- Entrada de audio
- $10/M
- Salida de audio
- $20/M
- Lectura de caché
- $0.06/M
- Corte de conocimiento
- 2024-09
El precio en contexto
Posición del precio entre 6 modelos comparables
La barra muestra dónde queda el precio de este modelo entre todos los modelos del mismo tipo en Synthorai. En cada extremo se nombra el más barato y el más caro. Son tarifas base; los descuentos por lote, región y escritura en caché están en la página de precios.
Especificaciones y límites
Tokens
| Ventana de contexto (especificación del proveedor) | 128.000 |
|---|---|
| Salida máxima (especificación del proveedor) | 32.000 |
| Corte de conocimiento | 2024-09 |
Caché de prompts
| Modo | automático |
|---|---|
| Prefijo mín. | 1024 |
| Duración | 5-10 min, hasta 1 hora |
Tiempo real
| Sesión | Voz a voz con razonamiento y uso de herramientas · caché de prompts · contexto de 128K |
|---|
Modelo
| Modalidades | audio + texto → audio + texto |
|---|
- Modelo realtime de razonamiento destilado, más rápido y económico, que lleva el razonamiento y el uso de herramientas al nivel mini
- caché de prompts admitida
- contexto de 128k
Usa GPT Realtime 2.1 Mini en 30 segundos
Compatible con OpenAI Realtime: conéctate por WebSocket y envía y recibe audio en streaming. WS /v1/realtime
import asyncio, base64, json, websockets
URL = "wss://synthorai.io/v1/realtime?model=gpt-realtime-2.1-mini"
# Send ONLY the Authorization header - the beta protocol is retired.
HEADERS = {"Authorization": "Bearer sk-syn-..."}
async def main():
async with websockets.connect(URL, additional_headers=HEADERS) as ws:
# 1) configure the speech-to-speech session
await ws.send(json.dumps({
"type": "session.update",
"session": {
"type": "realtime",
"output_modalities": ["audio"],
"audio": {"output": {"voice": "alloy"}},
},
}))
# 2) send input audio (base64 PCM16), then request a spoken reply
await ws.send(json.dumps({"type": "input_audio_buffer.append", "audio": pcm16_b64}))
await ws.send(json.dumps({"type": "input_audio_buffer.commit"}))
await ws.send(json.dumps({"type": "response.create"}))
# 3) stream the model's audio (and text) back
async for raw in ws:
ev = json.loads(raw)
if ev["type"] == "response.audio.delta":
play(base64.b64decode(ev["delta"])) # audio out
elif ev["type"] == "response.done":
break
asyncio.run(main())import WebSocket from "ws";
const ws = new WebSocket("wss://synthorai.io/v1/realtime?model=gpt-realtime-2.1-mini", {
// Send ONLY the Authorization header — the beta protocol is retired.
headers: { Authorization: "Bearer sk-syn-..." },
});
ws.on("open", () => {
// configure the speech-to-speech session
ws.send(JSON.stringify({ type: "session.update", session: {
type: "realtime", output_modalities: ["audio"], audio: { output: { voice: "alloy" } },
} }));
// send input audio (base64 PCM16), then request a spoken reply
ws.send(JSON.stringify({ type: "input_audio_buffer.append", audio: pcm16Base64 }));
ws.send(JSON.stringify({ type: "input_audio_buffer.commit" }));
ws.send(JSON.stringify({ type: "response.create" }));
});
ws.on("message", (raw) => {
const ev = JSON.parse(raw.toString());
if (ev.type === "response.audio.delta") playAudio(Buffer.from(ev.delta, "base64")); // audio out
else if (ev.type === "response.done") ws.close();
});# Realtime is a WebSocket protocol - use a WS client such as websocat.
# Each line below is one OpenAI Realtime event (JSON) sent to the session.
websocat -H 'Authorization: Bearer sk-syn-...' \
'wss://synthorai.io/v1/realtime?model=gpt-realtime-2.1-mini' <<'EOF'
{"type":"session.update","session":{"type":"realtime","output_modalities":["audio"],"audio":{"output":{"voice":"alloy"}}}}
{"type":"input_audio_buffer.append","audio":"<base64-pcm16>"}
{"type":"input_audio_buffer.commit"}
{"type":"response.create"}
EOF
# Responses stream back as response.audio.delta (base64 audio out) … response.donepackage main
import (
"net/http"
"github.com/gorilla/websocket"
)
func main() {
h := http.Header{}
h.Set("Authorization", "Bearer sk-syn-...")
// Send ONLY the Authorization header — the beta protocol is retired.
c, _, err := websocket.DefaultDialer.Dial("wss://synthorai.io/v1/realtime?model=gpt-realtime-2.1-mini", h)
if err != nil {
panic(err)
}
defer c.Close()
// configure the speech-to-speech session, send audio, request a spoken reply
c.WriteJSON(map[string]any{"type": "session.update", "session": map[string]any{
"type": "realtime", "output_modalities": []string{"audio"},
"audio": map[string]any{"output": map[string]any{"voice": "alloy"}}}})
c.WriteJSON(map[string]any{"type": "input_audio_buffer.append", "audio": pcm16B64})
c.WriteJSON(map[string]any{"type": "input_audio_buffer.commit"})
c.WriteJSON(map[string]any{"type": "response.create"})
for {
var ev struct {
Type string `json:"type"`
Delta string `json:"delta"`
}
if err := c.ReadJSON(&ev); err != nil {
return
}
if ev.Type == "response.audio.delta" {
playAudio(ev.Delta) // base64 audio out
} else if ev.Type == "response.done" {
return
}
}
}import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.WebSocket;
import java.util.concurrent.CompletionStage;
// JDK built-in WebSocket — no extra dependency needed.
WebSocket ws = HttpClient.newHttpClient().newWebSocketBuilder()
.header("Authorization", "Bearer sk-syn-...")
// Send ONLY the Authorization header — the beta protocol is retired.
.buildAsync(URI.create("wss://synthorai.io/v1/realtime?model=gpt-realtime-2.1-mini"), new WebSocket.Listener() {
public CompletionStage<?> onText(WebSocket w, CharSequence data, boolean last) {
// handle response.audio.delta (base64 audio out) / response.done here
w.request(1);
return null;
}
}).join();
// configure the session, send input audio, then request a spoken reply
ws.sendText("{\"type\":\"session.update\",\"session\":{\"type\":\"realtime\",\"output_modalities\":[\"audio\"],\"audio\":{\"output\":{\"voice\":\"alloy\"}}}}", true);
ws.sendText("{\"type\":\"input_audio_buffer.append\",\"audio\":\"<base64-pcm16>\"}", true);
ws.sendText("{\"type\":\"input_audio_buffer.commit\"}", true);
ws.sendText("{\"type\":\"response.create\"}", true);Acerca de GPT Realtime 2.1 Mini
- Conserva la ventana de contexto de 128K tokens y los 32K tokens de salida máxima de la generación 2.1, admite llamada a funciones y caché de prompts, y fija el precio de la entrada de audio en menos de un tercio de la tarifa del buque insignia.
- La orientación de OpenAI para elegir entre ambos es directa: tome el 2.1 completo cuando quiera el razonamiento realtime, el uso de herramientas y el seguimiento de instrucciones más potentes, y este cuando quiera una opción más rápida y más rentable.
- Acepta entrada de audio y texto sobre WebRTC, WebSocket o SIP, así que se aplican las mismas opciones de transporte y los mismos patrones de agente de voz: detección de turnos basada en el silencio o semántica, truncado en el servidor ante una interrupción, declaraciones de herramientas a nivel de sesión o de respuesta.
- OpenAI informó en esta versión de una reducción de al menos el 25% en la latencia p95 en los modelos de voz realtime gracias a una caché mejorada.
- Es también el destino de migración designado para los modelos realtime mini anteriores, cuyo apagado está previsto para enero de 2027.
- Eso lo convierte en la elección natural para asistentes de voz siempre activos y agentes de voz de alto volumen de cara al cliente.
- Synthorai lo expone a través del mismo endpoint WebSocket /v1/realtime compatible con OpenAI que el resto de la línea realtime.
Preguntas frecuentes
¿Se puede probar gratis la API de GPT Realtime 2.1 Mini?
GPT Realtime 2.1 Mini está ahora mismo en beta por invitación: el acceso se concede previa solicitud, no con el registro abierto. Pídelo desde la consola de Synthorai; una vez aprobado, se aplican los precios normales de pago por uso, sin suscripción.
¿En qué destaca GPT Realtime 2.1 Mini?
Razonamiento destilado para voz en tiempo real; entrada de audio a menos de un tercio de la insignia; conserva 128K de contexto, herramientas y caché de prompts. En la sección «Acerca de» tienes la visión completa, según las notas de lanzamiento del propio proveedor.
¿Cuánto cuesta GPT Realtime 2.1 Mini?
GPT Realtime 2.1 Mini cuesta $0.6 por millón de tokens de entrada y $2.4 por millón de tokens de salida en Synthorai. Es el precio de lista del proveedor, sin recargo de plataforma. Los tokens de entrada en caché se facturan a $0.06/M.
¿Cómo me conecto a la API de GPT Realtime 2.1 Mini?
GPT Realtime 2.1 Mini es un modelo de voz a voz: conéctate por WebSocket a wss://synthorai.io/v1/realtime?model=gpt-realtime-2.1-mini con el SDK de OpenAI Realtime (o con un WebSocket directo) y envía y recibe audio en streaming. No es una subida de archivo con POST /v1/audio/transcriptions. Autentícate con tu clave sk-syn y envía solo la cabecera Authorization (el protocolo beta está retirado).
¿Cómo obtengo acceso a GPT Realtime 2.1 Mini?
GPT Realtime 2.1 Mini está en beta por invitación: solicita acceso desde la consola de Synthorai. Una vez aprobado, funciona como cualquier otro modelo: apunta tu SDK de OpenAI a base_url="https://synthorai.io/v1" y pon model="gpt-realtime-2.1-mini".
Modelos relacionados
Comparar
Todos los valores de esta página están transcritos de la documentación del propio proveedor, enlazada arriba, e indican la fecha en que se comprobaron. Los precios se comparan con los de todo el catálogo; cuando los proveedores definen una especificación de forma distinta, se muestra el valor indicando la diferencia en lugar de llevarlo a un gráfico. Aquí no hay mediciones nuestras ni puntuaciones.