Kokoro continua aparecendo por toda parte — ficou em 1º no Hacker News, lidera rankings abertos de texto para fala, e criadores não param de perguntar se um modelo de 82 milhões de parâmetros que roda em uma CPU comum consegue mesmo substituir uma API de voz paga. Então nós instalamos, rodamos em um laptop e geramos as amostras que você pode ouvir abaixo. Este é um teardown prático: o que é o Kokoro, o quão bem ele realmente soa, as duas armadilhas de configuração que nos fizeram perder tempo e quando uma ferramenta hospedada é a melhor escolha. Fonte: github.com/hexgrad/kokoro (Apache-2.0).

O que é Kokoro, e quem o criou?

Kokoro é um modelo de texto para fala com pesos abertos publicado pela hexgrad como Kokoro-82M. A manchete está no próprio nome: 82 milhões de parâmetros — minúsculo pelos padrões de 2026, pequeno o bastante para rodar em um celular — e ainda assim produz narração natural e expressiva. Ele é baseado na linhagem do StyleTTS 2 e lançado sob a licença permissiva Apache-2.0, então é de fato gratuito para uso comercial.

Em 2026-07-11, o repositório principal hexgrad/kokoro tinha cerca de 7.900 estrelas no GitHub. Nós o executamos via o runtime ONNX da comunidade thewh1teagle/kokoro-onnx (cerca de 2.600 estrelas, MIT), que é a forma mais fácil de rodar em CPU sem instalar PyTorch.

Fuçando o arquivo de pesos, contamos 54 vozes integradas, cobrindo 9 grupos de idiomas e sotaques — inglês americano e britânico, espanhol, francês, hindi, italiano, japonês, português do Brasil e mandarim. As vozes de inglês americano são claramente as mais refinadas.

Nós realmente rodamos (Apple M3 Pro, apenas CPU)

Sem GPU, sem nuvem — só um MacBook Pro com M3 Pro e 18 GB de RAM. Aqui vai o relato honesto, passo a passo.

Instalação e pesos

O pacote Python instala em segundos: pip install kokoro-onnx soundfile. Mas aqui vai a primeira armadilha — o pacote pip traz o código, não o modelo. Você precisa baixar manualmente dois arquivos na página de releases do kokoro-onnx no GitHub: kokoro-v1.0.onnx (310 MB) e voices-v1.0.bin (27 MB). O quickstart passa por cima disso, então a primeira execução falha com erro de arquivo ausente até você baixar os pesos.

O bug do caminho do espeak-ng (o que nos custou tempo de verdade)

Kokoro transforma texto em fonemas com espeak-ng. Na primeira síntese, demos de cara com isto:

Error processing file '/Users/runner/work/espeakng-loader/.../espeak-ng-data/phontab': No such file or directory

Esse caminho /Users/runner/work/ é uma pista óbvia: o wheel pip espeakng-loader empacota um libespeak-ng compilado em CI com um caminho de dados hard-coded que não existe na sua máquina. A parte frustrante: definir a variável de ambiente ESPEAK_DATA_PATH não muda nada, porque o kokoro-onnx nunca a lê — ele pega o caminho de dados direto do loader empacotado.

A correção que funcionou: instale um espeak-ng de sistema de verdade e aponte o Kokoro para ele explicitamente via EspeakConfig:

brew install espeak-ng   # macOS; apt install espeak-ng on Linux

from kokoro_onnx import Kokoro, EspeakConfig
cfg = EspeakConfig(
    lib_path="/opt/homebrew/lib/libespeak-ng.dylib",
    data_path="/opt/homebrew/share/espeak-ng-data",
)
k = Kokoro("kokoro-v1.0.onnx", "voices-v1.0.bin", espeak_config=cfg)

Depois disso, a geração simplesmente funciona. Se você já brigou com esse mesmo erro phontab: No such file, essa é a correção.

Velocidade (medida, com o modelo aquecido)

Só na CPU, o modelo carrega em cerca de 1.7 segundos e a síntese fica confortavelmente mais rápida do que em tempo real. Um parágrafo de narração de 22 segundos foi renderizado em 3.5 segundos — um fator de tempo real em torno de 0.16×, aproximadamente seis vezes mais rápido do que a reprodução. Frases curtas únicas voltam em um a dois segundos. Para um modelo tão pequeno em um laptop, isso é uma taxa de processamento realmente utilizável em produção. Aqui está a forma de onda real desse render do parágrafo:

Forma de onda de um parágrafo de narração de 22 segundos que geramos com Kokoro em uma CPU M3 Pro

Amostras que geramos (sem edição)

Cada clipe abaixo foi produzido por nós com Kokoro na CPU M3 Pro descrita acima — saída bruta do modelo, sem limpeza, sem pós-processamento. Dê o play e julgue a qualidade você mesmo.

af_sarah — inglês americano
am_michael — inglês americano
bf_emma — inglês britânico
Narração mais longa (af_sarah, 22 segundos) — o parágrafo que testamos acima

Gerado pela VisionStory com Kokoro-82M via kokoro-onnx, 2026-07-11. Repare no indício revelador: é uma faixa de voz limpa — mas é só uma voz. Não há rosto, nem movimento labial, nem apresentador na tela. Essa lacuna é todo o ponto da próxima seção.

Veredito sincero: pontos fortes e limites reais

O que realmente nos impressionou:

  • A qualidade por byte é notável. Para 82 milhões de parâmetros, as vozes de inglês americano são naturais e expressivas — próximas o bastante de TTS pago para que a maioria das pessoas não perceba em um clipe curto.
  • Ele realmente roda em CPU, e rápido. Seis vezes mais rápido que tempo real em um laptop sem GPU é o grande destaque, e isso se confirma.
  • De verdade gratuito e amigável para uso comercial. Apache-2.0 sem cobrança por caractere. Para narração em alto volume, essa economia é difícil de bater.

Onde ele deixa a desejar — e isso é real:

  • Sem clonagem de voz. Você fica com 54 vozes pré-definidas. Não dá para clonar sua própria voz ou a voz de um cliente — se esse é o seu caso de uso, Kokoro é um beco sem saída.
  • A qualidade do inglês depende do espeak-ng, o que significa o bug de empacotamento acima, além de nomes, marcas ou siglas ocasionalmente pronunciados errado.
  • Textos longos exigem divisão manual. Existe um limite de comprimento de fonemas por chamada, então você precisa dividir roteiros longos e depois juntar o áudio.
  • As vozes não inglesas são inconsistentes — visivelmente mais variáveis do que o conjunto principal de inglês americano.
  • Ele gera um WAV puro. Sem timestamps por palavra, sem visemas — nada para dirigir lip-sync pronto para uso.
  • É apenas voz. Sem rosto, sem vídeo. Para ter um apresentador falando, você precisa combinar Kokoro com um sistema separado de lip-sync ou avatar e cuidar do timing por conta própria.

Auto-hospedar Kokoro vs uma ferramenta hospedada: qual escolher?

Kokoro e uma ferramenta hospedada de avatar resolvem metades diferentes do problema. Kokoro te dá uma voz; uma ferramenta como a VisionStory te dá um apresentador falante — voz, rosto e lip-sync em uma única saída. Aqui está a comparação honesta.

 Kokoro (auto-hospedado)VisionStory (hospedado)
CustoGratuito (seu próprio hardware)Assinatura / Créditos
Configuraçãopip + pesos de 330 MB + correção do espeak-ngNenhuma — roda no navegador
O que você recebeApenas faixa de voz (WAV)Vídeo de avatar falante (voz + rosto + lip-sync)
Clonagem de vozNão — 54 predefiniçõesSim — clone sua própria voz
Velocidade por clipe~0.16× do tempo real em CPU (segundos)Segundos, hospedado — sem computação local
Uso comercialSim (Apache-2.0)Sim (por plano)
ManutençãoVocê corrige espeak, dependências, divisão de textoNenhuma
Melhor quandoVocê só precisa de uma faixa de voz gratuita e sabe programarVocê precisa de um vídeo falante pronto, rápido

Escolha Kokoro se você só precisa de uma narração gratuita, se sente confortável em Python e vai cuidar do rosto e do lip-sync separadamente (ou nem precisa de rosto). Escolha uma ferramenta hospedada se você precisa da voz ligada a um apresentador que faça lip-sync, ou precisa clonar a voz de uma pessoa específica — Kokoro não faz nenhum dos dois.

O que Kokoro nos ensinou

A grande lição de rodar o Kokoro é que voz está virando commodity. Um modelo de 82 MB em um laptop agora produz narrações boas o bastante para trabalho de verdade — de graça. Se o único argumento do seu produto era “fazemos texto para fala”, essa vantagem acabou.

A parte difícil, ainda não resolvida, é tudo o que vem depois da voz: transformar uma faixa de áudio em um rosto falante convincente — lip-sync preciso, expressão, movimento de cabeça e timing que se sustentem juntos. É exatamente nessa camada que trabalhamos. Então nossa conclusão não é “não use Kokoro” — ele é um motor de voz legitimamente bom. É que uma voz sozinha é metade de um vídeo. Se você quer a outra metade, a VisionStory transforma uma foto e um roteiro em um apresentador falante com lip-sync em um passo — e, se você precisa combinar uma voz específica, também pode cloná-la.

Perguntas frequentes

  • O Kokoro TTS é gratuito para uso comercial?

    Sim. O Kokoro é lançado sob a licença Apache-2.0, que permite uso comercial, e não há cobrança por caractere. Você paga apenas pelo seu próprio processamento, que pode ser uma CPU simples.

  • O Kokoro pode rodar em um Mac ou sem uma GPU?

  • O Kokoro pode clonar minha própria voz?

  • O Kokoro pode criar um vídeo de avatar falante?

  • Como corrigir o erro “No such file” do phontab do espeak-ng no Kokoro?