Todos los productos
Search
Centro de documentos

Alibaba Cloud Model Studio:Eventos de cliente para Qwen-ASR-Realtime

Última actualización: Oct 12, 2026

Esta página documenta los eventos de cliente a servidor para la API WebSocket en tiempo real de Qwen-ASR. Cada sección cubre un tipo de evento, sus parámetros y las respuestas del servidor.

Para obtener una descripción general de las funciones y código de ejemplo completo, consulte Reconocimiento de voz en tiempo real - Qwen. Para eventos de servidor a cliente, consulte Eventos de servidor para Qwen-ASR-Realtime.

Ciclo de vida del evento

Una sesión típica sigue esta secuencia:

  1. Establezca una conexión WebSocket.
  2. Envíe session.update para configurar el formato de audio, el idioma y los ajustes de VAD.
  3. Envíe input_audio_buffer.append repetidamente para transmitir datos de audio.
  4. En modo manual, envíe input_audio_buffer.commit para activar el reconocimiento de una expresión completa. En modo VAD, el servidor activa el reconocimiento automáticamente.
  5. Envíe session.finish para finalizar la sesión y, a continuación, desconéctese tras recibir la respuesta session.finished.

session.update

Configura la sesión. Envíe este evento inmediatamente después de establecer la conexión WebSocket para definir el formato de audio, el idioma y los parámetros de VAD. Si se omite, se aplican los valores predeterminados.

El servidor responde con un evento session.updated en caso de éxito.

Parámetros

ParámetroTipoObligatorioDescripción
typestringSíValor fijo: session.update.
event_idstringSíUn ID de evento único.
sessionobjectSíObjeto de configuración de sesión. Consulte la tabla de configuración de sesión a continuación.

Configuración de sesión

ParámetroTipoObligatorioDescripción
input_audio_formatstringNoFormato de codificación de audio. Valores válidos: pcm, opus. Valor predeterminado: pcm.
sample_rateintegerNoTasa de muestreo de audio en Hz. Valores válidos: 16000, 8000. Valor predeterminado: 16000. Establecer 8000 provoca un sobremuestreo en el servidor a 16,000 Hz (retraso menor). Use 8000 solo para audio nativo de 8,000 Hz, como telefonía.
input_audio_transcriptionobjectNoConfiguración de reconocimiento de voz.
input_audio_transcription.languagestringNoIdioma del audio. Consulte la tabla de idiomas admitidos a continuación.
input_audio_transcription.corpus.textstringNoTexto de contexto para sesgo contextual: texto de fondo, vocabularios de entidades o material de referencia que mejora la precisión del reconocimiento. Máximo: 10,000 tokens.
turn_detectionobjectNoConfiguración de VAD. Establezca en null para modo manual. Si está presente, modo VAD está habilitado.
turn_detection.typestringObligatorio cuando se establece turn_detectionValor fijo: server_vad.
turn_detection.thresholdfloatNoUmbral de sensibilidad de VAD. Valor predeterminado: 0.2. Rango válido: [-1, 1]. Los valores más bajos aumentan la sensibilidad (pueden activarse con ruido de fondo). Los valores más altos reducen la sensibilidad y evitan activaciones false en entornos ruidosos. Consulte los ajustes preestablecidos de VAD recomendados a continuación.
turn_detection.silence_duration_msintegerNoDuración del silencio en milisegundos que marca el final de la expresión. Valor predeterminado: 800. Rango válido: [200, 6000]. Duraciones más cortas (por ejemplo, 300 ms) aceleran las respuestas pero pueden dividir pausas naturales. Duraciones más largas (por ejemplo, 1,200 ms) gestionan mejor las pausas pero aumentan la latencia. Consulte los ajustes preestablecidos de VAD recomendados a continuación.

Preajustes de VAD recomendados

Utilice estos preajustes como puntos de partida. Ajústelos según sus resultados:

Preajustethresholdsilence_duration_msIdeal para
Baja latencia0.0400Interacciones rápidas como comandos de voz o asistencia de agente, donde las respuestas rápidas son más importantes que gestionar pausas largas
Equilibrado (predeterminado)0.2800Transcripción de uso general con un equilibrio entre capacidad de respuesta y precisión

Idiomas admitidos

CodeIdioma
zhChino (mandarín, sichuanés, minnan y wu)
yueCantonés
enInglés
jaJaponés
deAlemán
koCoreano
ruRuso
frFrancés
ptPortugués
arÁrabe
itItaliano
esEspañol
hiHindi
idIndonesio
thTailandés
trTurco
ukUcraniano
viVietnamita
csCheco
daDanés
filFilipino
fiFinlandés
isIslandés
msMalayo
noNoruego
plPolaco
svSueco

Ejemplo

{
    "event_id": "event_123",
    "type": "session.update",
    "session": {
        "input_audio_format": "pcm",
        "sample_rate": 16000,
        "input_audio_transcription": {
            "language": "zh"
        },
        "turn_detection": {
            "type": "server_vad",
            "threshold": 0.0,
            "silence_duration_ms": 400
        }
    }
}

input_audio_buffer.append

Transmite un fragmento de audio al búfer de entrada del servidor: el evento principal para enviar datos de audio.

El comportamiento difiere según el modo de interacción:

  • Modo VAD: El servidor supervisa el búfer en busca de actividad de voz y activa el reconocimiento automáticamente.
  • Modo manual: El cliente controla los límites de las expresiones. Envíe fragmentos más pequeños para reducir la latencia.

ImportanteEl campo audio contiene datos codificados en Base64. En modo manual, el tamaño máximo por evento es de 15 MiB. El servidor no envía una respuesta de confirmación.

Parámetros

ParámetroTipoObligatorioDescripción
typestringSíValor fijo: input_audio_buffer.append.
event_idstringSíUn ID de evento único.
audiostringSíDatos de audio codificados en Base64.

Ejemplo

{
    "event_id": "event_2728",
    "type": "input_audio_buffer.append",
    "audio": "<Base64-encoded-audio-data>"
}

input_audio_buffer.commit

Activa el reconocimiento de todo el audio en el búfer como una sola expresión. Utilícelo en modo manual cuando su aplicación controle los límites de las expresiones (por ejemplo, pulsar para hablar).

Deshabilitado en modo VAD.

El servidor responde con un evento input_audio_buffer.committed en caso de éxito.

Parámetros

ParámetroTipoObligatorioDescripción
typestringSíValor fijo: input_audio_buffer.commit.
event_idstringSíUn ID de evento único.

Ejemplo

{
    "event_id": "event_789",
    "type": "input_audio_buffer.commit"
}

session.finish

Finaliza la sesión. La respuesta del servidor depende de la detección de voz:

  • Voz detectada: El servidor completa el reconocimiento final, envía un evento conversation.item.input_audio_transcription.completed con el resultado y luego envía un evento session.finished.
  • No se detectó voz: El servidor envía session.finished directamente.

Después de recibir session.finished, desconecte la conexión WebSocket.

Parámetros

ParámetroTipoObligatorioDescripción
typestringSíValor fijo: session.finish.
event_idstringSíUn ID de evento único.

Ejemplo

{
    "event_id": "event_341",
    "type": "session.finish"
}