Se a ideia é gerar narrações naturais sem enviar cada frase para uma API paga, o Kokoro 82M TTS é um dos modelos abertos mais práticos para testar primeiro. Mas há uma ressalva importante: “82M” não significa “substituto universal do ElevenLabs”. O Kokoro se destaca com vozes predefinidas, narração limpa e processamento local em lote; já clonagem de voz, controle dramático e confiabilidade de um serviço gerenciado apontam para outras opções.
A decisão em poucas palavras
O Kokoro-82M é um modelo de conversão de texto em fala com pesos abertos e 82 milhões de parâmetros. O model card atual no Hugging Face informa que a versão v1.0 foi lançada em 27 de janeiro de 2025, oferece oito idiomas e 54 vozes, e usa pesos sob a licença Apache 2.0: model card oficial. A biblioteca oficial de inferência é a hexgrad/kokoro.
Escolha o Kokoro quando você precisa de narração privada ou offline, aceita trabalhar com vozes predefinidas e tem um volume de uso em que as cobranças de API começam a pesar. Prefira o ElevenLabs se clonagem de voz, um estúdio gerenciado ou uma entrega comercial mais expressiva forem prioridades. Já o Qwen3-TTS faz mais sentido quando suporte multilíngue e clonagem importam mais do que ter um modelo extremamente compacto.
Configuração local: o caminho que realmente funciona
Os exemplos oficiais usam Python, kokoro, soundfile, PyTorch e espeak-ng; o pipeline retorna áudio em 24 kHz. No Linux, a instalação básica é:
pip install -q "kokoro>=0.9.4" soundfile
sudo apt-get install espeak-ng
Um exemplo mínimo em inglês:
from kokoro import KPipeline
import soundfile as sf
pipeline = KPipeline(lang_code="a")
text = "Kokoro is a small local text to speech model."
for index, (_, _, audio) in enumerate(
pipeline(text, voice="af_heart", speed=1)
):
sf.write(f"kokoro-{index}.wav", audio, 24000)
O repositório documenta códigos de idioma para inglês americano e britânico, espanhol, francês, hindi, italiano, japonês, português brasileiro e mandarim. Japonês e mandarim exigem os extras correspondentes do Misaki. O código de idioma escolhido precisa ser compatível com a voz.
No Windows, a instalação não se resume a um único comando: o README do projeto direciona os usuários para a versão MSI do espeak-ng. Quem usa Apple Silicon pode tentar o PyTorch MPS com PYTORCH_ENABLE_MPS_FALLBACK=1. Quando a primeira execução dá errado, esses detalhes costumam ser mais importantes do que a quantidade de parâmetros do modelo.
CPU, GPU e velocidade em tempo real: o que está comprovado
A inferência em CPU é compatível, mas nem o model card oficial nem a biblioteca oficial informam um fator de tempo real universal. A velocidade varia conforme o ambiente de execução, o processador, o idioma, a divisão do texto e o fato de a primeira execução incluir ou não o carregamento do modelo.
As medições da comunidade mostram por que afirmações abrangentes exigem cautela. Em uma comparação detalhada, @analogalok relatou cerca de 0,7 segundo para gerar 21 segundos de áudio em uma GPU, usando aproximadamente 0,9 GB de VRAM nessa configuração. É uma evidência útil de que o modelo pode rodar em uma GPU com pouca memória, não uma promessa para qualquer notebook.
“Consigo rodá-lo tranquilamente usando minha CPU, e o áudio resultante é muito agradável de ouvir.” — @rasmus1610, X
Na sua própria máquina, meça três números separadamente:
- O tempo entre o início do processo e o primeiro trecho de áudio.
- O tempo depois que o modelo e a voz já estão carregados.
- A duração do áudio dividida pelo tempo de geração com o modelo aquecido: o fator de tempo real.
Para uma ferramenta de narração em lote, o terceiro número é o que determina o volume processado. Em um assistente interativo, a latência até o primeiro trecho e o comportamento do streaming são mais importantes. Não apresente um resultado de GPU como se fosse de CPU e não chame uma amostra de 10 segundos de “processamento de produção”.
Vozes, idiomas e limitações importantes
O model card da versão v1.0 lista oito idiomas e 54 vozes — uma expansão significativa em relação à v0.19, que tinha um idioma e 10 vozes. Os códigos de idioma documentados pela biblioteca incluem:
| Código | Idioma |
|---|---|
a | Inglês americano |
b | Inglês britânico |
e | Espanhol |
f | Francês |
h | Hindi |
i | Italiano |
j | Japonês |
p | Português brasileiro |
z | Mandarim |
O Kokoro trabalha com vozes predefinidas; não é um sistema de clonagem baseado em áudio de referência. Ele também depende da pilha de conversão de grafemas em fonemas do Misaki e de caminhos alternativos do espeak-ng. Nomes, abreviações, números e textos misturando idiomas merecem uma rodada de testes antes de uma exportação longa.
A licença Apache 2.0 do modelo é interessante para uso comercial, mas dizer que “o modelo está sob Apache 2.0” não resolve automaticamente a situação de cada amostra de voz, conjunto de dados ou dependência de terceiros. Inclua o model card, os arquivos de voz e as licenças das dependências na lista de verificação do lançamento.
Kokoro vs ElevenLabs vs Qwen3-TTS
Uma comparação de escuta às cegas só é relevante quando os três sistemas usam o mesmo texto, a mesma orientação de voz, a mesma normalização, o mesmo nível de saída e o mesmo grupo de avaliadores. Este artigo não aponta um vencedor em um teste controlado de escuta às cegas; os materiais oficiais do Kokoro não publicam esse tipo de avaliação. A comparação mais defensável é feita pelos compromissos envolvidos em cada fluxo de trabalho:
| Fator de decisão | Kokoro-82M | ElevenLabs | Qwen3-TTS |
|---|---|---|---|
| Implantação | Pesos locais e abertos | API e estúdio hospedados | Família de modelos locais e abertos |
| Licença/origem do modelo | Pesos Apache 2.0 | Termos do provedor | Os model cards oficiais listam Apache 2.0 |
| Vozes predefinidas | Sim | Ampla biblioteca de vozes hospedadas | CustomVoice e outras variantes |
| Clonagem de voz | Não | Disponível em planos/recursos compatíveis | A variante Base oferece clonagem por referência |
| Idiomas | 8 listados para a v1.0 | Depende do modelo; os preços oficiais da API variam conforme o modelo | 10 idiomas listados |
| Melhor uso | Narração privada em lote | Produção gerenciada e expressiva | Experimentos multilíngues ou de clonagem |
| Principal custo | Hardware ou inferência hospedada | Cobrança por caracteres/créditos | Hardware ou hospedagem |
A página oficial de preços da API do ElevenLabs lista atualmente cerca de US$ 0,05 por 1.000 caracteres para Flash/Turbo e US$ 0,10 por 1.000 caracteres para v2 Multilingual e v3: preços da API. O model card oficial do Qwen3-TTS lista chinês, inglês, japonês, coreano, alemão, francês, russo, português, espanhol e italiano, além de variantes voltadas à clonagem: model card do Qwen3-TTS.
Na prática, a conclusão não é “o Kokoro soa melhor”. O ponto é que o Kokoro elimina a dependência recorrente de uma API e permite manter o texto na sua máquina, enquanto o ElevenLabs oferece conveniência e o Qwen3-TTS entrega um conjunto mais amplo de recursos multilíngues e de clonagem, em troca de um modelo local maior.
Custo da narração em lote: números que você consegue justificar
O Kokoro local não tem cobrança do modelo por caractere. Seu custo marginal é composto por eletricidade, armazenamento e pela máquina ou instância de nuvem usada na inferência. Se você já tem o equipamento, o custo incremental de software é efetivamente zero; se aluga uma GPU ou CPU, use a tarifa por hora do provedor multiplicada pelo tempo total de geração.
Para comparar com uma API, o model card do Kokoro registrou, em abril de 2025, exemplos hospedados abaixo de US$ 1 por milhão de caracteres de entrada, incluindo US$ 0,65 na Replicate e US$ 0,80 na DeepInfra. São referências datadas, não garantias de preços atuais. Para o mesmo volume de texto, as tarifas oficiais do ElevenLabs indicam:
| Volume de trabalho | Cobrança do modelo local Kokoro | ElevenLabs Flash/Turbo | ElevenLabs v2 Multilingual/v3 |
|---|---|---|---|
| 100.000 caracteres | US$ 0 localmente* | US$ 5 | US$ 10 |
| 1.000.000 de caracteres | US$ 0 localmente* | US$ 50 | US$ 100 |
| 10.000.000 de caracteres | US$ 0 localmente* | US$ 500 | US$ 1.000 |
\*Não inclui eletricidade, hardware, hospedagem nem tempo de engenharia. Os valores do ElevenLabs usam as tarifas oficiais de US$ 0,05/US$ 0,10 por 1.000 caracteres e ignoram descontos de planos, créditos, impostos e regras de excedentes. A tabela é um modelo de orçamento, não uma promessa do valor final da cobrança.
Por isso, o Kokoro é especialmente interessante para pipelines de narração repetíveis: legendas, documentação, áudio de acessibilidade e vídeos internos de treinamento. Ele é menos atraente quando o custo humano para revisar a pronúncia e juntar os segmentos supera o valor da API.
Perguntas frequentes
O Kokoro roda sem GPU?
Sim. A inferência em CPU é compatível, mas o projeto oficial não promete um fator de tempo real universal. Meça o desempenho com o modelo aquecido na CPU e no idioma exatos que você pretende usar em produção.
O Kokoro clona vozes?
Não. O Kokoro usa vozes predefinidas. Quando a identidade do locutor é um requisito central, use um modelo com capacidade de clonagem, como uma variante adequada do Qwen3-TTS.
O Kokoro é gratuito para uso comercial?
O model card do Kokoro-82M lista os pesos sob a licença Apache 2.0, que é permissiva. Antes de lançar um produto comercial, revise os termos específicos da voz, das dependências e da distribuição.
Quais idiomas o Kokoro suporta?
O model card da v1.0 lista oito idiomas; a biblioteca oficial documenta inglês americano e britânico, além de espanhol, francês, hindi, italiano, japonês, português brasileiro e mandarim. Pode ser necessário instalar pacotes específicos para cada idioma.
O Kokoro é melhor que o ElevenLabs?
Não em todos os aspectos. O Kokoro é mais adequado para narração local, privada e em lote com vozes predefinidas; o ElevenLabs é uma escolha mais segura para infraestrutura gerenciada, clonagem de voz e fluxos de produção expressivos.
A escolha prática
Comece pelo Kokoro se o seu teste de aceitação for: “Esta máquina consegue produzir uma narração limpa e privada, no ritmo necessário, usando uma das vozes disponíveis?”. Faça o teste com nomes, datas, números, parágrafos longos e os idiomas de que você realmente precisa.
Se o resultado for positivo, a conta é simples: você troca cobranças recorrentes por caractere pelo tempo de máquina. Se o modelo falhar na pronúncia, na identidade do locutor ou na direção emocional, migrar para o ElevenLabs ou para o Qwen3-TTS não significa admitir uma derrota de qualidade; significa pagar por um recurso que o Kokoro deliberadamente não prioriza.
Para a opção comercial dentro desse mesmo cenário, veja o guia da API ElevenLabs Eleven v3.