Eventos do cliente para a API Qwen-Omni-Realtime.
Consulte Qwen-Omni-Realtime .
session.update
Após abrir a conexão WebSocket, você pode enviar session.update para configurar a sessão. Se precisar alterar a configuração depois, envie apenas os ajustes desejados; as demais configurações manterão seus valores atuais.
O servidor valida os parâmetros enviados. Se a validação for bem-sucedida, retorna a configuração completa atualizada em session.updated. Se houver falha na validação, retorna um evento error.
type Tipo de evento. O valor deve ser | |
session Configuração da sessão. | |
temperature 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:
| |
top_p 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:
| |
top_k 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 Valor mínimo: 0. Valores padrão:
| |
max_tokens Número máximo de tokens a serem retornados.
Os 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. | |
repetition_penalty 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:
| |
presence_penalty 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:
Quando usar: Valores mais altos são adequados para tarefas criativas, como contar histórias ou brainstorming, onde a diversidade e o interesse da saída são importantes. Valores mais baixos são ideais para conteúdo técnico ou formal, onde a consistência e a terminologia precisa são necessárias. | |
seed 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. |
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.
type Tipo de evento. O valor deve ser | |
response.cancel
Envie este evento para cancelar uma resposta em andamento. Se nenhuma resposta estiver em progresso, o servidor retornará um erro.
type Tipo de evento. O valor deve ser | |
input_audio_buffer.append
Adiciona bytes de áudio ao buffer de áudio de entrada.
type Tipo de evento. O valor deve ser | |
audio 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.
Confirmar o buffer não aciona uma resposta do modelo. O servidor responde com um evento 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.
type Tipo de evento. O valor deve ser | |
input_audio_buffer.clear
Limpa os bytes de áudio do buffer. O servidor responde com um evento input_audio_buffer.cleared.
type Tipo de evento. O valor deve ser | |
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 .
type Tipo de evento. O valor deve ser | |
image 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.
ObservaçãoAtualmente, há suporte apenas para itens do tipo function_call_output.
type Tipo de evento. O valor deve ser | |
item Item de conversa a ser criado. Não pode estar vazio. |