Referencia de eventos del servidor de Qwen-Audio-Realtime API. Todos los eventos del servidor incluyen los campos comunes event_id (generado automáticamente por el servidor) y type (tipo de evento).
Guía del usuario: Conversación de voz en tiempo real (Qwen-Audio-Realtime). Para conocer la secuencia de interacción de eventos, consulte Conexión mediante WebSocket.
Para usar el SDK de WebSocket, consulte SDK de Android, SDK de iOS y SDK de HarmonyOS. Para seleccionar un modelo y un protocolo, consulte Descripción general.
Descripción: Devuelto cuando una solicitud falla u ocurre un error de servicio. Los errores del cliente (
Descripción: El primer evento enviado por el servidor después de establecer la conexión. Contiene la configuración predeterminada de la sesión.
Descripción: Devuelto después de que una solicitud
Descripción: Enviado cuando la Detección de Actividad de Voz (VAD) detecta el inicio del habla en modo server_vad / smart_turn.
Descripción: Enviado cuando VAD detecta el final del habla en modo server_vad / smart_turn.
Descripción: El búfer de audio se ha confirmado como un mensaje de usuario, ya sea mediante una confirmación de pulsar para hablar o una confirmación automática de VAD.
Descripción: El búfer de audio se ha borrado (solo modo pulsar para hablar).
Descripción: Se creó un nuevo elemento de conversación. Se activa cuando se confirma el audio del usuario, el cliente crea manualmente un elemento o comienza una respuesta del asistente.
Descripción: Se eliminó un elemento de conversación. Devuelto como confirmación después de que el cliente envía un evento
Descripción: Un elemento de conversación se recuperó correctamente. Devuelto después de que el cliente envía un evento
Descripción: Resultado incremental de transcripción de Reconocimiento Automático del Habla (ASR), transmitido durante el reconocimiento de voz. Incluye información de detección de emociones e idioma.
Descripción: Resultado final de la transcripción ASR. El texto transcrito se escribe en el campo
Descripción: La transcripción ASR falló.
Descripción: Modo smart_turn únicamente. Resultado de transcripción incremental para audio ambiental. Cuando VAD detecta actividad de voz pero el análisis semántico clasifica el turno como inválido (por ejemplo, ruido de fondo o muletillas como "hmm" o "eh"), el resultado ASR se reenvía al cliente como un evento ambiental. Este evento no está vinculado a ningún elemento de conversación. El
Descripción: Modo smart_turn únicamente. Resultado final de transcripción para audio ambiental. Emparejado con el evento delta correspondiente para marcar el final de un segmento de transcripción de audio ambiental. Este resultado no se escribe en el contexto de la conversación.
Descripción: Enviado cuando comienza una ronda de inferencia del modelo.
Descripción: Se agregó un nuevo elemento de salida a la respuesta. El tipo de elemento de salida es
Descripción: Se agregó una nueva parte de contenido a un elemento de salida.
Descripción: Evento delta de texto en modo solo texto. Transmite fragmentos de texto de forma incremental.
Descripción: Evento de finalización de salida de texto en modo solo texto.
Descripción: Evento delta de transcripción en modo de audio. Transmite fragmentos de transcripción de forma incremental.
Descripción: Evento de finalización de salida de transcripción en modo de audio.
Descripción: para la conexión mediante WebSocket, es un evento de datos de audio incrementales en modo de audio. El campo
Descripción: Evento de finalización de salida de audio en modo de audio. No contiene datos de audio.
Descripción: Una parte de contenido dentro de un elemento de salida ha finalizado.
Descripción: Un elemento de salida dentro de la respuesta ha finalizado.
Descripción: Delta de argumentos de Function Calling. Cuando el modelo decide invocar una herramienta, el servidor primero envía
Descripción: Enviado cuando la salida de argumentos de Function Calling está completa. Después de recibir este evento, el cliente debe: ejecutar la herramienta correspondiente, escribir el resultado en la conversación mediante
Descripción: Una ronda de inferencia ha finalizado.
Descripción: El proceso de registro de impresión de voz está en curso de forma asíncrona.
Descripción: El proceso de registro de impresión de voz se ha completado correctamente.
Descripción: El registro de impresión de voz falló. Las llamadas de conversación normales no se bloquean.
Esta página es la referencia de eventos de Qwen-Audio-Realtime. Las definiciones de eventos se basan en la conexión mediante WebSocket. AOQ y WebRTC usan sus respectivos canales de datos para enviar y recibir eventos del modelo, y pistas de medios para transmitir medios. Primero consulte Conexión mediante WebSocket, Conexión mediante WebRTC o Conexión mediante AOQ.
error
Descripción: Devuelto cuando una solicitud falla u ocurre un error de servicio. Los errores del cliente (invalid_request_error) mantienen la conexión abierta. Los errores del servidor (server_error) terminan la conexión.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre error.errorobjectDetalles del error.
Propiedades type stringTipo de error, como invalid_request_error (error del cliente) o server_error (error del servidor).codestringCódigo de error.messagestringMensaje de error.paramstringEl parámetro asociado con el error. |
session.created
Descripción: El primer evento enviado por el servidor después de establecer la conexión. Contiene la configuración predeterminada de la sesión.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre session.created.sessionobjectConfiguración de la sesión.
Propiedades object stringSiempre realtime.session.modelstringNombre del modelo.modalitiesarrayModalidades de salida del modelo.voicestringVoz utilizada para la generación de audio. Ya sea un nombre de voz del sistema o el voice_id de una voz clonada.input_audio_transcriptionobjectConfiguración de transcripción de audio.
Propiedades model stringModelo de transcripción, como fun-asr.objectConfiguración de detección de turnos (VAD).idstringIdentificador único de sesión. |
session.updated
Descripción: Devuelto después de que una solicitud session.update se procesa correctamente. Contiene la configuración completa actualizada de la sesión. Si la solicitud falla, se devuelve un evento error en su lugar.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre session.updated.sessionobjectConfiguración completa de la sesión después de la actualización. Comparte la misma estructura que el objeto de sesión en session.created. |
input_audio_buffer.speech_started
Descripción: Enviado cuando la Detección de Actividad de Voz (VAD) detecta el inicio del habla en modo server_vad / smart_turn.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre input_audio_buffer.speech_started.audio_start_msintegerMarca de tiempo en milisegundos cuando comenzó el habla.item_idstringID del elemento que se creará cuando se confirme este segmento de voz. |
input_audio_buffer.speech_stopped
Descripción: Enviado cuando VAD detecta el final del habla en modo server_vad / smart_turn.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre input_audio_buffer.speech_stopped.audio_end_msintegerMarca de tiempo en milisegundos cuando terminó el habla.item_idstringID del elemento de mensaje de usuario que se creará.reasonstringDevuelto solo en modo smart_turn. Cuando se establece en turn_invalid, indica que el turno actual se clasificó como inválido (sin contenido semántico) y no se activará la inferencia. Este campo está ausente para turnos válidos. |
input_audio_buffer.committed
Descripción: El búfer de audio se ha confirmado como un mensaje de usuario, ya sea mediante una confirmación de pulsar para hablar o una confirmación automática de VAD.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre input_audio_buffer.committed.previous_item_idstringID del elemento de conversación anterior.item_idstringID del elemento de mensaje de usuario creado. |
input_audio_buffer.cleared
Descripción: El búfer de audio se ha borrado (solo modo pulsar para hablar).
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre input_audio_buffer.cleared. |
conversation.item.created
Descripción: Se creó un nuevo elemento de conversación. Se activa cuando se confirma el audio del usuario, el cliente crea manualmente un elemento o comienza una respuesta del asistente.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre conversation.item.created.previous_item_idstringID del elemento de conversación anterior.itemobjectEl elemento de conversación creado.
Propiedades id stringIdentificador único para el elemento de conversación.objectstringSiempre realtime.item.typestringTipo de elemento: message (mensaje estándar) o function_call (llamada a función).statusstringEstado del elemento, como in_progress o completed.rolestringRol del mensaje, como user o assistant. Solo presente para elementos de tipo message.contentarrayLista de contenido del mensaje. Solo presente para elementos de tipo message. |
conversation.item.deleted
Descripción: Se eliminó un elemento de conversación. Devuelto como confirmación después de que el cliente envía un evento conversation.item.delete.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre conversation.item.deleted.item_idstringID del elemento de conversación eliminado. |
conversation.item.retrieved
Descripción: Un elemento de conversación se recuperó correctamente. Devuelto después de que el cliente envía un evento conversation.item.retrieve. Para contenido de tipo audio, solo se incluye el texto de la transcripción; no se devuelven los datos de audio sin procesar.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre conversation.item.retrieved.itemobjectEl elemento de conversación recuperado.
Propiedades id stringIdentificador único para el elemento de conversación.objectstringSiempre realtime.item.typestringTipo de elemento: message (mensaje estándar) o function_call (llamada a función).rolestringRol del mensaje, como user o assistant. Solo presente para elementos de tipo message.contentarrayLista de contenido del mensaje. Para contenido de tipo audio, solo se incluye el texto de la transcripción; no se devuelven los datos de audio sin procesar. |
conversation.item.input_audio_transcription.delta
Descripción: Resultado incremental de transcripción de Reconocimiento Automático del Habla (ASR), transmitido durante el reconocimiento de voz. Incluye información de detección de emociones e idioma.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre conversation.item.input_audio_transcription.delta.item_idstringID del elemento de conversación asociado.content_indexintegerÍndice de la parte de contenido.textstringTexto de transcripción finalizado.stashstringTexto provisional que aún no ha sido finalizado. |
conversation.item.input_audio_transcription.completed
Descripción: Resultado final de la transcripción ASR. El texto transcrito se escribe en el campo transcript del elemento correspondiente.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre conversation.item.input_audio_transcription.completed.item_idstringID del elemento de conversación asociado.content_indexintegerÍndice de la parte de contenido.transcriptstringEl texto de transcripción completo. |
conversation.item.input_audio_transcription.failed
Descripción: La transcripción ASR falló.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre conversation.item.input_audio_transcription.failed.item_idstringID del elemento de conversación asociado.content_indexintegerÍndice de la parte de contenido.errorobjectDetalles del error.
Propiedades type stringTipo de error, como transcription_error.codestringCódigo de error, como transcription_failed.messagestringMensaje de error. |
conversation.item.ambient_audio_transcription.delta
Descripción: Modo smart_turn únicamente. Resultado de transcripción incremental para audio ambiental. Cuando VAD detecta actividad de voz pero el análisis semántico clasifica el turno como inválido (por ejemplo, ruido de fondo o muletillas como "hmm" o "eh"), el resultado ASR se reenvía al cliente como un evento ambiental. Este evento no está vinculado a ningún elemento de conversación. El item_id es un ID temporal independiente.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre conversation.item.ambient_audio_transcription.delta.item_idstringUn ID temporal independiente, no asociado con ningún elemento de conversación.content_indexintegerÍndice de la parte de contenido.textstringTexto de transcripción finalizado.stashstringTexto provisional que aún no ha sido finalizado. |
conversation.item.ambient_audio_transcription.completed
Descripción: Modo smart_turn únicamente. Resultado final de transcripción para audio ambiental. Emparejado con el evento delta correspondiente para marcar el final de un segmento de transcripción de audio ambiental. Este resultado no se escribe en el contexto de la conversación.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre conversation.item.ambient_audio_transcription.completed.item_idstringUn ID temporal independiente, no asociado con el contexto de la conversación.content_indexintegerÍndice de la parte de contenido.transcriptstringEl texto de transcripción completo. |
response.created
Descripción: Enviado cuando comienza una ronda de inferencia del modelo.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.created.responseobjectEl objeto de respuesta.
Propiedades id stringIdentificador único para la respuesta.objectstringSiempre realtime.response.statusstringEstado de la respuesta, como in_progress.modalitiesarrayModalidades de salida del modelo.voicestringVoz utilizada para la generación de audio. Ya sea un nombre de voz del sistema o el voice_id de una voz clonada.outputarrayElementos de salida de la respuesta. Inicialmente es un arreglo vacío. |
response.output_item.added
Descripción: Se agregó un nuevo elemento de salida a la respuesta. El tipo de elemento de salida es message para respuestas estándar, o function_call para Function Calling.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.output_item.added.response_idstringID de respuesta asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.itemobjectEl elemento de salida añadido.
Propiedades id stringIdentificador único para el elemento de salida.objectstringSiempre realtime.item.typestringTipo de elemento de salida: message (mensaje estándar) o function_call (llamada a función).statusstringEstado del elemento de salida, como in_progress.rolestringRol del mensaje. Siempre assistant. Solo presente para elementos de tipo message.contentarrayLista de contenido del mensaje. Solo presente para elementos de tipo message. | response.output_item.added / conversation.item.created / response.output_item.done contienen la siguiente estructura item:Una sola respuesta puede incluir múltiples elementos function_call y también puede contener salida estándar message junto con salida function_call. La parte de Function Calling no se envía a TTS para reproducción de audio. |
response.content_part.added
Descripción: Se agregó una nueva parte de contenido a un elemento de salida.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.content_part.added.response_idstringID de respuesta asociado.item_idstringID del elemento de salida asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.content_indexintegerÍndice de la parte de contenido dentro del elemento de salida.partobjectLa parte de contenido añadida.
Propiedades type stringTipo de contenido, como audio o text.textstringContenido de texto. Inicialmente una cadena vacía. |
response.text.delta
Descripción: Evento delta de texto en modo solo texto. Transmite fragmentos de texto de forma incremental.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.text.delta.response_idstringID de respuesta asociado.item_idstringID del elemento de salida asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.content_indexintegerÍndice de la parte de contenido dentro del elemento de salida.deltastringFragmento de texto incremental. |
response.text.done
Descripción: Evento de finalización de salida de texto en modo solo texto.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.text.done.response_idstringID de respuesta asociado.item_idstringID del elemento de salida asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.content_indexintegerÍndice de la parte de contenido dentro del elemento de salida.textstringLa salida de texto completa. |
response.audio_transcript.delta
Descripción: Evento delta de transcripción en modo de audio. Transmite fragmentos de transcripción de forma incremental.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.audio_transcript.delta.response_idstringID de respuesta asociado.item_idstringID del elemento de salida asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.content_indexintegerÍndice de la parte de contenido dentro del elemento de salida.deltastringFragmento de transcripción incremental. |
response.audio_transcript.done
Descripción: Evento de finalización de salida de transcripción en modo de audio.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.audio_transcript.done.response_idstringID de respuesta asociado.item_idstringID del elemento de salida asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.content_indexintegerÍndice de la parte de contenido dentro del elemento de salida.transcriptstringEl texto de transcripción completo. |
response.audio.delta
Descripción: para la conexión mediante WebSocket, es un evento de datos de audio incrementales en modo de audio. El campo delta contiene datos de audio PCM codificados en Base64.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.audio.delta.response_idstringID de respuesta asociado.item_idstringID del elemento de salida asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.content_indexintegerÍndice de la parte de contenido dentro del elemento de salida.deltastringFragmento de datos de audio PCM codificado en Base64. |
response.audio.done
Descripción: Evento de finalización de salida de audio en modo de audio. No contiene datos de audio.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.audio.done.response_idstringID de respuesta asociado.item_idstringID del elemento de salida asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.content_indexintegerÍndice de la parte de contenido dentro del elemento de salida. |
response.content_part.done
Descripción: Una parte de contenido dentro de un elemento de salida ha finalizado.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.content_part.done.response_idstringID de respuesta asociado.item_idstringID del elemento de salida asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.content_indexintegerÍndice de la parte de contenido dentro del elemento de salida.partobjectLa parte de contenido completada.
Propiedades type stringTipo de contenido, como audio o text.textstringContenido de texto o texto de transcripción de audio. |
response.output_item.done
Descripción: Un elemento de salida dentro de la respuesta ha finalizado.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.output_item.done.response_idstringID de respuesta asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.itemobjectEl elemento de salida completado con todos los detalles.
Propiedades id stringIdentificador único para el elemento de salida.objectstringSiempre realtime.item.typestringTipo de elemento de salida: message (mensaje estándar) o function_call (llamada a función).statusstringEstado del elemento de salida, como completed.rolestringRol del mensaje. Siempre assistant. Solo presente para elementos de tipo message.contentarrayLista de contenido del mensaje. Solo presente para elementos de tipo message. |
response.function_call_arguments.delta
Descripción: Delta de argumentos de Function Calling. Cuando el modelo decide invocar una herramienta, el servidor primero envía response.output_item.added (con item.type=function_call) y conversation.item.created, luego transmite fragmentos de argumentos a través de este evento.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.function_call_arguments.delta.response_idstringID de respuesta asociado.item_idstringID del elemento de salida asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.call_idstringIdentificador único para la llamada de función.deltastringFragmento incremental de los argumentos de la llamada a función (fragmento de cadena JSON). |
response.function_call_arguments.done
Descripción: Enviado cuando la salida de argumentos de Function Calling está completa. Después de recibir este evento, el cliente debe: ejecutar la herramienta correspondiente, escribir el resultado en la conversación mediante conversation.item.create con un elemento function_call_output, y luego enviar response.create para activar una ronda de inferencia de seguimiento.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.function_call_arguments.done.response_idstringID de respuesta asociado.item_idstringID del elemento de salida asociado.output_indexintegerÍndice del elemento de salida dentro de la respuesta.call_idstringIdentificador único para la llamada de función.namestringNombre de la función invocada.argumentsstringArgumentos completos de la llamada de función (cadena JSON). |
response.done
Descripción: Una ronda de inferencia ha finalizado. status indica la razón de la finalización.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre response.done.responseobjectEl objeto de respuesta completo.
Propiedades id stringIdentificador único de la respuesta.objectstringSiempre realtime.response.statusstringEstado de finalización de la respuesta. Valores válidos:
objectDetalles del estado. Presente solo cuando el estado es cancelled o failed.
Propiedades type stringTipo de estado, como cancelled.reasonstringMotivo de cancelación: turn_detected (interrupción por VAD) o client_cancelled (cancelación iniciada por el cliente).arrayModalidades de salida del modelo.voicestringVoz utilizada para la generación de audio. Ya sea un nombre de voz del sistema o el voice_id de una voz clonada.outputarrayLista de elementos de salida en la respuesta, que contiene objetos de elementos completos. |
voiceprint_audio_list.in_progress
Descripción: El proceso de registro de impresión de voz está en curso de forma asíncrona.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre voiceprint_audio_list.in_progress.item_idstringIdentificador único para la tarea de registro de impresión de voz. |
voiceprint_audio_list.completed
Descripción: El proceso de registro de impresión de voz se ha completado correctamente.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre voiceprint_audio_list.completed.item_idstringIdentificador único para la tarea de registro de impresión de voz. |
voiceprint_audio_list.failed
Descripción: El registro de impresión de voz falló. Las llamadas de conversación normales no se bloquean.
event_idstringIdentificador único para este evento.typestringTipo de evento. Siempre voiceprint_audio_list.failed.item_idstringIdentificador único para la tarea de registro de impresión de voz.reasonstringDescripción del motivo del fallo. |