A geração de fala com amostragem zero é um dos recursos importantes do CosyVoice, e o procedimento é o seguinte:
- Preparação de amostras de áudioÉ necessário um arquivo de áudio de prompt de 16kHz (por exemplo, zero_shot_prompt.wav).
- Chamada da função geradoraUse o método reference_zero_shot e passe os parâmetros apropriados:
from cosyvoice import CosyVoice2
import torchaudio
cosyvoice = CosyVoice2('pretrained_models/CosyVoice2-0.5B')
prompt_speech_16k = torchaudio.load('./asset/zero_shot_prompt.wav')[0]
cosyvoice.inference_zero_shot('目标文本','提示文本',prompt_speech_16k) - Salvando a saída::
torchaudio.save('output.wav', j['tts_speech'], cosyvoice.sample_rate)
Advertências:
- Se quiser reproduzir totalmente o efeito do site oficial, você precisará definir o parâmetro text_frontend=False.
- O modelo CosyVoice 2-0.5B é recomendado para obter os melhores resultados!
- O método gera fala com base em amostras curtas do timbre alvo sem pré-treinamento.
Essa resposta foi extraída do artigoCosyVoice: ferramenta de geração e clonagem multilíngue de código aberto AliO