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

Qwen-Audio-TTS/CosyVoice eventos do cliente

Qwen-Audio-TTS/CosyVoice referência de evento do cliente WebSocket de síntese de fala em tempo real

Guia do usuário: Para introdução do modelo e recomendações de seleção, consulte Síntese de fala.

tarefa de execução

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 a conexão WebSocket ser estabelecida.

Evento de resposta: o servidor retorna um evento de tarefa iniciada. Aguarde este evento antes de enviar comandos subsequentes.

{
    "header": {
        "action": "run-task",
        "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
        "streaming": "duplex"
    },
    "payload": {
        "task_group": "audio",
        "task": "tts",
        "function": "SpeechSynthesizer",
        "model": "cosyvoice-v3-flash",
        "parameters": {
            "text_type": "PlainText",
            "voice": "longanyang",
            "format": "mp3",
            "sample_rate": 22050,
            "volume": 50,
            "rate": 1.0,
            "pitch": 1.0,
            "enable_ssml": false
        },
        "input": {}
    }
}

Cabeçalho da mensagem.

  O tipo de comando. Definir como `run-task`.





  Um ID de tarefa gerado pelo cliente no formato UUID. Esse ID correlaciona eventos subsequentes e deve corresponder ao task\_id nos comandos continue-task e finish-task.





  Definir como `duplex`.

Solicitar corpo.

  O grupo de tarefas. Definir como `audio`.





  O tipo de tarefa. Definir como `tts`.





  O tipo de função. Definir como `SpeechSynthesizer`.





  O nome do modelo.





  Definir como um objeto vazio `{}`. Envie o texto para sintetizar através do comando continue-task.





  Parâmetros de síntese de fala.

  

    

      Definir como `PlainText`.
    


    

      A voz usada para síntese de fala.

      - **Vozes do sistema**: Consulte [CosyVoice Lista de vozes](/developer-guides/speech/voice-list/cosyvoice)
      - **Vozes clonadas**: vozes personalizadas criadas por meio de clonagem de voz
      - **Vozes personalizadas**: vozes personalizadas criadas através do design de voz
    


    

      O formato de codificação de áudio. Valores válidos: pcm, wav, mp3 (padrão), opus.
    


    

      A taxa de amostragem de áudio em Hz. Valores válidos: 8.000, 16.000, 22.050 (padrão), 24.000, 44100, 48.000.
    


    

      O nível de volume. Valor padrão: 50. Valores válidos: \[0, 100].
    


    

      A velocidade da fala. Valor padrão: 1,0. Valores válidos: \[0,5, 2,0].
    


    

      O campo. Valor padrão: 1,0. Valores válidos: \[0,5, 2,0].
    


    

      A taxa de bits de áudio em kbps. Quando 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].
    


    

      Especifica se o SSML deve ser ativado. Valor padrão: falso. Quando definido como verdadeiro, apenas um comando continue-task é permitido.
    


    

      Especifica se os carimbos de data/hora em nível de palavra devem ser ativados. Valor padrão: falso.

      Disponível apenas no modo de saída de streaming. Vozes suportadas: vozes clonadas de qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flash, cosyvoice-v3-flashe cosyvoice-v3-pluse vozes do sistema marcadas como suportadas em [Qwen-Audio-TTS lista de vozes](/developer-guides/speech/voice-list/qwen-audio-tts), [CosyVoice Lista de vozes](/developer-guides/speech/voice-list/cosyvoice). Vozes clonadas de outros modelos não suportam esse recurso.
    


    

      Uma semente aleatória para controlar a variação na saída da síntese. Quando a versão do modelo, o texto, a voz e outros parâmetros permanecem inalterados, o uso da mesma semente produz resultados idênticos. Valor padrão: 0. Valores válidos: \[0, 65535].
    


    

      Especifica o idioma de destino para síntese de fala para melhorar a qualidade da saída.

      

        - Este parâmetro é um array, mas a versão atual processa apenas o primeiro elemento. Passe um único valor.
        - Este parâmetro especifica o idioma alvo para síntese de fala. Não está relacionado ao idioma da amostra de áudio usada na clonagem de voz. Para definir o idioma de origem para uma tarefa de clonagem, consulte a referência da API de clonagem de voz.
      


      Quando a pronúncia de dígitos, a expansão de abreviações, a leitura de símbolos ou a síntese de idiomas minoritários não atenderem às expectativas, use este parâmetro.

      Valores válidos: zh (chinês), en (inglês), fr (francês), de (alemão), ja (japonês), ko (coreano), ru (russo), pt (português), th (tailandês), id (indonésio), vi (vietnamita), es (espanhol), it (italiano), ms (malaio), fil (filipino), ar (árabe).
    


    

      Define uma instrução para controlar dialeto, emoção ou caráter de voz durante a síntese. Para uso detalhado, consulte [Síntese de fala em tempo real](/developer-guides/speech/realtime-streaming#instruction-control).
    


    

      Especifica se uma marca d'água AIGC deve ser incorporada no áudio gerado. Quando definida como verdadeira, a marca d'água é incorporada em arquivos de áudio de formatos suportados (wav/mp3/opus). Valor padrão: falso. Somente qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flash, cosyvoice-v3-flashe cosyvoice-v3-plus suporte a esse recurso.
    


    

      Define o `ContentPropagator` campo na marca d’água AIGC, identificando o propagador do conteúdo. Só entra em vigor quando `enable_aigc_tag` é `true`. Valor padrão: UID do Alibaba Cloud. Somente qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flash, cosyvoice-v3-flashe cosyvoice-v3-plus suporte a esse recurso.
    


    

      Define o `PropagateID` campo na marca d'água AIGC, identificando exclusivamente uma ação de propagação específica. Só entra em vigor quando `enable_aigc_tag` é `true`. Valor padrão: O ID da solicitação de síntese de fala atual. Somente qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flash, cosyvoice-v3-flashe cosyvoice-v3-plus suporte a esse recurso.
    


    

      Configura correções de pronúncia e substituições de texto aplicadas antes da síntese. qwen-audio-3.0-tts-plus e qwen-audio-3.0-tts-flash não suportam esse recurso.

      - `pronunciation`: Pronúncia personalizada. Especifica anotações pinyin para palavras para corrigir pronúncias padrão imprecisas.
      - `replace`: Substituição de texto. Substitui palavras especificadas pelo texto de destino antes da síntese.

      ```json
      "hot_fix": {
        "pronunciation": [
          {"weather": "tian1 qi4"}
        ],
        "replace": [
          {"today": "gold day"}
        ]
      }
      ```
    


    

      Especifica se a filtragem Markdown deve ser habilitada. Quando ativado, o sistema remove automaticamente os símbolos de marcação Markdown do texto de entrada antes da síntese. Valor padrão: falso. Apenas vozes clonadas de cosyvoice-v3-flash suporte a esse recurso.

continuar-tarefa

Descrição: Envia o texto para sintetizar. O texto pode ser enviado de uma só vez ou em vários segmentos.

Quando enviar: Após receber o evento de tarefa iniciada do servidor.

Limites:

{
    "header": {
        "action": "continue-task",
        "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
        "streaming": "duplex"
    },
    "payload": {
        "input": {
            "text": "Before my bed, moonlight shines bright, I suspect it's frost upon the ground."
        }
    }
}

Cabeçalho da mensagem.

  O tipo de comando. Definir como `continue-task`.





  O ID da tarefa no formato UUID. Deve corresponder ao task\_id em run-task.





  Definir como `duplex`.

Solicitar corpo.

  Contém o texto a ser sintetizado.

  

    

      O texto a ser sintetizado. Máximo de 20.000 caracteres por mensagem e 200.000 caracteres cumulativamente.

tarefa final

Descrição: Notifica o servidor que todo o texto foi enviado e solicita a conclusão da tarefa. Também pode ser usado para cancelar o turno de síntese atual.

Quando enviar: Imediatamente após todo o texto ter sido enviado ou a qualquer momento para interromper o turno de síntese atual.

Evento de resposta: o servidor retorna um evento de tarefa concluída.

{
    "header": {
        "action": "finish-task",
        "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
        "streaming": "duplex"
    },
    "payload": {
        "input": {}
    }
}
{
    "header": {
        "action": "finish-task",
        "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
        "streaming": "duplex"
    },
    "payload": {
        "input": {
            "directive": "cancel"
        }
    }
}

Cabeçalho da mensagem.

  O tipo de comando. Definir como `finish-task`.





  O ID da tarefa no formato UUID. Deve corresponder ao task\_id em run-task.





  Definir como `duplex`.

Solicitar corpo.

  Definir como `{}` para conclusão normal da tarefa. Incluir `directive` para cancelar o turno de síntese atual.

  

    

      Controla como a tarefa termina. Atualmente apenas `cancel` é suportado. Quando definido para `cancel`, o turno de síntese atual é cancelado e o servidor retorna imediatamente um evento de tarefa concluída sem produzir mais áudio.

      Após o cancelamento, você pode iniciar uma nova tarefa de síntese na mesma conexão WebSocket enviando um novo evento run-task sem reconectar.

      

        Este recurso é compatível com Qwen-Audio-TTS modelos. CosyVoice os modelos não suportam esse recurso.