Qwen3-TTS eventos do servidor
Referência do servidor WebSocket
O servidor envia esses eventos pela conexão WebSocket.
Referência: TTS de streaming em tempo real.
erro
Enviado quando ocorre um erro do lado do cliente ou do servidor.
{
"event_id": "event_QzAVZRVa9hKqM5VOaHunh",
"type": "error",
"error": {
"code": "invalid_value",
"message": "Session update error: session already started or finished or failed."
}
}
ID do evento.
Sempre error.
Detalhes do erro.
Código de erro.
Mensagem de erro.
sessão.criada
Enviado imediatamente após o cliente se conectar. Contém a configuração de sessão padrão.
{
"event_id": "event_xxx",
"type": "session.created",
"session": {
"object": "realtime.session",
"mode": "server_commit",
"model": "qwen3-tts-flash-realtime",
"voice": "Cherry",
"response_format": "pcm",
"sample_rate": 24000,
"id": "sess_xxx"
}
}
ID do evento.
Sempre session.created.
Configuração da sessão.
ID da sessão.
Nome do serviço.
Modo de interação: `server_commit` ou `commit`.
Nome do modelo.
Nome de voz.
Formato de áudio.
Taxa de amostragem em Hz.
sessão.atualizada
Enviado depois que o servidor processa um session.update pedido. Em caso de erro, o servidor envia um error evento em vez disso.
{
"event_id": "event_xxx",
"type": "session.updated",
"session": {
"id": "sess_xxx",
"object": "realtime.session",
"model": "qwen3-tts-flash-realtime",
"voice": "Cherry",
"language_type": "Chinese",
"mode": "commit",
"response_format": "pcm",
"sample_rate": 24000
}
}
ID do evento.
Sempre session.updated.
Configuração da sessão.
ID da sessão.
Nome do serviço.
Modo de interação: `server_commit` ou `commit`.
Nome do modelo.
Nome de voz.
Formato de áudio.
Taxa de amostragem em Hz.
Linguagem de áudio.
entrada_text_buffer.comprometido
Enviado após o servidor receber um input_text_buffer.commit evento.
{
"event_id": "event_FC6MA88wS2oEeXkPvWsxX",
"type": "input_text_buffer.committed",
"item_id": ""
}
ID do evento.
Sempre input_text_buffer.committed.
ID do item de mensagem do usuário a ser criado.
entrada_text_buffer.cleed
Enviado após o servidor receber um input_text_buffer.clear evento.
{
"event_id": "event_1122",
"type": "input_text_buffer.cleared"
}
ID do evento.
Sempre input_text_buffer.cleared.
resposta.criada
Enviado após o servidor receber um input_text_buffer.commit evento.
{
"event_id": "event_IMnLqDvG6Ahhk7sWV2uOs",
"type": "response.created",
"response": {
"id": "resp_USvBwHktHcz76r6GaIJUV",
"object": "realtime.response",
"conversation_id": "",
"status": "in_progress",
"voice": "Cherry",
"output": []
}
}
ID do evento.
Sempre response.created.
Detalhes da resposta.
ID de resposta.
Sempre `realtime.response`.
Estado da resposta: `completed`, `failed`, `in_progress`, ou `incomplete`.
Nome de voz.
Vazio para este evento.
resposta.output_item.added
Enviado quando um novo item de saída está pronto.
{
"event_id": "event_INDGnGNulaXCrStd9ZM5X",
"type": "response.output_item.added",
"response_id": "resp_USvBwHktHcz76r6GaIJUV",
"output_index": 0,
"item": {
"id": "item_FIrYGaNVK3rbIZqeY4QjM",
"object": "realtime.item",
"type": "message",
"status": "in_progress",
"role": "assistant",
"content": []
}
}
ID do evento.
Sempre response.output_item.added.
ID de resposta.
Índice do item de saída de resposta. Sempre 0.
Detalhes do item de saída.
ID do item de saída.
Sempre `realtime.item`.
Status do item de saída.
Conteúdo da mensagem.
resposta.content_part.added
Enviado quando uma nova parte do conteúdo estiver pronta.
{
"event_id": "event_DigZ95MWN36YYyyjcENoq",
"type": "response.content_part.added",
"response_id": "resp_USvBwHktHcz76r6GaIJUV",
"item_id": "item_FIrYGaNVK3rbIZqeY4QjM",
"output_index": 0,
"content_index": 0,
"part": {
"type": "audio",
"text": ""
}
}
ID do evento.
Sempre response.content_part.added.
ID de resposta.
ID do item da mensagem.
Índice do item de saída de resposta. Sempre 0.
Índice da parte do conteúdo. Sempre 0.
Parte de conteúdo concluída.
Tipo de parte de conteúdo.
Texto da parte do conteúdo.
resposta.audio.delta
Enviado quando o modelo gera um pedaço de áudio.
{
"event_id": "event_B1osWMZBtrEQbiIwW0qHQ",
"type": "response.audio.delta",
"response_id": "resp_B1osWTzBb8hO0WsELHgVP",
"item_id": "item_B1osWH81fXDoyim1T5fsF",
"output_index": 0,
"content_index": 0,
"delta": "base64 audio"
}
ID do evento.
Sempre response.audio.delta.
ID de resposta.
ID do item da mensagem.
Índice do item de saída de resposta. Sempre 0.
Índice da parte do conteúdo. Sempre 0.
Pedaço de dados de áudio codificado em Base64.
resposta.content_part.done
Enviado quando uma parte do conteúdo é concluída.
{
"event_id": "event_Vo2YUjlYQJ4colH8nVzkU",
"type": "response.content_part.done",
"response_id": "resp_USvBwHktHcz76r6GaIJUV",
"item_id": "item_FIrYGaNVK3rbIZqeY4QjM",
"output_index": 0,
"content_index": 0,
"part": {
"type": "audio",
"text": ""
}
}
ID do evento.
Sempre response.content_part.done.
ID de resposta.
ID do item da mensagem.
Índice do item de saída de resposta. Sempre 0.
Índice da parte do conteúdo. Sempre 0.
Parte de conteúdo concluída.
Tipo de parte de conteúdo.
Texto da parte do conteúdo.
resposta.output_item.done
Enviado quando um item de saída é concluído.
{
"event_id": "event_LO6SJRKIQ9NBayyYB8a1A",
"type": "response.output_item.done",
"response_id": "resp_USvBwHktHcz76r6GaIJUV",
"output_index": 0,
"item": {
"id": "item_FIrYGaNVK3rbIZqeY4QjM",
"object": "realtime.item",
"type": "message",
"status": "completed",
"role": "assistant",
"content": [
{
"type": "audio",
"text": ""
}
]
}
}
ID do evento.
Sempre response.output_item.done.
ID de resposta.
Índice do item de saída de resposta. Sempre 0.
Detalhes do item de saída.
ID do item de saída.
Sempre `realtime.item`.
Status do item de saída.
Conteúdo da mensagem.
resposta.audio.done
Enviado quando a geração de áudio for concluída.
{
"event_id": "event_LZaOHPzXYMUXGBcVkBmKX",
"type": "response.audio.done",
"response_id": "resp_USvBwHktHcz76r6GaIJUV",
"item_id": "item_FIrYGaNVK3rbIZqeY4QjM",
"output_index": 0,
"content_index": 0
}
ID do evento.
Sempre response.audio.done.
ID de resposta.
ID do item da mensagem.
Índice do item de saída de resposta. Sempre 0.
Índice da parte do conteúdo. Sempre 0.
resposta.concluído
Enviado quando a geração da resposta for concluída. O response O objeto inclui todos os itens de saída, mas exclui dados brutos de áudio já enviados.
Qwen3-TTS Realtime
```json Example
{
"event_id": "event_Aemy83XqHFFDDSeJIDn6N",
"type": "response.done",
"response": {
"id": "resp_LFeR42yXZ9SxUAeXjmyTz",
"object": "realtime.response",
"conversation_id": "",
"status": "completed",
"modalities": [
"text",
"audio"
],
"voice": "Cherry",
"output": [
{
"id": "item_Ae1lv2XmRljRSG96L8Zm1",
"object": "realtime.item",
"type": "message",
"status": "completed",
"role": "assistant",
"content": [
{
"type": "audio",
"transcript": ""
}
]
}
],
"usage": {
"characters": 25
}
}
}
```
ID do evento.
Sempre response.done.
ID de resposta.
Detalhes da resposta.
ID de resposta.
Sempre `realtime.response`.
Saída de resposta.
Detalhes de cobrança.
Caracteres cobrados (Qwen3-TTS Tempo real).
sessão.terminada
Enviado quando todas as respostas forem geradas.
{
"event_id": "event_2239",
"type": "session.finished"
}
ID do evento.
Sempre session.finished.