Nova versão do sistema de síntese de fala Silero

Uma nova versão pública do sistema de síntese de fala da rede neural Silero Text-to-Speech está disponível. O projeto tem como objetivo principal a criação de um sistema de síntese de voz moderno e de alta qualidade que não seja inferior às soluções comerciais das corporações e seja acessível a todos sem o uso de equipamentos de servidor caros.

Os modelos são distribuídos sob licença GNU AGPL, mas a empresa que desenvolve o projeto não divulga o mecanismo de treinamento dos modelos. Para executar, você pode usar PyTorch e estruturas que suportam o formato ONNX. A síntese de fala no Silero é baseada no uso de algoritmos de rede neural modernos profundamente modificados e métodos de processamento de sinal digital.

Observa-se que o principal problema das soluções modernas de redes neurais para síntese de voz é que muitas vezes elas estão disponíveis apenas em soluções de nuvem pagas e os produtos públicos têm altos requisitos de hardware, são de qualidade inferior ou não estão completos e prontos para uso. produtos. Por exemplo, para executar uma das novas arquiteturas de síntese populares de ponta a ponta, VITS, sem problemas no modo de síntese (ou seja, não para treinamento de modelo), são necessárias placas de vídeo com mais de 16 gigabytes de VRAM.

Contrariando a tendência atual, as soluções Silero são executadas com sucesso mesmo em thread 1 x86 de um processador Intel com instruções AVX2. Em 4 threads de processador, a síntese permite sintetizar de 30 a 60 segundos por segundo no modo de síntese de 8 kHz, no modo de 24 kHz - 15-20 segundos e no modo de 48 kHz - cerca de 10 segundos.

Principais recursos da nova versão do Silero:

  • O tamanho do modelo foi reduzido em 2 vezes para 50 megabytes;
  • Os modelos sabem fazer uma pausa;
  • Estão disponíveis 4 vozes de alta qualidade em russo (e um número infinito de vozes aleatórias). Exemplos de pronúncia;
  • Os modelos ficaram 10 vezes mais rápidos e, por exemplo, no modo 24 kHz permitem sintetizar até 20 segundos de áudio por segundo em 4 threads do processador;
  • Todas as opções de voz para um idioma são agrupadas em um modelo;
  • Os modelos podem aceitar parágrafos inteiros de texto como entrada, tags SSML são suportadas;
  • A síntese funciona em três frequências de amostragem para escolher ao mesmo tempo - 8, 24 e 48 quilohertz;
  • Os “problemas das crianças” foram resolvidos: instabilidade e falta de palavras;
  • Adicionadas bandeiras para controlar a colocação automática de acentos e a colocação da letra “е”.

Atualmente, para a versão mais recente da síntese, 4 vozes em russo estão disponíveis publicamente, mas num futuro próximo a próxima versão será publicada com as seguintes alterações:

  • A taxa de síntese aumentará mais 2 a 4 vezes;
  • Os modelos de síntese para os idiomas CIS serão atualizados: Kalmyk, Tatar, Uzbek e Ucraniano;
  • Serão adicionados modelos para idiomas europeus;
  • Serão adicionados modelos para idiomas indianos;
  • Modelos para inglês serão adicionados.

Algumas das falhas do sistema inerentes à síntese do Silero:

  • Ao contrário das soluções de síntese mais tradicionais, como RHVoice, a síntese Silero não possui integração SAPI, clientes fáceis de instalar ou integrações para Windows e Android;
  • A velocidade, embora alta sem precedentes para tal solução, pode não ser suficiente para síntese em tempo real em processadores fracos e de alta qualidade;
  • A solução de acento automático não lida com homógrafos (palavras como castelo e castelo) e ainda comete erros, mas isso será corrigido em versões futuras;
  • A versão atual da síntese não funciona em processadores sem instruções AVX2 (ou você precisa alterar especificamente as configurações do PyTorch) porque um dos módulos dentro do modelo é quantizado;
  • A versão atual da síntese tem essencialmente uma única dependência do PyTorch; todo o recheio é “conectado” dentro do modelo e dos pacotes JIT. Os códigos-fonte dos modelos não são publicados, assim como o código para execução de modelos de clientes PyTorch para outras linguagens;
  • Libtorch, disponível para plataformas móveis, é muito mais volumoso que o tempo de execução ONNX, mas uma versão ONNX do modelo ainda não está disponível.

Fonte: opennet.ru

Adicionar um comentário