Eventos do cliente para a API Qwen-Omni-Realtime.
Consulte Qwen-Omni-Realtime .
session.update
Após estabelecer uma conexão WebSocket, envie este evento primeiro para atualizar as configurações padrão da sessão. O servidor valida os parâmetros ao receber o evento session.update. Se os parâmetros forem inválidos, o servidor retorna um erro. Caso sejam válidos, aplica a configuração e retorna a versão completa atualizada.
typestring(obrigatório)Tipo de evento. O valor deve ser session.update. | |
sessionobject(opcional)Configuração da sessão.
Propriedades modalities array(opcional)Modalidades de saída do modelo. Valores válidos:
string(opcional)Voz usada na saída de áudio do modelo. Para ver as vozes compatíveis, consulte Voice list.Vozes padrão:
string(opcional)Formato do áudio de entrada do usuário. Atualmente, há suporte apenas para pcm. O áudio de entrada deve ser um fluxo PCM com taxa de amostragem de 16 kHz.output_audio_formatstring(opcional)Formato do áudio de saída do modelo. Atualmente, há suporte apenas para pcm. O áudio de saída é um fluxo PCM com taxa de amostragem de 24 kHz.smooth_outputboolean | null(opcional)Aplica-se apenas à série Qwen3-Omni-Flash-Realtime.Define se o estilo de resposta coloquial está ativado. Valores válidos:
string(opcional)Mensagem do sistema que define a função ou o objetivo do modelo.turn_detectionobject(opcional)Configuração de Detecção de Atividade de Voz (VAD). Defina como null para desativar o VAD e acionar as respostas do modelo manualmente. Se omitido, o VAD será ativado com os parâmetros padrão.
Propriedades type string(opcional)Tipo de VAD. Valores válidos:
float(opcional)Sensibilidade do VAD. Um valor menor torna o VAD mais sensível, aumentando a probabilidade de detectar sons fracos como fala, incluindo ruídos de fundo. Um valor maior exige uma fala mais clara e alta para disparar a detecção.Intervalo válido: [-1,0, 1,0]. Padrão: 0,5.silence_duration_msinteger(opcional)Duração mínima de silêncio após o término da fala, em milissegundos. Quando esse limite é excedido, o modelo gera uma resposta. Um valor menor acelera as respostas, mas pode causar disparos falsos durante pausas breves.Padrão: 800. Intervalo válido: [200, 6000].idle_timeout_msinteger(opcional)Aplica-se apenas aos modelos qwen3.5-omni-plus-realtime e qwen3.5-omni-flash-realtime no modo server_vad.Tempo limite de ociosidade em milissegundos. Depois que o servidor termina a reprodução de áudio e o usuário permanece em silêncio além dessa duração (sem disparar speech.started), o modelo gera proativamente uma resposta para incentivar o usuário a continuar a conversa com base no contexto atual. O tempo limite começa após o término da reprodução do último áudio de resposta do modelo.Intervalo válido: [5000, 30000].boolean(opcional)Aplica-se apenas à série Qwen3.5-Omni-Realtime.Define se a pesquisa na web está ativada. Padrão: false. Quando ativado, o modelo decide autonomamente se deve pesquisar para responder a perguntas em tempo real.tools e enable_search são incompatíveis. Não ative ambos simultaneamente.search_options object(opcional)Configuração de pesquisa na web. Entra em vigor apenas quando enable_search está ativado.
Propriedades enable_source boolean(opcional)Define se a lista de fontes dos resultados da pesquisa deve ser retornada. Defina como true para ativar.array(opcional)Lista de definições de ferramentas. Quando fornecida, o modelo decide se deve chamar uma ferramenta com base na entrada do usuário.
Propriedades type string (obrigatório)O valor deve ser function.function.namestring (obrigatório)Nome da função da ferramenta, correspondente ao nome real da função, como get_current_weather ou get_current_time.function.descriptionstring (opcional)Descrição do que a ferramenta faz. O modelo usa essa informação para decidir se deve chamá-la.function.parametersobject (opcional)Descrição dos parâmetros de entrada da ferramenta. O modelo usa isso para extrair valores de parâmetros da entrada do usuário. Omita este campo se a ferramenta não aceitar entradas.
Propriedades type string (obrigatório)O valor deve ser object.propertiesobject (opcional)Descreve cada parâmetro de entrada por nome, tipo de dados e descrição. A chave é o nome do parâmetro; o valor é um objeto com type e description.requiredarray (opcional)Lista quais parâmetros de entrada são obrigatórios. | |
temperaturefloat(opcional)Temperatura de amostragem, que controla a diversidade da saída. Um valor maior produz conteúdo mais variado; um valor menor gera uma saída mais determinística.Intervalo válido: [0, 2).Como temperature e top_p controlam a diversidade, defina apenas um deles.Valores padrão:
Os modelos | |
top_pfloat(opcional)Limiar de probabilidade de amostragem nuclear, que controla a diversidade da saída. Um valor maior produz conteúdo mais variado; um valor menor gera uma saída mais determinística.Intervalo válido: (0, 1,0].Como temperature e top_p controlam a diversidade, defina apenas um deles.Valores padrão:
Os modelos | |
top_kinteger(opcional)Tamanho do conjunto de candidatos para amostragem. Por exemplo, um valor de 50 limita cada etapa de geração aos 50 tokens com maior pontuação. Um valor maior aumenta a aleatoriedade; um valor menor aumenta o determinismo. Defina como null ou um valor maior que 100 para desativar o top_k; nesse caso, apenas o top_p será aplicado.Valor mínimo: 0.Valores padrão:
Os modelos | |
max_tokensinteger(opcional)Número máximo de tokens a serem retornados.A configuraçãoOs valores padrão e máximo correspondem ao comprimento máximo de saída do modelo. Consulte Model list.Use max_tokens para limitar o comprimento da saída em tarefas como resumo, extração de palavras-chave, controle de custos ou redução de latência.
Os modelos | |
repetition_penaltyfloat(opcional)Controla a repetição na saída do modelo. Um valor maior reduz a repetição; 1,0 significa nenhuma penalidade. Deve ser maior que 0.Valores padrão:
Os modelos | |
presence_penalty float(opcional)Controla a repetição de conteúdo na saída do modelo.Intervalo válido: [-2,0, 2,0]. Um valor positivo reduz a repetição; um valor negativo a aumenta.Valores padrão:
Os modelos | |
seedinteger(opcional)Torna a geração mais determinística. Passe o mesmo valor de seed com parâmetros inalterados para obter resultados consistentes entre execuções.Intervalo válido: 0 a 231−1. Padrão: -1.
Os modelos |
response.create
O evento response.create instrui o servidor a gerar uma resposta do modelo. No modo VAD, o servidor gera respostas automaticamente, portanto, esse evento não é necessário. Em cenários de chamada de ferramenta, envie este evento após retornar o resultado da ferramenta via conversation.item.create para acionar a resposta final do modelo.
O servidor responde com um evento response.created, seguido por um ou mais eventos de item e conteúdo — como conversation.item.created e response.content_part.added — e finalmente um evento response.done.
typestring(obrigatório)Tipo de evento. O valor deve ser response.create. |
response.cancel
Envie este evento para cancelar uma resposta em andamento. Se nenhuma resposta estiver em progresso, o servidor retornará um erro.
typestring(obrigatório)Tipo de evento. O valor deve ser response.cancel. |
input_audio_buffer.append
Adiciona bytes de áudio ao buffer de áudio de entrada.
typestring(obrigatório)Tipo de evento. O valor deve ser input_audio_buffer.append. | |
audiostring(obrigatório)Dados de áudio codificados em Base64. |
input_audio_buffer.commit
Confirma o buffer de áudio de entrada, criando um novo item de mensagem do usuário na conversa. Se o buffer estiver vazio, o servidor retornará um erro.
- VAD mode: O cliente não precisa enviar este evento. O servidor confirma o buffer de áudio automaticamente.
- Manual mode: O cliente deve confirmar o buffer de áudio para criar um item de mensagem do usuário.
input_audio_buffer.committed.
Se o cliente enviou um evento input_image_buffer.append , o evento input_audio_buffer.commit também confirma o buffer de imagem.
typestring(obrigatório)Tipo de evento. O valor deve ser input_audio_buffer.commit. |
input_audio_buffer.clear
Limpa os bytes de áudio do buffer. O servidor responde com um evento input_audio_buffer.cleared.
typestring(obrigatório)Tipo de evento. O valor deve ser input_audio_buffer.clear. |
input_image_buffer.append
Adiciona dados de imagem ao buffer de imagem. As imagens podem vir de arquivos locais ou de um fluxo de vídeo ao vivo.
Os seguintes limites se aplicam às entradas de imagem:
- Formato: JPG ou JPEG. Resolução recomendada: 480p ou 720p; máxima: 1080p.
- Uma única imagem após a codificação Base64 não deve exceder 256 KB. Recomendamos manter o tamanho da imagem bruta abaixo de 190 KB antes da codificação.
- Os dados da imagem devem estar codificados em Base64.
- Frequência de envio recomendada: 1 imagem por segundo.
- Envie pelo menos um evento
input_audio_buffer.appendantes de enviar um eventoinput_image_buffer.append.
O buffer de imagem é confirmado junto com o buffer de áudio usando o evento input_audio_buffer.commit .
typestring(obrigatório)Tipo de evento. O valor deve ser input_image_buffer.append. | |
imagestring(obrigatório)Dados da imagem codificados em Base64. |
conversation.item.create
Envie este evento para retornar o resultado da execução de uma função de ferramenta ao servidor. Depois que o modelo acionar uma chamada de ferramenta, execute a ferramenta localmente e envie o resultado de volta usando este evento. Em seguida, envie um evento response.create para acionar a resposta final do modelo.
Atualmente, há suporte apenas para itens do tipo
function_call_output.typestring(obrigatório)Tipo de evento. O valor deve ser conversation.item.create. | |
itemobject(obrigatório)Item de conversa a ser criado. Não pode estar vazio.
Propriedades id string (opcional)ID do item de conversa. Especifique um para alinhar com o estado local; caso contrário, o servidor gerará um.typestring (obrigatório)Tipo de item de conversa. Atualmente, há suporte apenas para function_call_output.call_idstring (obrigatório)O call_id retornado no evento response.function_call_arguments.done.outputstring (obrigatório)Resultado da execução da função da ferramenta. |