Tens duas horas de entrevista gravada e precisas do texto. Ou um vídeo que pede legendas. Ou um podcast do qual queres tirar citações. A opção cómoda é enviar o áudio para um serviço na nuvem que cobra por minuto e fica com uma cópia da tua gravação. A opção que quase ninguém te explica bem é que podes fazer tudo no teu próprio computador, grátis e sem que o áudio saia dali, com modelos open source que em 2026 já rendem a nível profissional.
O problema não é a falta de opções, mas o ruído. «Whisper» tornou-se um termo chapéu que esconde meia dúzia de implementações diferentes, e todas as semanas sai um modelo novo que se diz «o melhor». Vamos pôr ordem nisto: que modelo manda, qual usar consoante o teu caso e como pô-lo a funcionar localmente sem dramas.
Nota
Este guia é técnico mas prático. Não precisas de saber de machine learning: se te desenrascas com o terminal e sabes instalar um pacote de Python, podes ter transcrições de qualidade em menos de dez minutos.
Para que queres a voz para texto
Antes de escolher modelo, convém ter clara a tarefa. O STT (speech-to-text) cobre cenários que parecem iguais mas pesam de forma diferente:
- Transcrever reuniões, entrevistas, aulas ou podcasts para texto simples. Aqui prevalece a precisão e aguentar áudio longo.
- Legendas de vídeos: precisas do texto mais as marcas de tempo sincronizadas, idealmente ao nível da palavra.
- Diarização: separar quem diz o quê quando há várias vozes. Nem todos os modelos o fazem de origem.
- Ditado ou transcrição em tempo real: aqui manda a latência, não a precisão absoluta.
- Processar volume: milhares de ficheiros em fila, onde o que importa é o débito (quanto áudio processas por segundo).
Cada um destes casos inclina a balança para um modelo diferente. Por isso não existe «o melhor» sem mais: existe o melhor para o teu caso.
O que é o Whisper e porque continua a mandar
O Whisper é o modelo de reconhecimento de voz que a OpenAI libertou como open source e que mudou o jogo: pela primeira vez havia um modelo gratuito, de pesos abertos, que transcrevia 99+ idiomas com uma precisão que até então só os serviços pagos davam. Foi treinado com 680.000 horas de áudio da internet, e essa diversidade dá-lhe uma robustez brutal perante sotaques, ruído de fundo e áudio de má qualidade.
Em 2026 a sua versão de referência é o Whisper large-v3, com um WER (taxa de erro por palavra) à volta dos 7,4% em inglês e um suporte multilingue que nenhum concorrente open source iguala em amplitude. Há versões mais pequenas (tiny, base, small, medium) que sacrificam precisão por velocidade e memória, e uma variante large-v3-turbo otimizada que processa áudio a mais de 200x o tempo real com uma perda de precisão mínima.
A chave para entender tudo: o Whisper é o modelo; as «variantes» são formas de o executar. O faster-whisper, o whisper.cpp e o WhisperX usam os mesmos pesos do Whisper. Com o mesmo áudio e a mesma configuração, dão praticamente a mesma transcrição. O que muda é o motor de inferência: a velocidade, a memória que consomem e os extras que acrescentam.
Dica
Regra mental: quando alguém diz «uso o Whisper», pergunta-lhe com que motor. É a diferença entre transcrever uma hora de áudio em cinco minutos ou em quarenta.
As variantes do Whisper: qual para quê
É aqui que se decidem 90% dos casos. Três motores cobrem quase tudo:
faster-whisper — o cavalo de batalha
É uma reimplementação do Whisper sobre CTranslate2, um motor de inferência em C++ muito otimizado. Suporta quantização (int8), que reduz o uso de memória e acelera a inferência até 4x mais rápido do que o Whisper original, mantendo a mesma precisão. Se tens uma GPU NVIDIA, esta é a tua opção por defeito: rapidez e consumo de VRAM vencedores. É o que recomendo para a maioria.
whisper.cpp — para Mac e CPU
Um port puro em C/C++ sem dependências externas. Compila num binário pequeno, usa o formato GGML com quantização inteira e corre em qualquer sítio. Em Mac (Apple Silicon) aproveita o Metal e o Core ML; em máquinas sem GPU, é a forma mais leve de transcrever. Se não tens placa gráfica dedicada ou trabalhas num portátil, começa por aqui.
WhisperX — quando precisas de timestamps e diarização
Em vez de perseguir velocidade bruta, o WhisperX transforma o Whisper num pipeline de transcrição completo: acrescenta marcas de tempo ao nível da palavra (alinhamento fonético) e diarização (separar quem fala). É a opção para legendas exatas ou transcrições de entrevistas onde importa saber quem disse o quê.
Atenção
Há mais variantes (insanely-fast-whisper, distil-whisper, etc.), mas não te disperses: faster-whisper para GPU, whisper.cpp para Mac/CPU e WhisperX para timestamps cobrem quase qualquer necessidade real. O resto são otimizações para casos concretos.
Para lá do Whisper: Distil-Whisper, Parakeet e Canary
O Whisper já não está sozinho no topo. Três famílias merecem a tua atenção se o teu caso for específico:
Distil-Whisper é uma versão destilada do Whisper: 51% mais pequena (756M de parâmetros face aos 1.550M do large-v3) e cerca de 6x mais rápida, com apenas ~1% mais de erro em áudio longo. O senão: está otimizada para inglês. Se transcreves inglês e queres velocidade sem abdicar de quase nada de precisão, é uma joia.
NVIDIA Parakeet é a família da NVIDIA para inglês (com variantes multilingues recentes). O seu ponto forte é o débito brutal: o RTFx (fator de tempo real) ultrapassa os 2.000, o que a torna imbatível para processar grandes volumes de áudio em lote. A versão TDT v3 acrescenta suporte multilingue, à custa de alguma precisão em inglês.
NVIDIA Canary-Qwen 2.5B é, à data de hoje, o rei da precisão no Open ASR Leaderboard da Hugging Face: um WER de 5,63%, abaixo do Whisper, com cobertura de cerca de 25 idiomas (inglês e europeus sobretudo) e velocidade de inferência muito alta. Se o que procuras é a transcrição mais exata possível nessas línguas, é a referência.
E para dispositivos de borda, modelos como o Moonshine (a partir de 27 MB) correm em hardware mínimo sem ligação, ideais para ditado embebido ou IoT.
Tabela comparativa
| Modelo / motor | Melhor para | Precisão (WER inglês) | Velocidade | Idiomas |
|---|---|---|---|---|
| Whisper large-v3 | Multilingue, máxima compatibilidade | ~7,4% | Base (referência) | 99+ |
| faster-whisper | GPU NVIDIA, uso geral | ~7,4% (igual) | Até 4x mais rápido | 99+ |
| whisper.cpp | Mac e CPU sem GPU | ~7,4% (igual) | Leve, otimizado | 99+ |
| WhisperX | Legendas e diarização | ~7,4% + timestamps | Rápido + extras | 99+ |
| Distil-Whisper | Inglês rápido | ~9,7% (~1% pior) | ~6x mais rápido | Inglês |
| NVIDIA Parakeet TDT | Volume / lotes | ~8,0% | RTFx >2.000 (máximo) | Inglês / multi (v3) |
| NVIDIA Canary-Qwen | Máxima precisão | 5,63% (líder) | Muito alta | ~25 |
Os números de WER vêm de benchmarks públicos (Open ASR Leaderboard e comparativos independentes) e são orientativos: o erro real depende do áudio, do idioma e da configuração. Não te cases com uma casa decimal; casa-te com o caso de uso.
Executar o Whisper localmente, passo a passo
Vamos ao prático com o faster-whisper, a opção recomendada para a maioria. Precisas de Python 3.9+ e, idealmente, de uma GPU NVIDIA (funciona em CPU, só que mais lento).
1. Instala o pacote:
pip install faster-whisper2. Transcreve um ficheiro com um script de Python:
from faster_whisper import WhisperModel
# Modelo large-v3 com quantização int8 (rápido e pouca VRAM)
# Usa device="cpu" se não tens GPU NVIDIA
model = WhisperModel("large-v3", device="cuda", compute_type="int8")
segments, info = model.transcribe("entrevista.mp3", beam_size=5)
print(f"Idioma detetado: {info.language} ({info.language_probability:.2f})")
for segment in segments:
print(f"[{segment.start:.2f}s -> {segment.end:.2f}s] {segment.text}")3. O que faz cada coisa:
WhisperModel("large-v3", ...)carrega o modelo grande (na primeira vez descarrega-o). Muda para"small"ou"medium"se estás justo de memória.compute_type="int8"ativa a quantização: menos VRAM e mais velocidade com quase nenhuma perda de qualidade.transcribe()deteta o idioma sozinho. Se já o sabes, passalanguage="pt"para acelerar.- Cada
segmenttraz texto e marcas de tempo (start,end), que é precisamente o que precisas para exportar para SRT e gerar legendas.
4. Para legendas, percorre os segmentos e despeja o texto com os seus timestamps em formato SRT ou VTT. Se queres precisão ao nível da palavra ou separar quem fala, esse é o momento de passar ao WhisperX.
Dica
Começa sempre com um clip curto (um minuto) para verificar idioma e qualidade antes de largar as duas horas inteiras. Poupa tempo e diz-te se precisas de subir ou descer de modelo.
No Mac sem GPU, o equivalente seria compilar o whisper.cpp, descarregar um modelo GGML (ggml-large-v3.bin) e lançar o binário sobre o teu ficheiro: mesma qualidade, execução nativa otimizada para Apple Silicon.
Para quem é cada modelo?
Não há vencedor absoluto. Há encaixe:
faster-whisper se tens GPU NVIDIA e queres o melhor em geral: rápido, multilingue, preciso. É a resposta para 80% das pessoas.
whisper.cpp se trabalhas em Mac ou num equipamento sem placa gráfica. Leve, sem dependências, nativo.
WhisperX se o teu trabalho são legendas exatas ou transcrições com vários interlocutores identificados. Jornalistas, editores de vídeo, gente de podcast.
Distil-Whisper se só transcreves inglês e a velocidade é a tua prioridade. Duas vezes mais rápido por quase nenhum erro a mais.
NVIDIA Parakeet se processas volume industrial: milhares de ficheiros, pipelines automatizados, onde o débito manda.
NVIDIA Canary-Qwen se precisas da máxima precisão possível em inglês e línguas europeias, e não te importas de abdicar da cobertura de 99 idiomas do Whisper.
A pergunta honesta não é «qual é o melhor modelo de voz para texto?», porque a resposta muda com o teu hardware e o teu caso. A pergunta é «transcrevo localmente, grátis e privado, ou pago por minuto a um serviço que fica com o meu áudio?». E em 2026, a resposta para quase toda a gente é a primeira: o open source já transcreve igualmente bem, na tua máquina, sem passar pela caixa.
