
Entrada de voz y vídeo en directo, salida de voz por un solo socket, con 56 voces, llamadas de herramientas durante la conversación y tasas separadas de tokens de texto y audio.
Entrada de voz y vídeo en directo, salida de voz por un solo socket, con 56 voces, llamadas de herramientas durante la conversación y tasas separadas de tokens de texto y audio.
La sesión se configura con los eventos session.update a través del socket en lugar de parámetros de solicitud. Los tokens de texto y audio facturan a tarifas separadas.
También conocido como Alibaba Cloud Qwen3.8 Omni Flash Realtime
qwen3-8-omni-flash-realtime/v1/realtimeqwen3.8-omni-flash-realtimealibaba/qwen3-8-omni-flash-realtimeTarifas de pago por uso en vivo del catálogo de EmpirioLabs. Solo pagas por lo que usas, sin mínimo mensual.
Qwen3.8 Omni Flash Realtime mantiene una conversación en vivo a través de un WebSocket en wss://api.empiriolabs.ai/v1/realtime?model=qwen3-8-omni-flash-realtime, no a través de los endpoints HTTP. Conéctate con el id de modelo qwen3-8-omni-flash-realtime y envía tu clave de API de EmpirioLabs como cabecera Authorization: Bearer en el handshake. El audio viaja en ambos sentidos como PCM de 16 bits en base64. Un navegador no puede establecer cabeceras en un WebSocket, así que abre esta conexión desde tu servidor y retransmite el audio al navegador por tu propio socket. Consigue una clave de API en el panel de EmpirioLabs.
import asyncio, json, os, websockets
async def main():
async with websockets.connect(
"wss://api.empiriolabs.ai/v1/realtime?model=qwen3-8-omni-flash-realtime",
additional_headers=[
("Authorization", f"Bearer {os.environ['EMPIRIOLABS_API_KEY']}"),
],
max_size=None,
) as ws:
print(json.loads(await ws.recv())["type"]) # session.created
await ws.send(json.dumps({
"type": "conversation.item.create",
"item": {
"type": "message",
"role": "user",
"content": [{"type": "input_text", "text": "Say hello."}],
},
}))
await ws.send(json.dumps({"type": "response.create"}))
async for raw in ws:
event = json.loads(raw)
if event["type"] == "response.audio.delta":
... # base64 audio chunk, append to your playback buffer
elif event["type"] == "response.done":
break
asyncio.run(main())Parámetros de solicitud compatibles con la API de Qwen3.8 Omni Flash Realtime en EmpirioLabs. Los valores por defecto se aplican cuando se omite un campo.
| Parámetro | Tipo | Predeterminado | Rango / valores | Descripción |
|---|---|---|---|---|
| voice | enum | Tina | Tina, Cindy, Liora Mira, Raymond, Zane, Katerina, Ryan, Mia, ... | Voz hablada durante la sesión. Configúralo con session.update antes de que el modelo produzca audio. Estas voces son específicas de este modelo. |
| instructions | string | - | - | Guía del sistema sobre cómo debe comportarse y hablar el modelo durante la conversación. |
| modalities | string | ["text","audio"] | - | Qué tipos de salida devolve el modelo durante un turno. Corta el audio para una respuesta solo de texto. |
| input_audio_format | enum | pcm16 | pcm16 | Codificación del audio que añades al búfer de entrada: PCM base64 de 16 bits a 16 kHz. |
| output_audio_format | enum | pcm24 | pcm24 | Codificación del audio que el modelo transmite de vuelta: PCM de 16 bits a 24 kHz. |
| turn_detection | string | {"type":"server_vad"} | - | Detección de actividad de voz: decide cuándo has terminado de hablar y el modelo debe responder. Está activado por defecto como server_vad, lo que termina tu turno... |
| max_response_output_tokens | number | - | 1 a 65536 | El mayor número de tokens de salida que una respuesta puede usar: de 1 a 65536, donde un número mayor es 65536, o "inf" para el límite propio del modelo. También se... |
| temperature | number | - | 0 a 1.99 | Temperatura de muestreo. 0 es determinista y 1,99 es la aleatoriedad máxima. Cuando se omite, se aplica el valor predeterminado propio del modelo. |
| top_p | number | - | 0.01 a 1 | Masa de probabilidad de muestreo del núcleo. Valores más bajos hacen que las salidas sean más enfocadas. Cuando se omiten, se aplica el valor predeterminado propio... |
| top_k | integer | - | 1 a 100 | Muestrea solo de los K tokens más probables. Cuando se omite, se aplica el valor predeterminado propio del modelo. |
| repetition_penalty | number | - | 0.1 a 2 | Valores más altos desincentivan la repetición de frases, y 1 no aplica penalización. Cuando se omite, se aplica el valor predeterminado propio del modelo. |
| presence_penalty | number | - | -2 a 2 | Penalización por tokens que ya aparecieron en el texto generado. Los valores positivos fomentan nuevos temas. Cuando se omiten, se aplica el valor predeterminado... |
| seed | integer | - | 0 a 2147483647 | Semilla aleatoria para un muestreo más reproducible. Reutilizar una semilla con la misma petición devuelve una salida similar, no siempre idéntica. |
| video_representation_compact | enum | - | none, normal | Cómo el modelo lee los fotogramas de vídeo que envías: ninguno mantiene el detalle completo, y el normal lee los mismos fotogramas para una cuarta parte de los... |
Voz dúplex completo sobre un WebSocket en wss://api.empiriolabs.ai/v1/realtime?model=qwen3-8-omni-flash-realtime, autenticada con la cabecera ordinaria de Portador de Autorización. Configura la sesión con session.update sobre el socket: voz, instrucciones, modalidades, detección de giros, muestreo y el límite de longitud de respuesta, max_response_output_tokens.
Las voces de este modelo no son del mismo conjunto que las de los modelos Qwen3.5 Omni en tiempo real. Elige una de la lista de voces en lugar de llevar una voz al otro lado, o déjala sin configurar y se te proporciona la predeterminada.
Los tokens de audio y texto se valoran por separado en ambas direcciones, y cada turno completado se factura por separado según el uso que reporta el modelo.
En EmpirioLabs, Qwen3.8 Omni Flash Realtime se factura por uso: Entrada: audio $1.86 por 1M de tokens de entrada de audio; Entrada $0.46 por 1M de tokens de prompt; Salida $1.40 por 1M de tokens generados; Salida: audio $3.74 por cada 1M de tokens de audio generados. La tabla de tarifas en vivo de esta página siempre coincide con lo que cobra la API.
Qwen3.8 Omni Flash Realtime admite una ventana de contexto de 192K tokens con hasta 65.536 tokens de salida por respuesta.
Qwen3.8 Omni Flash Realtime se sirve a través de WEBSOCKET /v1/realtime en api.empiriolabs.ai con autenticación estándar de token Bearer.
Abre el playground de EmpirioLabs y pulsa Start session para probarlo en tu navegador. Qwen3.8 Omni Flash Realtime funciona sobre un WebSocket en lugar de una petición y una respuesta, así que para integrarlo empieza por la guía rápida de voz en tiempo real. Conéctate desde tu servidor con tu clave de API de EmpirioLabs y el id de modelo qwen3-8-omni-flash-realtime, y luego transmite audio en ambos sentidos.
Crea una cuenta de EmpirioLabs y genera una clave en API Keys en el panel. La facturación es con créditos de pago por uso, así que solo pagas por las solicitudes que haces.
Consulta nuestros precios o contacta con nosotros si quieres que tu propio modelo se implemente en nuestra pila.