Home
Login

CosyVoice: Um modelo grande de geração de voz multilíngue, fornecendo recursos completos de inferência, treinamento e implantação.

Apache-2.0Python 14.5kFunAudioLLM Last Updated: 2025-06-12

Apresentação Detalhada do Projeto CosyVoice

Visão Geral do Projeto

CosyVoice é um modelo de geração de voz multilíngue de grande porte desenvolvido pela equipe FunAudioLLM da Alibaba, que oferece uma solução completa de pilha para inferência, treinamento e implantação. Este projeto se concentra em tecnologia de síntese de voz de alta qualidade, suportando vários idiomas e cenários de aplicação.

Principais Características

Últimas Características do CosyVoice 2.0

Idiomas Suportados

  • Chinês, Inglês, Japonês, Coreano
  • Dialetos Chineses: Cantonês, Sichuanês, Shanghainês, Tianjinês, Wuhanês, etc.

Avanços Tecnológicos

  • Híbrido Interlinguístico e Multilíngue: Suporta cenários de troca de idiomas e códigos com clonagem de voz zero-shot.
  • Suporte de Streaming Bidirecional: Integra tecnologias de modelagem offline e de streaming.
  • Síntese de Latência Ultrabaixa: Latência de síntese do primeiro pacote de até 150 milissegundos, mantendo a saída de áudio de alta qualidade.
  • Melhora na Precisão da Pronúncia: Redução de 30% a 50% nos erros de pronúncia em comparação com a versão 1.0.
  • Conquistas de Benchmark: Atinge a menor taxa de erro de caracteres no conjunto de testes difíceis do conjunto de avaliação Seed-TTS.
  • Consistência da Tonalidade: Garante uma consistência confiável da tonalidade na síntese de voz zero-shot e interlinguística.
  • Aprimoramento da Prosódia e Qualidade Sonora: Alinhamento aprimorado do áudio sintetizado, com pontuação de avaliação MOS aumentando de 5,4 para 5,53.
  • Flexibilidade Emocional e Dialetal: Suporta controle emocional mais refinado e ajuste de sotaque.

Versões do Modelo

CosyVoice2-0.5B (Recomendado)

  • Versão mais recente, com desempenho superior.
  • Suporta todas as características mais recentes.

Série CosyVoice-300M

  • CosyVoice-300M: Modelo base
  • CosyVoice-300M-SFT: Versão de ajuste fino supervisionado
  • CosyVoice-300M-Instruct: Versão de ajuste fino de instrução

Modos de Funcionalidade

1. Clonagem de Voz Zero-Shot

  • Clone a voz com apenas alguns segundos de amostra de áudio.
  • Suporta clonagem de voz interlinguística.
  • Mantém as características de tonalidade do falante original.

2. Síntese Interlinguística (Cross-lingual)

  • Sintetize a fala em outro idioma usando uma amostra de áudio em um idioma.
  • Suporta várias combinações de idiomas, como chinês, inglês, japonês, coreano, cantonês, etc.

3. Conversão de Voz (Voice Conversion)

  • Converta a voz de um falante para a tonalidade de outro falante.
  • Altere a tonalidade enquanto mantém o conteúdo original.

4. Modo de Ajuste Fino Supervisionado (SFT)

  • Realize a síntese de voz usando identidades de falante predefinidas.
  • Qualidade de síntese estável e confiável.

5. Modo de Controle de Instrução (Instruct)

  • Controle a síntese de voz por meio de instruções em linguagem natural.
  • Suporta rótulos emocionais e efeitos especiais.
  • Controla o estilo da fala, expressão emocional, etc.

6. Controle Fino

  • Suporta marcadores especiais como risadas [laughter], respiração [breath], etc.
  • Suporta controle de ênfase <strong></strong>.
  • Ajuste fino de emoção e prosódia.

Arquitetura Técnica

Tecnologias Essenciais

  • Marcação de Fala Discreta: Tecnologia de marcação de fala discreta baseada em supervisão.
  • Decodificação Semântica Progressiva: Utiliza modelos de linguagem (LMs) e Flow Matching.
  • Modelagem de Streaming Bidirecional: Suporta inferência em tempo real e em lote.
  • Integração Multimodal: Integração perfeita com grandes modelos de linguagem.

Otimização de Desempenho

  • Suporte de Inferência de Streaming: Inclui cache KV e otimização SDPA.
  • Amostragem Sensível à Repetição (RAS): Melhora a estabilidade do LLM.
  • Aceleração TensorRT: Suporta inferência acelerada por GPU.
  • Precisão FP16: Equilibra desempenho e qualidade.

Instalação e Uso

Requisitos de Ambiente

  • Python 3.10
  • GPU com suporte CUDA (recomendado)
  • Gerenciamento de ambiente Conda

Início Rápido

# Clonar o repositório
git clone --recursive https://github.com/FunAudioLLM/CosyVoice.git
cd CosyVoice

# Criar o ambiente
conda create -n cosyvoice -y python=3.10
conda activate cosyvoice
conda install -y -c conda-forge pynini==2.1.5
pip install -r requirements.txt

Download do Modelo

from modelscope import snapshot_download

# Baixar CosyVoice2.0 (recomendado)
snapshot_download('iic/CosyVoice2-0.5B', local_dir='pretrained_models/CosyVoice2-0.5B')

# Baixar outras versões
snapshot_download('iic/CosyVoice-300M', local_dir='pretrained_models/CosyVoice-300M')
snapshot_download('iic/CosyVoice-300M-SFT', local_dir='pretrained_models/CosyVoice-300M-SFT')
snapshot_download('iic/CosyVoice-300M-Instruct', local_dir='pretrained_models/CosyVoice-300M-Instruct')

Exemplo de Uso Básico

from cosyvoice.cli.cosyvoice import CosyVoice2
from cosyvoice.utils.file_utils import load_wav
import torchaudio

# Inicializar o modelo
cosyvoice = CosyVoice2('pretrained_models/CosyVoice2-0.5B')

# Clonagem de voz zero-shot
prompt_speech = load_wav('./asset/zero_shot_prompt.wav', 16000)
for i, result in enumerate(cosyvoice.inference_zero_shot(
    '收到好友从远方寄来的生日礼物,那份意外的惊喜与深深的祝福让我心中充满了甜蜜的快乐。', 
    '希望你以后能够做的比我还好呦。', 
    prompt_speech
)):
    torchaudio.save(f'output_{i}.wav', result['tts_speech'], cosyvoice.sample_rate)

# Síntese de controle de instrução
for i, result in enumerate(cosyvoice.inference_instruct2(
    '今天天气真不错,我们去公园散步吧。', 
    '用四川话说这句话', 
    prompt_speech
)):
    torchaudio.save(f'instruct_{i}.wav', result['tts_speech'], cosyvoice.sample_rate)

Soluções de Implantação

Implantação de Interface Web

python3 webui.py --port 50000 --model_dir pretrained_models/CosyVoice2-0.5B

Implantação de Contêiner Docker

cd runtime/python
docker build -t cosyvoice:v1.0 .

# Serviço gRPC
docker run -d --runtime=nvidia -p 50000:50000 cosyvoice:v1.0 \
  /bin/bash -c "cd /opt/CosyVoice/CosyVoice/runtime/python/grpc && \
  python3 server.py --port 50000 --model_dir iic/CosyVoice2-0.5B"

# Serviço FastAPI  
docker run -d --runtime=nvidia -p 50000:50000 cosyvoice:v1.0 \
  /bin/bash -c "cd /opt/CosyVoice/CosyVoice/runtime/python/fastapi && \
  python3 server.py --port 50000 --model_dir iic/CosyVoice2-0.5B"

Cenários de Aplicação

Aplicações Comerciais

  • Atendimento ao Cliente Inteligente: Sistema de atendimento ao cliente multilíngue.
  • Audiolivros: Narração personalizada e dublagem de personagens.
  • Assistentes de Voz: Experiência de interação homem-máquina natural.
  • Educação Online: Produção de conteúdo de ensino multilíngue.

Aplicações Criativas

  • Produção de Podcasts: Geração automatizada de conteúdo de podcast.
  • Dublagem de Jogos: Síntese de voz de personagens.
  • Produção de Vídeos Curtos: Solução de dublagem rápida.
  • Tradução de Voz: Tradução de voz para voz em tempo real.

Integração Técnica

  • Integração com LLM: Construção de sistemas de diálogo completos.
  • Chat de Voz Emocional: Suporta robôs de diálogo com expressão emocional.
  • Podcasts Interativos: Geração de conteúdo dinâmico.
  • Audiolivros Expressivos: Rica expressividade emocional.

Vantagens Técnicas

Métricas de Desempenho

  • Latência: Síntese do primeiro pacote de até 150ms.
  • Qualidade: MOS