Guia do usuário: Para introdução aos modelos e recomendações de seleção, consulte Speech synthesis.
Descrição: Inicia uma tarefa de síntese de fala e configura o modelo, a voz, a taxa de amostragem e outros parâmetros.
Quando enviar: Imediatamente após estabelecer a conexão WebSocket.
Evento de resposta: O servidor retorna um evento de tarefa iniciada. Aguarde esse evento antes de enviar comandos subsequentes.
Descrição: Envia o texto a ser sintetizado. O texto pode ser enviado de uma só vez ou em múltiplos segmentos.
Quando enviar: Após receber o evento de tarefa iniciada do servidor.
Limites:
Descrição: Notifica o servidor de que todo o texto foi enviado e solicita a conclusão da tarefa.
Quando enviar: Imediatamente após enviar todo o texto.
Evento de resposta: O servidor retorna um evento de tarefa concluída.
run-task
Descrição: Inicia uma tarefa de síntese de fala e configura o modelo, a voz, a taxa de amostragem e outros parâmetros.
Quando enviar: Imediatamente após estabelecer a conexão WebSocket.
Evento de resposta: O servidor retorna um evento de tarefa iniciada. Aguarde esse evento antes de enviar comandos subsequentes.
headerobject(required)
Properties action string(required)Tipo de comando. Defina como run-task.task_idstring(required)ID de tarefa gerado pelo cliente no formato UUID. Este ID correlaciona eventos subsequentes e deve corresponder ao task_id nos comandos continue-task e finish-task.streamingstring(required)Defina como duplex. | |
payloadobject(required)
Properties task_group string(required)Grupo de tarefas. Defina como audio.taskstring(required)Tipo de tarefa. Defina como tts.functionstring(required)Tipo de função. Defina como SpeechSynthesizer.modelstring(required)Nome do modelo.inputobject(required)Defina como um objeto vazio {}. Envie o texto para sintetizar por meio do comando continue-task.parametersobject(required)Parâmetros de síntese de fala.
Properties text_type string(required)Defina como PlainText.voicestring(required)Voz usada na síntese de fala.
string(optional)Formato de codificação de áudio.Valores válidos:
integer(optional)Taxa de amostragem de áudio em Hz.Valores válidos: 8000, 16000, 22050 (padrão), 24000, 44100, 48000.volumeinteger(optional)Nível de volume.Valor padrão: 50.Valores válidos: [0, 100].ratefloat(optional)Velocidade da fala.Valor padrão: 1,0.Valores válidos: [0,5, 2,0].pitchfloat(optional)Tom da voz.Valor padrão: 1,0.Valores válidos: [0,5, 2,0].bit_rateinteger(optional)Taxa de bits de áudio em kbps. Se o formato de áudio for mp3 ou opus, use bit_rate para ajustar a taxa de bits.Valor padrão: 32.Valores válidos: [6, 510].enable_ssmlboolean(optional)Define se o SSML deve ser ativado.Valor padrão: false.Se definido como true, apenas um comando continue-task é permitido.Para restrições de uso do SSML (modelos, vozes e APIs compatíveis), consulte Limitations.word_timestamp_enabledboolean(optional)Define se os carimbos de data/hora no nível de palavra devem ser ativados.Valor padrão: false.Disponível apenas no modo de saída streaming. Vozes compatíveis: vozes clonadas de qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flash, cosyvoice-v3.5-plus, cosyvoice-v3.5-flash, cosyvoice-v3-flash, cosyvoice-v3-plus e cosyvoice-v2, além de vozes do sistema marcadas como compatíveis em Qwen-Audio-TTS voice list, CosyVoice Voice list. Vozes clonadas de outros modelos não oferecem suporte a este recurso.seedinteger(optional)Semente aleatória para controlar a variação na saída da síntese. Se a versão do modelo, o texto, a voz e outros parâmetros permanecerem inalterados, usar a mesma semente produz resultados idênticos.Valor padrão: 0.Valores válidos: [0, 65535].language_hintsarray[string](optional)Especifica o idioma de destino para a síntese de fala a fim de melhorar a qualidade da saída.Use este parâmetro quando a pronúncia de dígitos, expansão de abreviações, leitura de símbolos ou síntese de idiomas minoritários não atender às expectativas. Por exemplo:
string(optional)Define uma instrução para controlar dialeto, emoção ou características da voz durante a síntese. Para detalhes de uso, consulte Instruction control.enable_aigc_tagboolean(optional)Define se uma marca d'água AIGC deve ser incorporada ao áudio gerado. Se definido como true, a marca d'água é incorporada em arquivos de áudio dos formatos compatíveis (wav/mp3/opus).Valor padrão: false.Apenas qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flash, cosyvoice-v3-flash, cosyvoice-v3-plus e cosyvoice-v2 oferecem suporte a este recurso.aigc_propagatorstring(optional)Define o campo ContentPropagator na marca d'água AIGC, identificando o propagador do conteúdo. Tem efeito apenas quando enable_aigc_tag é true.Valor padrão: UID da Alibaba Cloud.Apenas qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flash, cosyvoice-v3-flash, cosyvoice-v3-plus e cosyvoice-v2 oferecem suporte a este recurso.aigc_propagate_idstring(optional)Define o campo PropagateID na marca d'água AIGC, identificando exclusivamente uma ação de propagação específica. Tem efeito apenas quando enable_aigc_tag é true.Valor padrão: ID da solicitação atual de síntese de fala.Apenas qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flash, cosyvoice-v3-flash, cosyvoice-v3-plus e cosyvoice-v2 oferecem suporte a este recurso.hot_fixobject(optional)Configura correções de pronúncia e substituições de texto aplicadas antes da síntese.This feature isn't supported by qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flash, or cosyvoice-v2.Parâmetros:
boolean(optional)Define se a filtragem de Markdown deve ser ativada. Quando ativada, o sistema remove automaticamente os símbolos de marcação Markdown do texto de entrada antes da síntese, evitando que sejam lidos em voz alta.Valor padrão: false.Valores válidos:
|
continue-task
Descrição: Envia o texto a ser sintetizado. O texto pode ser enviado de uma só vez ou em múltiplos segmentos.
Quando enviar: Após receber o evento de tarefa iniciada do servidor.
Limites:
- Máximo de 20.000 caracteres por mensagem
- Máximo de 200.000 caracteres cumulativamente
- O intervalo de envio não deve exceder 23 segundos; caso contrário, a conexão atingirá o tempo limite.
headerobject(required)
Properties action string(required)Tipo de comando. Defina como continue-task.task_idstring(required)ID da tarefa no formato UUID. Deve corresponder ao task_id em run-task.streamingstring(required)Defina como duplex. | |
payloadobject(required)
Properties input object(required)Contém o texto a ser sintetizado.textstring(required)Texto a ser sintetizado. Máximo de 20.000 caracteres por mensagem e 200.000 caracteres cumulativamente. |
finish-task
Descrição: Notifica o servidor de que todo o texto foi enviado e solicita a conclusão da tarefa.
Quando enviar: Imediatamente após enviar todo o texto.
Evento de resposta: O servidor retorna um evento de tarefa concluída.
headerobject(required)
Properties action string(required)Tipo de comando. Defina como finish-task.task_idstring(required)ID da tarefa no formato UUID. Deve corresponder ao task_id em run-task.streamingstring(required)Defina como duplex. | |
payloadobject(required)
Properties input object(required)Defina como {} para a conclusão normal da tarefa. Inclua directive para cancelar a rodada de síntese atual.directivestring(optional)Controla como a tarefa termina. Atualmente, apenas cancel tem suporte. Se definido como cancel, a rodada de síntese atual é cancelada e o servidor retorna imediatamente um evento task-finished sem produzir mais áudio.Após o cancelamento, inicie uma nova tarefa de síntese na mesma conexão WebSocket enviando um novo evento run-task sem reconectar. |