GLM-TTS: a resposta da Zhipu, pronta para produção, ao TTS chinês 'bom o bastante'
- O que é o GLM-TTS?
- Por dentro: o encontro do LLM com o flow matching
- Aprendizado por reforço GRPO: otimizar três aspectos ao mesmo tempo
- Controle emocional e paralinguístico
- Phoneme-in: pronúncia precisa sem abrir mão da flexibilidade
- Personalização de voz baseada em LoRA
- Desempenho e streaming
- Primeiros passos com o GLM-TTS
- Dicas para obter melhores resultados
- GLM-TTS em comparação com outros modelos open source fortes em chinês
- Perguntas frequentes
- Gere uma voz semelhante a partir de um áudio de referência
Transforme textos e gravações em áudio pronto para ouvir
Dublagem, stems, covers e efeitos sonoros, tudo no navegador.
- Texto para fala, e também clonagem de voz
- Separe as faixas, ou gere um cover
- Cadastre-se para ouvir primeiro e decidir depois
Muitos modelos TTS open source são demos de pesquisa vestidas com um README do GitHub. O GLM-TTS, lançado pela Zhipu AI em colaboração com a Universidade Tsinghua, foi construído desde o início com outro objetivo: a implantação em produção. Ele clona uma voz a partir de um clipe de 3 segundos, controla emoção e pronúncia com verdadeira precisão e foi treinado com um conjunto comparativamente modesto de 100 mil horas de dados, ainda assim alcançando resultados de ponta em vários benchmarks abertos — a eficiência é tão importante quanto a qualidade bruta.
O que é o GLM-TTS?
O GLM-TTS é um sistema open source de texto para voz, de nível industrial, desenvolvido por pesquisadores da Zhipu AI e da Universidade Tsinghua. Ele foi construído em torno de uma arquitetura de duas etapas: primeiro, um modelo de linguagem autorregressivo que transforma texto em tokens; depois, um modelo de flow matching que converte tokens em forma de onda. Essa combinação — modelo de linguagem para conteúdo e estrutura, flow matching para a realização acústica — segue um padrão geral semelhante ao de outros sistemas TTS modernos, mas o GLM-TTS se diferencia por um conjunto específico de decisões de engenharia voltadas à produção: um tokenizador de voz otimizado, um framework de treinamento por aprendizado por reforço ajustado para várias dimensões de qualidade ao mesmo tempo e ferramentas leves para implantar vozes personalizadas sem retreinar o modelo inteiro.
Por dentro: o encontro do LLM com o flow matching
A primeira etapa é um modelo de linguagem autorregressivo baseado na arquitetura Llama que transforma o texto de entrada, combinado com um embedding de locutor, em uma sequência de tokens de voz. Esse embedding é extraído por um modelo CAMPPlus no frontend do sistema — forneça qualquer clipe de referência de 3 a 10 segundos e o GLM-TTS reproduzirá imediatamente o timbre e a prosódia daquela voz, sem exigir ajuste fino para cada locutor.
A segunda etapa pega esses tokens e os transforma em áudio real usando um Diffusion Transformer com flow matching contínuo, convertendo a sequência de tokens em espectrogramas mel de alta qualidade antes que um vocoder produza a forma de onda final. O próprio tokenizador de voz do GLM-TTS foi otimizado especificamente com restrições de frequência fundamental (pitch) integradas, o que ajuda a explicar por que a precisão do pitch e a qualidade geral da voz se mantêm mesmo com a escala de treinamento comparativamente modesta de 100 mil horas.
Aprendizado por reforço GRPO: otimizar três aspectos ao mesmo tempo
Esta é a contribuição técnica mais marcante do GLM-TTS, e vale a pena entender por que ela importa. A maior parte do treinamento de TTS otimiza um único objetivo dominante — geralmente inteligibilidade ou semelhança com o locutor — e trata outras qualidades, como expressividade emocional, como secundárias. Em vez disso, o GLM-TTS usa um framework de aprendizado por reforço com múltiplas recompensas baseado em GRPO (Group Relative Policy Optimization) que otimiza conjuntamente a precisão da pronúncia, a semelhança com o locutor e a prosódia expressiva, em vez de tratá-las em sequência ou isoladamente. Essa otimização conjunta é o mecanismo específico que permite ao GLM-TTS evitar a qualidade monótona e “mecânica” que afeta muitas saídas de TTS: elas pronunciam as palavras corretamente do ponto de vista técnico, mas não soam como alguém realmente falando.
Controle emocional e paralinguístico
Com base nesse mesmo framework de RL, o GLM-TTS pode gerar interpretações emocionais específicas — felizes, tristes ou raivosas — junto com sons paralinguísticos naturais, como risadas e respiração, diretamente como parte da geração, em vez de recorrer a um pós-processamento separado. Trata-se de expressividade orientada por aprendizado por reforço, não de um parâmetro fixo de emoção, o que ajuda a interpretação resultante a soar mais organicamente ligada ao conteúdo real do que aquela produzida por uma simples tag de estilo.
Phoneme-in: pronúncia precisa sem abrir mão da flexibilidade
O GLM-TTS aceita um esquema híbrido de entrada de fonemas e texto, chamado “Phoneme-in”, que permite misturar notação fonética explícita diretamente em uma entrada de texto comum. Ele foi criado especificamente para resolver o problema de caracteres polifônicos e palavras raras que confunde muitos sistemas TTS — quando determinado caractere ou palavra tem opções de pronúncia ambíguas —, oferecendo uma forma direta e precisa de fixar a leitura correta apenas da palavra ou expressão problemática, sem precisar transcrever foneticamente uma frase inteira.
Personalização de voz baseada em LoRA
Para cenários de implantação que precisam de uma voz personalizada específica e consistente além do que a clonagem zero-shot consegue oferecer com confiabilidade, o GLM-TTS aceita personalização eficiente em parâmetros por meio de LoRA (Low-Rank Adaptation), uma abordagem leve de ajuste fino que adapta o modelo a uma voz-alvo sem o custo e a complexidade de retreinar toda a rede. É o meio-termo prático entre uma clonagem zero-shot “boa o bastante” e um pipeline completo de treinamento personalizado.
Desempenho e streaming
Graças ao seu decodificador baseado em flow matching, o GLM-TTS oferece inferência em streaming nativamente e, em uma RTX 4090, o sistema funciona a cerca de 3 a 5 vezes a velocidade de tempo real — rápido o suficiente para assistentes ao vivo, diálogos de personagens de jogos e comentários em streaming, casos de uso nos quais esperar a geração de um clipe inteiro terminar não é uma opção.
Primeiros passos com o GLM-TTS
- Verifique primeiro o hardware. O GLM-TTS foi desenvolvido para Python 3.10–3.12 e requer uma GPU NVIDIA com pelo menos 8 GB de VRAM, além de um kit de ferramentas CUDA funcional; reserve cerca de 9 GB de espaço em disco para os pesos do modelo. A inferência em CPU é possível, mas drasticamente mais lenta — espere de 5 a 15 minutos por geração, em vez dos poucos segundos necessários com uma GPU.
- Baixe os pesos do modelo. Use
huggingface-cli download zai-org/GLM-TTS --local-dir ckptou baixe pelo ModelScope commodelscope download --model ZhipuAI/GLM-TTS --local-dir ckptse essa fonte for mais rápida na sua região. - Instale as dependências. Configure um ambiente Python 3.10–3.12 e instale os pacotes do arquivo
requirements.txtdo projeto antes de executar qualquer script de inferência. - Execute uma geração básica.
python glmtts_inference.py --data=example_zh --exp_name=_test --use_cachepercorre o fluxo de exemplo documentado usando os dados de amostra fornecidos. - Adicione a opção
--phonemepara controlar a pronúncia com precisão. Quando você precisar fixar uma leitura específica para um caractere polifônico ou uma palavra rara, ativar os recursos de fonema por meio dessa opção dá acesso à entrada híbrida de fonemas e texto, em vez de depender da inferência padrão somente com texto. - Experimente o aplicativo Gradio para testes rápidos. Envie um clipe de referência, digite o texto, ajuste parâmetros de geração como temperature e top_p e ouça diretamente o resultado, em vez de programar manualmente cada teste.
Dicas para obter melhores resultados
- Use um clipe de referência realmente limpo, com 3 a 10 segundos. Como o embedding de locutor do CAMPPlus faz o trabalho pesado na clonagem zero-shot, o ruído de fundo ou uma gravação ruim no clipe de referência degradará a reprodução do timbre mais do que em algumas outras arquiteturas.
- Recorra ao Phoneme-in especificamente para caracteres polifônicos e palavras raras, não para roteiros inteiros. Ele foi projetado como uma ferramenta de correção direcionada: misturar notação fonética apenas onde a pronúncia é realmente ambígua mantém o fluxo de trabalho mais simples do que converter frases inteiras em fonemas sem necessidade.
- Use a personalização com LoRA quando o resultado zero-shot não for consistente o suficiente. Se uma voz específica precisar soar confiável em um grande volume de conteúdo, em vez de apenas em um único clipe, o caminho do LoRA é mais prático do que esperar repetidamente que a clonagem zero-shot acerte todas as vezes.
- Combine a GPU com as suas necessidades de latência. O valor documentado de 3–5 vezes a velocidade de tempo real é específico para uma RTX 4090 — se você for implantar o sistema em um hardware mais modesto, meça o throughput real antes de se comprometer com um caso de uso em tempo real ou em streaming.
- Não dependa da inferência em CPU para nada que seja sensível ao tempo. Dada a diferença de 5 a 15 minutos por geração entre o desempenho de CPU e GPU, a inferência em CPU fica realisticamente limitada a usos offline e não interativos, em vez de qualquer aplicação ao vivo.
GLM-TTS em comparação com outros modelos open source fortes em chinês
| GLM-TTS | CosyVoice3 | GPT-SoVITS | |
|---|---|---|---|
| Organização responsável | Zhipu AI + Universidade Tsinghua | Alibaba (FunAudioLLM) | RVC-Boss (independente) |
| Clonagem zero-shot | Sim, referência de ~3–10 segundos | Sim, referência de ~3–10 segundos | Sim, 5 segundos |
| Método de treinamento | RL GRPO com múltiplas recompensas (pronúncia + semelhança + prosódia em conjunto) | Treinamento supervisionado | Supervisionado + ajuste fino opcional |
| Controle de emoção | Orientado por RL (feliz/triste/com raiva, risadas, respiração) | Baseado em instruções | Não é um recurso dedicado |
| Correção de pronúncia | Entrada híbrida Phoneme-in | Inpainting de pronúncia | Anotação manual |
| Streaming | Sim, nativo | Sim | Não |
| Licença | Apache 2.0 (código) / MIT (pesos) | Aberto, com API hospedada disponível | MIT |
A contribuição específica do GLM-TTS é tratar pronúncia, semelhança com o locutor e prosódia emocional como objetivos a serem otimizados em conjunto, em vez de em sequência — uma diferença de metodologia de treinamento menos visível do que um recurso de destaque, mas que representa exatamente o tipo de decisão de engenharia que separa um sistema realmente pronto para produção de uma boa demonstração de pesquisa.
Perguntas frequentes
Quem desenvolveu o GLM-TTS?
O GLM-TTS foi desenvolvido pela Zhipu AI em colaboração com a Universidade Tsinghua e lançado como open source em dezembro de 2025.
De quanto áudio de referência o GLM-TTS precisa para clonar uma voz?
Aproximadamente 3 a 10 segundos. Um modelo CAMPPlus extrai o embedding do locutor, permitindo a clonagem zero-shot sem exigir ajuste fino para cada locutor.
O que é GRPO no contexto do GLM-TTS?
É Group Relative Policy Optimization, um framework de aprendizado por reforço que o GLM-TTS usa para otimizar conjuntamente, durante o treinamento, a precisão da pronúncia, a semelhança com o locutor e a prosódia expressiva, em vez de tratá-las como objetivos separados e sequenciais.
O GLM-TTS é gratuito para uso comercial?
Sim. O código do GLM-TTS é disponibilizado sob a licença Apache 2.0 e os pesos do modelo sob a licença MIT; ambas permitem uso comercial.
De qual hardware preciso para executar o GLM-TTS?
Uma GPU NVIDIA com pelo menos 8 GB de VRAM, o kit de ferramentas CUDA instalado, Python 3.10–3.12 e aproximadamente 9 GB de espaço em disco para os pesos do modelo. A inferência em CPU funciona, mas é significativamente mais lenta.
Gere uma voz semelhante a partir de um áudio de referência
Para um fluxo com um objetivo semelhante, use a Clonagem de voz da Echora. Envie uma gravação da sua própria voz ou de uma voz que você tenha permissão explícita para usar, insira até 5.000 caracteres de texto novo e gere uma nova fala parecida com a referência.