QwenCloudBRASIL
Tradução de apoio para consulta. Código e identificadores técnicos preservados. Consultar referência original ↗

Qwen-ASR eventos do servidor

Referência do servidor WebSocket

Eventos que o servidor envia durante uma sessão WebSocket.

Guia do usuário: Para obter uma visão geral dos recursos e do código de exemplo, consulte Reconhecimento de fala em tempo real.

erro

Enviado quando ocorre um erro no cliente ou no servidor.

{
  "event_id": "event_B2uoU7VOt1AAITsPRPH9n",
  "type": "error",
  "error": {
  "type": "invalid_request_error",
  "code": "invalid_value",
  "message": "Invalid value: 'whisper-1xx'. Supported values are: 'whisper-1'.",
  "param": "session.input_audio_transcription.model",
  "event_id": "event_123"
  }
}

Identificador exclusivo para este evento.

Tipo de evento. Sempre error.

Detalhes do erro.

  Tipo de erro.





  Código de erro.





  Mensagem de erro. Para soluções, consulte [Mensagens de erro](/api-reference/preparation/error-messages).





  Parâmetro relacionado ao erro.





  ID do evento relacionado ao erro.

sessão.criada

Primeiro evento após a conexão. Contém configurações de sessão padrão.

{
  "event_id": "event_1234",
  "type": "session.created",
  "session": {
  "id": "sess_001",
  "object": "realtime.session",
  "model": "qwen3-asr-flash-realtime",
  "modalities": ["text"],
  "input_audio_format": "pcm16",
  "input_audio_transcription": null,
  "turn_detection": {
      "type": "server_vad",
      "threshold": 0.5,
      "silence_duration_ms": 200
  }
  }
}

Identificador exclusivo para este evento.

Tipo de evento. Sempre session.created.

Configuração da sessão.

  ID da sessão WebSocket atual.





  Sempre `realtime.session`.





  Nome do modelo.





  Modalidade de saída. Sempre `["text"]`.





  Formato de áudio de entrada.





  Configurações de reconhecimento de fala. Para obter detalhes, consulte o `input_audio_transcription` parâmetro do [session.update](/api-reference/speech-recognition/qwen-asr-realtime/client-events) evento do cliente.





  Configurações de detecção de atividade de voz (VAD).

  

    

      Sempre `server_vad`.
    


    

      Limiar de detecção de VAD.
    


    

      Duração do silêncio em milissegundos antes que uma quebra de frase seja detectada.

sessão.atualizada

Enviado após sua session.update o evento é processado. Se o processamento falhar, um error o evento é enviado em seu lugar.

Para outras descrições de parâmetros, consulte session.created.

{
  "event_id": "event_1234",
  "type": "session.updated",
  "session": {
  "id": "sess_001",
  "object": "realtime.session",
  "model": "qwen3-asr-flash-realtime",
  "modalities": ["text"],
  "input_audio_format": "pcm16",
  "input_audio_transcription": null,
  "turn_detection": {
      "type": "server_vad",
      "threshold": 0.5,
      "silence_duration_ms": 200
  }
  }
}

Identificador exclusivo para este evento.

Tipo de evento. Sempre session.updated.

input_audio_buffer.speech_started

Enviado no modo VAD quando a fala começa no buffer de áudio.

Disparado sempre que o áudio é adicionado ao buffer, a menos que o início da fala já tenha sido detectado.

{
  "event_id": "event_B1lV7FPbgTv9qGxPI1tH4",
  "type": "input_audio_buffer.speech_started",
  "audio_start_ms": 64,
  "item_id": "item_B1lV7jWLscp4mMV8hSs8c"
}

Identificador exclusivo para este evento.

Tipo de evento. Sempre input_audio_buffer.speech_started.

Milissegundos desde o início do buffer até a detecção de fala.

ID do item de mensagem do usuário a ser criado.

input_audio_buffer.speech_stopped

Enviado no modo VAD quando a fala termina no buffer de áudio. Imediatamente seguido por um conversation.item.created evento com o item de mensagem do usuário.

{
  "event_id": "event_B3GGEYh2orwNIdhUagZPz",
  "type": "input_audio_buffer.speech_stopped",
  "audio_end_ms": 28128,
  "item_id": "item_B3GGE8ry4yqbqJGzrVhEM"
}

Identificador exclusivo para este evento.

Tipo de evento. Sempre input_audio_buffer.speech_stopped.

Milissegundos desde o início da sessão até o momento em que a fala é interrompida.

ID do item de mensagem do usuário criado quando a fala é interrompida.

entrada_audio_buffer.comprometido

Enviado quando o buffer de áudio de entrada é confirmado.

{
  "event_id": "event_1121",
  "type": "input_audio_buffer.committed",
  "previous_item_id": "msg_001",
  "item_id": "msg_002"
}

Identificador exclusivo para este evento.

Tipo de evento. Sempre input_audio_buffer.committed.

ID do item de conversa anterior.

ID do item de conversa do usuário a ser criado.

conversa.item.criado

Enviado quando um item de conversa é criado.

{
  "type": "conversation.item.created",
  "event_id": "event_B3GGKbCfBZTpqFHZ0P8vg",
  "previous_item_id": "item_B3GGE8ry4yqbqJGzrVhEM",
  "item": {
  "id": "item_B3GGEPlolCqdMiVbYIf5L",
  "object": "realtime.item",
  "type": "message",
  "status": "completed",
  "role": "user",
  "content": [
      {
    "type": "input_audio",
    "transcript": null
      }
  ]
  }
}

Identificador exclusivo para este evento.

Tipo de evento. Sempre conversation.item.created.

ID do item de conversa anterior.

O item de conversa.

  ID exclusivo do item de conversa.





  Sempre `realtime.item`.





  Sempre `message`.





  Status do item de conversa.





  Função do remetente da mensagem.





  Conteúdo da mensagem.

  

    

      Sempre `input_audio`.
    


    

      Sempre `null`. O resultado final está em [conversation.item.input\_audio\_transcription.completed](#conversation-item-input-audio-transcription-completed) evento.

conversa.item.input_audio_transcription.text

Enviado frequentemente com resultados de reconhecimento em tempo real.

{
  "event_id": "event_R7Pfu8QVBfP5HmpcbEFSd",
  "type": "conversation.item.input_audio_transcription.text",
  "item_id": "item_MpJQPNQzqVRc9aC9zMwSj",
  "content_index": 0,
  "language": "en",
  "emotion": "neutral",
  "text": "",
  "stash": "Beijing's"
}

Identificador exclusivo para este evento.

Tipo de evento. Sempre conversation.item.input_audio_transcription.text.

ID do item de conversa associado.

Índice da parte do conteúdo que contém o áudio.

Idioma detectado. Se você definir o language parâmetro de solicitação, esse valor corresponde a essa configuração. Valores possíveis:

Emoção detectada. Valores suportados: surprised, neutral, happy, sad, disgusted, angry, fearful.

Prefixo de texto confirmado. O modelo finalizou esta parte e não irá alterá-la.

Sufixo de texto pré-reconhecido. Um rascunho temporário que segue a parte confirmada. O modelo ainda pode corrigi-lo.

Para obter a visualização mais completa, concatene os dois campos: text + stash.

Suponha que um usuário diga: “O tempo está bom hoje, ensolarado e claro”. Esta tabela mostra os eventos que você pode receber:

Carimbo de data/hora Progresso da fala do usuário Resposta da API (text e stash) Exibição da IU (text + stash)
T1 "O..." text: "" / stash: "The" O
T2 "...o tempo está..." text: "" / stash: "The weather is" O tempo está
T3 "...bom hoje" text: "The" / stash: "weather is nice today" O tempo está bom hoje
T4 (Breve pausa) text: "The weather is nice today," / stash: "" O tempo está bom hoje,
T5 "...ensolarado e..." text: "The weather is nice today," / stash: "sunny and" O tempo está bom hoje, ensolarado e
T6 "...brilhante." text: "The weather is nice today," / stash: "sunny and bright." O tempo está bom hoje, ensolarado e claro.
T7 (O usuário para de falar) - Usar transcript do conversation.item.input_audio_transcription.completed evento como resultado final.

conversa.item.input_audio_transcription.completed

Envia o resultado final do reconhecimento e marca o fim de um item de conversa.

{
  "event_id": "event_B3GGEjPT2sLzjBM74W6kB",
  "type": "conversation.item.input_audio_transcription.completed",
  "item_id": "item_B3GGC53jGOuIFcjZkmEQ9",
  "content_index": 0,
  "language": "en",
  "emotion": "neutral",
  "transcript": "What's the weather like today?"
}

Identificador exclusivo para este evento.

Tipo de evento. Sempre conversation.item.input_audio_transcription.completed.

ID do item de conversa associado.

Índice da parte do conteúdo que contém o áudio.

Idioma detectado. Se você definir o language parâmetro de solicitação, esse valor corresponde a essa configuração. Valores possíveis:

Emoção detectada. Valores suportados: surprised, neutral, happy, sad, disgusted, angry, fearful.

Resultado da transcrição.

conversa.item.input_audio_transcription.failed

Enviado se o reconhecimento falhar para o áudio de entrada, separado de outros error eventos para que você possa identificar qual item falhou.

{
  "type": "conversation.item.input_audio_transcription.failed",
  "item_id": "<item_id>",
  "content_index": 0,
  "error": {
  "code": "<code>",
  "message": "<message>",
  "param": "<param>"
  }
}

Tipo de evento. Sempre conversation.item.input_audio_transcription.failed.

ID do item de conversa associado.

Índice da parte do conteúdo que contém o áudio.

Detalhes do erro.

  Código de erro.





  Mensagem de erro.





  Parâmetro relacionado ao erro.

sessão.terminada

Confirma que todo o reconhecimento está completo. Enviado depois de enviar session.finish. Você pode se desconectar após receber este evento.

{
  "event_id": "event_2239",
  "type": "session.finished"
}

Identificador exclusivo para este evento.

Tipo de evento. Sempre session.finished.