Whisper self-hosted na VPS: como instalar e transcrever em escala
Instalar o Whisper numa VPS significa rodar o modelo de transcrição da OpenAI no seu próprio servidor. Assim você deixa de depender de ferramentas online com limite de duração, cota diária de uploads ou cobrança por minuto de áudio. A troca é direta: você assume a operação do servidor e ganha custo previsível, controle total da fila e áudio que nunca sai da sua infraestrutura.
TL;DR: O Whisper é open source (licença MIT) e roda em CPU ou GPU. Em uma VPS, com Docker ou pelo Painel de Aplicativos, ele vira uma API de transcrição privada. Para volume alto ou modelos grandes, a GPU deixa de ser opcional.
Por que as ferramentas gratuitas de transcrição travam quando o volume cresce?
Quem já usou um transcritor online conhece o roteiro. Os primeiros arquivos passam, e depois aparece um aviso de limite de minutos por arquivo, de uploads por dia ou de fila "aguardando processamento".
Esses limites não são arbitrários. Transcrição com IA consome muita computação, e o serviço gratuito precisa racionar recursos entre milhares de usuários.
Os gargalos mais comuns são estes:
- Duração máxima por arquivo: reuniões, aulas e podcasts longos precisam ser cortados manualmente.
- Cota diária ou mensal: o fluxo para no meio do mês, justamente quando o volume aperta.
- Fila compartilhada: o tempo de resposta varia conforme a carga dos outros usuários.
- Política de dados opaca: nem sempre fica claro onde o áudio é armazenado, por quanto tempo e se alimenta treinamento.
Resumo: a versão gratuita serve para testar a ideia, mas não sustenta operação.
O passo seguinte costuma ser escolher entre uma API paga de terceiro e o self-hosting. Vale entender o que muda em cada caminho.
Qual a diferença entre usar o Whisper via API e rodar self-hosted na VPS?
O modelo é o mesmo. O que muda é onde a inferência acontece, quem controla a fila e como o custo escala.
| Critério | API de terceiro (SaaS) | Whisper self-hosted na VPS |
|---|---|---|
| Modelo de custo | Cobrança por minuto/hora de áudio | Mensalidade fixa do servidor |
| Custo em volume alto | Cresce linearmente com o uso | Diluído: mais áudio, menor custo por hora |
| Latência | Upload pela internet + fila do provedor | Processamento local, fila própria |
| Limite de arquivo | Definido pelo provedor | Definido pelo seu hardware |
| Privacidade | Áudio trafega e é processado por terceiro | Áudio fica no seu servidor |
| Escolha de modelo | O que o provedor expõe | Qualquer tamanho e qualquer implementação |
| Esforço de operação | Praticamente zero | Atualização, monitoramento e backup |
| Lock-in | Formato e endpoint do provedor | Código aberto, portável entre servidores |
Custo por hora de áudio: quando o self-hosted compensa?
Na API, cada hora transcrita entra na fatura. Na VPS, o servidor custa o mesmo processando dez ou mil horas por mês.
O ponto de virada depende do volume mensal e do tamanho do modelo. A regra prática é simples: uso esporádico favorece a API, uso contínuo favorece o self-hosted. A Calculadora de custo de LLM ajuda a comparar o gasto recorrente com APIs de IA contra uma infraestrutura fixa.
Latência: o self-hosted é sempre mais rápido?
Não necessariamente. Em CPU, um modelo grande pode levar mais tempo que uma API rodando em GPU dedicada.
A vantagem do self-hosted é a latência previsível. Não existe fila compartilhada nem upload de arquivos grandes pela internet a cada requisição, e você escolhe o equilíbrio entre velocidade e precisão trocando o tamanho do modelo.
Privacidade e LGPD: por que isso pesa para empresas?
Gravações de atendimento, consultas e reuniões internas costumam conter dados pessoais. Ao enviar esse áudio para uma API externa, a empresa adiciona um operador de dados à cadeia de tratamento.
Com o Whisper self-hosted, o áudio é processado e descartado dentro do seu servidor. Isso simplifica a governança exigida pela LGPD, já que você controla retenção, acesso e logs.
Self-hosting não é sobre economizar a qualquer custo. É sobre saber exatamente onde o dado está e quanto a próxima hora de áudio vai custar.
Definido o caminho, a próxima decisão é de hardware.
Qual servidor o Whisper precisa para rodar bem?
O Whisper tem tamanhos de modelo oficiais: tiny, base, small, medium e large, além de variantes como turbo. Quanto maior o modelo, mais precisa a transcrição e maior o consumo de memória e processamento.
A escolha de implementação pesa tanto quanto o hardware:
- openai-whisper: implementação de referência em Python e PyTorch. É simples, mas não é a mais eficiente.
- faster-whisper: reimplementação sobre CTranslate2. Segundo o README do projeto, é significativamente mais rápida e usa menos memória com a mesma precisão. Também suporta quantização.
- whisper.cpp: porte em C/C++ otimizado para CPU. É uma boa opção para servidores sem GPU.
- WhisperX: adiciona alinhamento de palavras com timestamps precisos e diarização (identificação de quem fala).
CPU ou GPU?
Para modelos pequenos e volume moderado, uma VPS com CPU moderna dá conta, principalmente com faster-whisper ou whisper.cpp. A infraestrutura da Rollin Host roda em AMD EPYC com armazenamento NVMe, o que ajuda tanto no processamento quanto na leitura de arquivos de áudio grandes.
Quando a meta é usar modelos medium ou large em escala, ou transcrever perto do tempo real, a GPU passa a ser o caminho. Para esse cenário existe o Servidor GPU.
Resumo: comece pelo modelo menor que entrega a precisão aceitável e só depois escale o hardware.
Com o servidor escolhido, a instalação leva poucos comandos.
Como instalar o Whisper self-hosted em uma VPS passo a passo?
O caminho mais limpo é rodar o Whisper como API HTTP em contêiner Docker. Assim, qualquer sistema (n8n, backend próprio, CRM) envia o áudio e recebe o texto. O exemplo abaixo usa o projeto open source whisper-asr-webservice.
- Provisione a VPS. Na Rollin Host, o provisionamento é automático e leva cerca de 5 minutos, com acesso root.
- Acesse via SSH e atualize o sistema.
ssh root@IP_DA_VPS
apt update && apt upgrade -y
- Instale o Docker.
curl -fsSL https://get.docker.com | sh
- Suba o contêiner do Whisper com o motor faster-whisper.
docker run -d --name whisper \
--restart unless-stopped \
-p 127.0.0.1:9000:9000 \
-e ASR_MODEL=small \
-e ASR_ENGINE=faster_whisper \
onerahmet/openai-whisper-asr-webservice:latest
- Teste a transcrição.
curl -F "audio_file=@reuniao.mp3" \
"http://127.0.0.1:9000/asr?language=pt&output=txt"
Publique com segurança. Coloque um proxy reverso (Traefik, Caddy ou Nginx) na frente, com SSL e autenticação. A porta 9000 ficou presa ao localhost justamente para não ser exposta diretamente.
Ajuste o modelo. Troque
ASR_MODELparamediumoularge-v3conforme a precisão necessária e a capacidade do servidor.
E sem terminal?
Nem toda equipe quer administrar Docker na mão. O Painel de aplicativos da Rollin Host permite instalar e gerenciar aplicações em contêiner pela interface, sem linha de comando. A mesma lógica vale para os Apps em 1 clique.
Para quem está montando uma stack completa de IA (transcrição, LLM local e automação), o Servidor para IA já parte de um ambiente pensado para isso.
Instalado o serviço, o desafio passa a ser escala.
Como transcrever em escala sem derrubar o servidor?
Um único endpoint recebendo dezenas de arquivos simultâneos satura CPU e memória. Transcrição em escala é, antes de tudo, um problema de fila.
As práticas que mais fazem diferença:
- Fila assíncrona: o sistema enfileira o áudio (Redis, RabbitMQ ou um workflow no n8n) e os workers processam na velocidade que o hardware aguenta.
- Pré-processamento com FFmpeg: converter para mono e reduzir a taxa de amostragem antes da inferência economiza processamento e disco.
- VAD (Voice Activity Detection): o faster-whisper suporta filtro de silêncio, o que evita gastar inferência com trechos mudos.
- Limite de concorrência: defina quantas transcrições rodam em paralelo de acordo com a RAM disponível.
- Monitoramento: acompanhe uso de CPU, memória e tamanho da fila para saber a hora certa de escalar.
Um fluxo comum entre clientes que automatizam atendimento é este: áudio recebido pela API do WhatsApp, enviado ao n8n, transcrito no Whisper local e texto devolvido ao CRM. A VPS para n8n já vem com n8n, Traefik e Evolution API pré-instalados, o que encurta essa montagem.
Resumo: escala vem da fila, não de um servidor maior a cada pico.
Quais são os trade-offs honestos do Whisper self-hosted?
Self-hosting resolve limites, custo variável e privacidade. Mas transfere responsabilidades para quem opera.
- Operação é sua: atualizações de imagem, patches do sistema e backup de configuração entram na rotina.
- Hardware define o teto: em CPU, modelos grandes são lentos. Se a precisão máxima for requisito, conte com GPU.
- Sem SLA de modelo: a disponibilidade depende do servidor e do monitoramento. Uma infraestrutura sólida reduz o risco, mas nenhum ambiente é imune a falhas.
- Diarização e timestamps exigem extras: o Whisper puro não identifica falantes. Para isso, use WhisperX ou um pipeline complementar.
Quando o volume é baixo e irregular, a API de terceiro continua sendo a escolha racional. O self-hosted vence quando a transcrição vira processo contínuo.
Principais aprendizados
- O Whisper é open source e pode rodar em VPS própria, sem limites de duração ou cota diária impostos por terceiros.
- API cobra por uso e escala linearmente; VPS tem custo fixo que se dilui com volume.
- Processar áudio localmente mantém os dados no seu servidor e simplifica a conformidade com a LGPD.
- faster-whisper e whisper.cpp extraem mais desempenho de CPU; modelos grandes em escala pedem GPU.
- Escala real depende de fila assíncrona, pré-processamento e limite de concorrência.
Perguntas frequentes
O Whisper é gratuito para rodar na própria VPS?
Sim. O Whisper é open source sob licença MIT, então não há cobrança pelo modelo. O único custo é a infraestrutura que executa a transcrição.
Preciso de GPU para rodar o Whisper self-hosted?
Não para modelos pequenos e volume moderado. Com faster-whisper ou whisper.cpp, CPUs modernas atendem bem. Para modelos medium e large em escala, ou para transcrição perto do tempo real, a GPU é recomendada.
O Whisper transcreve bem em português?
Sim. O Whisper é multilíngue e suporta português, e a precisão aumenta com o tamanho do modelo. Informar language=pt na requisição evita erros de detecção automática de idioma.
Dá para instalar o Whisper sem usar terminal?
Sim. Pelo Painel de Aplicativos da Rollin Host, é possível instalar e gerenciar aplicações em contêiner pela interface, sem comandos SSH.
Whisper self-hosted ajuda na conformidade com a LGPD?
Ajuda. O áudio é processado dentro do servidor contratado, sem envio a uma API de terceiro, e a empresa controla retenção, acesso e logs dos dados.
Onde ficam os servidores da Rollin Host?
As VPS da Rollin Host rodam em Frankfurt (Alemanha) e US-East (EUA), com processadores AMD EPYC, armazenamento NVMe e proteção anti-DDoS.
Quer testar o Whisper com o modelo small e faster-whisper numa VPS antes de levar para produção? Nossa equipe ajuda a dimensionar o servidor certo para o seu volume de áudio, de CPU a Servidor para IA com GPU. Fale com o suporte da Rollin Host pelo WhatsApp: atendimento 24/7 em português, com NF-e e sem fidelidade.