
Transcripción sintonizada para mensajes de voz y entrada de voz por un socket, devolviendo cada enunciado como una transcripción completa cuando el hablante hace una pausa.
Transcripción sintonizada para mensajes de voz y entrada de voz por un socket, devolviendo cada enunciado como una transcripción completa cuando el hablante hace una pausa.
Transmite audio pcm16 a 16 kHz por el socket. Cada enunciado se devuelve completo cuando el hablante hace una pausa, o también mientras se pronuncia con partial_results. Establece el idioma y la pausa que termina una enunciación en session.update.
También conocido como Qwen Audio ASR Message, Alibaba Cloud Qwen Audio 3.1 ASR Message
qwen-audio-3-1-asr-message/v1/realtimeqwen-audio-3.1-asr-messagealibaba/qwen-audio-3-1-asr-messageTarifas de pago por uso en vivo del catálogo de EmpirioLabs. Solo pagas por lo que usas, sin mínimo mensual.
Qwen Audio 3.1 ASR Message transcribe un flujo de audio en vivo a través de un WebSocket en wss://api.empiriolabs.ai/v1/realtime?model=qwen-audio-3-1-asr-message, no a través de los endpoints HTTP. Conéctate con el id de modelo qwen-audio-3-1-asr-message y envía tu clave de API de EmpirioLabs como cabecera Authorization: Bearer en el handshake. Añade audio PCM de 16 bits en base64 y lee los eventos de transcripción mientras la persona sigue hablando. 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=qwen-audio-3-1-asr-message",
additional_headers=[
("Authorization", f"Bearer {os.environ['EMPIRIOLABS_API_KEY']}"),
],
max_size=None,
) as ws:
print(json.loads(await ws.recv())["type"]) # session.created
import base64
# 16-bit PCM microphone audio, base64 encoded, in small chunks.
for chunk in read_microphone_chunks():
await ws.send(json.dumps({
"type": "input_audio_buffer.append",
"audio": base64.b64encode(chunk).decode(),
}))
await ws.send(json.dumps({"type": "input_audio_buffer.commit"}))
async for raw in ws:
event = json.loads(raw)
if event["type"].endswith("input_audio_transcription.delta"):
# "text" is settled transcript; "stash" is still in progress.
if event.get("text"):
print(event["text"], end="", flush=True)
asyncio.run(main())Parámetros de solicitud compatibles con la API de Qwen Audio 3.1 ASR Message en EmpirioLabs. Los valores por defecto se aplican cuando se omite un campo.
| Parámetro | Tipo | Predeterminado | Rango / valores | Descripción |
|---|---|---|---|---|
| input_audio_format | enum | pcm16 | pcm16 | Codificación del audio que añades al búfer de entrada: PCM base64 de 16 bits, mono, a 16 kHz. |
| language | enum | auto | auto, zh, en, ja, ko, vi, th, id, ms, tl, hi, ar, fr, de, es,... | Lenguaje del habla, o auto para detectarlo en el audio. Configúralo con el parámetro de consulta de lenguaje de la URL de conexión, o como... |
| silence_duration_ms | integer | 800 | 200 a 6000 | La pausa, en milisegundos, que termina una frase, de 200 a 6000. Una pausa más corta resuelve cada frase antes; una más larga mantiene una pausa dentro de una frase.... |
| threshold | number | - | 0 a 1 | Qué tan clara debe ser la voz antes de transcribirse, de 0,0 a 1,0. Un valor más alto ignora más ruido de fondo y puede perder el habla baja. Cuando se omite, se... |
| noise_reduction | enum | far_field | far_field, near_field | El micrófono para el que está ajustada la detección de voz: near_field para un auricular o un teléfono cerca, far_field para un portátil o micrófono de habitación.... |
| keep_dialect | boolean | false | - | Mantiene las palabras del dialecto chino tal como se hablan. Cuando está apagado, el habla dialectal se escribe en mandarín estándar. |
| partial_results | boolean | false | - | También envía cada enunciado mientras se pronuncia, como conversation.item.input_audio_transcription.delta eventos que llevan el enunciado hasta el momento, que aún... |
Transcripción de mensajes de voz a través de un WebSocket en wss://api.empiriolabs.ai/v1/realtime?model=qwen-audio-3-1-asr-message, autenticada con la cabecera ordinaria de Portador de Autorización.
Transmite audio mono pcm16 a 16 kHz con input_audio_buffer.append. La detección de actividad de voz decide dónde termina cada enunciado, por lo que no hay compromiso para enviar.
Envía session.update justo después de session.created, antes del primer audio, con cualquiera de estos ajustes: input_audio_transcription.language (o el parámetro de consulta language de la URL de conexión; auto por defecto), turn_detection.silence_duration_ms (200 a 6000, por defecto 800) y turn_detection.threshold (0.0 a 1.0), y input_audio_noise_reduction (near_field o far_field). keep_dialect mantiene las palabras en dialecto chino tal como se pronuncian. Un ajuste cambiado mientras el audio está en streaming termina la expresión en curso y se aplica al audio enviado después.
Cada enunciado llega completo, como un evento conversation.item.input_audio_transcription.completed una vez que el hablante hace una pausa. Configura partial_results para que también lo reciba mientras se dice, como conversation.item.input_audio_transcription.delta eventos que aún pueden cambiar antes de que se asiente. Para subtítulos en vivo, qwen-audio-3-1-asr-stream siempre los envía.
Los tokens de entrada y salida se valoran por 1M, y cada enunciado completado se factura por sí solo según el uso que reporta el modelo.
En EmpirioLabs, Qwen Audio 3.1 ASR Message se factura por uso: Entrada $1.86 por 1M de tokens de entrada de audio; Salida $1.40 por 1M de tokens generados. La tabla de tarifas en vivo de esta página siempre coincide con lo que cobra la API.
Qwen Audio 3.1 ASR Message 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. Qwen Audio 3.1 ASR Message 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 qwen-audio-3-1-asr-message, 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.