Glossário / Como ele ouve você

Whisper

Atualizado em

Pergunte a uma IA ChatGPT Claude Perplexity Grok

Definição

Whisper é uma família de modelos de reconhecimento de fala de código aberto lançada pela OpenAI em 2022, treinada com 680.000 horas de áudio e com cerca de 99 idiomas. Como os pesos são abertos, o Whisper virou o motor de muitas ferramentas locais de transcrição e ditado.

O Whisper vem em tamanhos que vão do tiny ao large; modelos maiores são mais precisos e mais lentos. Ele transcreve em lote, não em streaming, então as ferramentas que mostram as palavras ao vivo costumam combiná-lo com um modelo de streaming e usar o Whisper nos idiomas que o modelo de streaming não cobre.

No Apple silicon, runtimes otimizados permitem que até os modelos Whisper maiores rodem com folga no dispositivo, e foi isso que tornou possível a geração atual de ferramentas de ditado privadas e locais para Mac.

Os tamanhos, e qual você quer

O tiny e o base são rápidos e imprecisos, bons para um memorando de voz. O small é o mínimo utilizável para ditado. O medium e o large são precisos o bastante para trabalho profissional e, num Mac moderno, continuam rápidos. O large-v3-turbo é o ponto ideal atual: um modelo grande com um decodificador enxuto que mantém quase toda a precisão com várias vezes a velocidade. A maioria das ferramentas para Mac que oferecem uma escolha está oferecendo esses, e a resposta certa para ditado é o maior modelo que devolve o texto antes de você perder a paciência.

Em lote, não em streaming

O Whisper lê uma janela de áudio e depois escreve a transcrição dela. Isso o torna preciso, porque ele vê a frase inteira antes de decidir, e o torna um modelo em lote: nada aparece até você parar. Ferramentas construídas só sobre o Whisper dão a sensação de uma pausa depois de cada frase. As ferramentas que fazem streaming o combinam com um modelo transdutor para as palavras ao vivo e mantêm o Whisper para os idiomas que esse modelo não cobre.

Pontos fracos conhecidos

O Whisper alucina com silêncio e com trechos muito curtos, produzindo frases plausíveis que ninguém disse, e pode se repetir em áudios longos. Os dois problemas são bem documentados e bem contornados: cortar o silêncio antes de o modelo rodar, manter os trechos curtos e desconfiar de qualquer saída em áudio sem fala. Números e nomes próprios seguem o padrão habitual do ASR: saem com a grafia mais provável, não com a sua.

Como rodar o Whisper no Mac pelo Terminal

A OpenAI publica o Whisper como um pacote Python com uma ferramenta de linha de comando. O projeto diz que o código deve funcionar com o Python 3.8 a 3.11, e ele precisa da ferramenta ffmpeg para ler arquivos de áudio. Estes passos assumem que você já tem o Python e o Homebrew.

  1. Abra o Terminal e instale o ffmpeg com: brew install ffmpeg
  2. Instale o Whisper com: pip install -U openai-whisper
  3. Transcreva um arquivo com: whisper audio.mp3 --model turbo
  4. Espere o modelo ser baixado na primeira execução. Ele fica salvo na pasta .cache/whisper da sua pasta de início e é reutilizado depois disso.
  5. Encontre a transcrição na pasta atual. Por padrão, o Whisper gera arquivos txt, vtt, srt, tsv e json.
  6. Adicione --language seguido do nome de um idioma, por exemplo --language Japanese, se quiser pular a detecção automática.
  7. Rode whisper --help para ver todas as opções.

Whisper turbo vs. large: os números publicados

A tabela da OpenAI lista o modelo large com 1.550 milhões de parâmetros, cerca de 10 GB de memória de vídeo e uma velocidade relativa de 1x. O modelo turbo tem 809 milhões de parâmetros, cerca de 6 GB e cerca de 8x. A OpenAI descreve o turbo como uma versão otimizada do large-v3 com perda mínima de precisão, e ele é o modelo padrão da ferramenta de linha de comando.

Esses números vêm com duas ressalvas. As velocidades foram medidas em uma placa de vídeo NVIDIA A100 transcrevendo inglês, e a OpenAI diz que a velocidade real pode variar bastante conforme o idioma, a velocidade da fala e o hardware. Além disso, o turbo não é treinado para tradução, então ele devolve o idioma original mesmo quando você pede para traduzir.

  • tiny: 39 milhões de parâmetros, cerca de 1 GB, cerca de 10x.
  • base: 74 milhões de parâmetros, cerca de 1 GB, cerca de 7x.
  • small: 244 milhões de parâmetros, cerca de 2 GB, cerca de 4x.
  • medium: 769 milhões de parâmetros, cerca de 5 GB, cerca de 2x.
  • large: 1.550 milhões de parâmetros, cerca de 10 GB, 1x.
  • turbo: 809 milhões de parâmetros, cerca de 6 GB, cerca de 8x.

O Whisper traduz? O que ele faz com outros idiomas

O Whisper foi treinado em duas tarefas: transcrever fala no próprio idioma e traduzir para o inglês fala em outros idiomas. Das suas 680.000 horas de treinamento, cerca de 438.000 são de áudio em inglês com transcrições em inglês, cerca de 126.000 são de áudio em outros idiomas com transcrições em inglês e cerca de 117.000 são de áudio em outros idiomas com transcrição no mesmo idioma, em 98 idiomas.

É por isso que a tradução só vai em um sentido. Adicione --task translate para obter texto em inglês a partir de fala em outro idioma, e use o modelo medium ou large para isso, como a OpenAI recomenda. O Whisper não traduz fala em inglês para outros idiomas.

Os tamanhos tiny, base, small e medium também têm versões só em inglês, com nomes terminados em .en. A OpenAI diz que elas tendem a ter melhor desempenho em inglês, principalmente o tiny.en e o base.en, e que a diferença fica menos significativa no small.en e no medium.en.

Perguntas que as pessoas fazem.

O Whisper é gratuito?

Sim. Os modelos são de código aberto, sob licença MIT, e rodam no seu próprio hardware. O trabalho está em construir uma ferramenta de ditado utilizável em torno deles, e é por isso que a maioria dos apps de ditado locais para Mac cobra.

O Whisper roda num Mac sem a nuvem?

Sim, e bem. Runtimes otimizados para Apple silicon rodam modelos grandes localmente em velocidades utilizáveis. Toda ferramenta local de ditado e transcrição para Mac no mercado usa o Whisper ou um modelo parecido dessa forma.

O Whisper mostra o texto enquanto eu falo?

Não nativamente. Ele transcreve um trecho depois que o trecho termina. As ferramentas que mostram palavras ao vivo usam um modelo de streaming junto com ele e reservam o Whisper para os idiomas que o modelo de streaming não cobre.

De quanta memória o Whisper precisa?

A OpenAI lista cerca de 1 GB de memória de vídeo para os modelos tiny e base, cerca de 2 GB para o small, cerca de 5 GB para o medium, cerca de 6 GB para o turbo e cerca de 10 GB para o large.

Qual é a diferença entre o Whisper base e o base.en?

O base.en é treinado só para inglês, e o base é multilíngue. A OpenAI diz que os modelos .en tendem a ter melhor desempenho em inglês, principalmente nos tamanhos tiny e base.

O Whisper consegue traduzir do inglês para outros idiomas?

Não. A tarefa de tradução do Whisper transforma fala em outros idiomas em texto em inglês. O modelo turbo não é treinado para tradução, então use o medium ou o large para essa tarefa.

Guias que usam o termo

No blog

Termos relacionados

Sua voz sempre foi mais rápida.

7 dias grátis, depois $19 USD em pagamento único. Sem conta, sem assinatura, sem enviar nada.

macOS 14 ou posterior · Apple silicon