Repolode
schibsted

schibsted/WAAS

GUI e API REST auto-hospedadas para converter fala em texto com o OpenAI Whisper, com fila de tarefas, notificações por e-mail ou webhook e saída em SRT, VTT ou texto.

Estrelas
2,068
Forks
114
Issues abertas
39
Último commit
há 8 dias

O que é?

O WaaS (Whisper as a Service) disponibiliza o OpenAI Whisper em uma interface web e uma API HTTP, permitindo transcrever arquivos de áudio ou vídeo sem executar o modelo manualmente. Os clientes enviam um arquivo ao endpoint de transcrição, que coloca a tarefa em uma fila baseada em Redis processada por um worker separado. Quando a tarefa é concluída, o usuário recebe uma notificação por e-mail ou por uma requisição POST assinada para um webhook.

Os resultados podem ser baixados como JSON, SRT, WebVTT, texto simples ou texto simples com marcações de tempo. O projeto também inclui um editor no navegador que roda localmente e permite reproduzir segmentos individuais e corrigir erros de transcrição antes de salvar o resultado. A detecção de idioma e a tradução para inglês estão disponíveis pela API.

A stack usa Python com Flask para a API e RQ para o worker, com implantação via docker-compose (redis, api, worker). Um Dockerfile separado para GPU habilita a aceleração NVIDIA CUDA. O menor modelo, tiny, precisa de cerca de 1 GB de VRAM.

Recursos principais

  • 01Tarefas de transcrição assíncronas processadas por uma fila baseada em Redis e por um worker.
  • 02Notificações de conclusão por e-mail ou callbacks de webhook assinados.
  • 03Exportação dos resultados como JSON, SRT, WebVTT, texto simples ou texto com marcações de tempo.
  • 04Editor local no navegador para revisar e corrigir segmentos da transcrição.
  • 05Detecção de idioma e tarefas de transcrição ou tradução pela API.
  • 06Configuração com docker-compose e suporte opcional a NVIDIA CUDA.

Casos de uso

  • Transcrever entrevistas gravadas ou reuniões em um servidor interno, em vez de usar um serviço na nuvem.
  • Gerar arquivos de legenda (SRT ou VTT) em lote para conteúdo em vídeo.
  • Adicionar conversão de fala em texto a uma aplicação interna pela API HTTP, com callbacks de webhook.
  • Revisar e corrigir transcrições geradas automaticamente no editor local do navegador.

Início rápido

  1. 1

    Crie um ambiente virtual Python

    python3 -mvenv .venv
  2. 2

    Ative o ambiente virtual

    source .venv/bin/activate
  3. 3

    Instale as dependências do Python

    pip install -r requirements.txt
  4. 4

    Crie o arquivo .envrc e o allowed_webhooks.json conforme descrito no README e, em seguida, inicie todos os contêineres

    docker-compose --env-file .envrc up

Antes de usar

  • Os modelos Whisper maiores precisam de uma GPU com VRAM; o menor modelo precisa de cerca de 1 GB.
  • Requer Python 3.8-3.10 e uma instância do Redis, além de configurações de SMTP para callbacks por e-mail.
  • A configuração completa via docker-compose exige configurar várias variáveis de ambiente e um arquivo webhook.

Em coleções

Tópicos

Perguntas frequentes

O que é WAAS?
GUI e API REST auto-hospedadas para converter fala em texto com o OpenAI Whisper, com fila de tarefas, notificações por e-mail ou webhook e saída em SRT, VTT ou texto. O WaaS (Whisper as a Service) disponibiliza o OpenAI Whisper em uma interface web e uma API HTTP, permitindo transcrever arquivos de áudio ou vídeo sem executar o modelo manualmente. Os clientes enviam um arquivo ao endpoint de transcrição, que coloca a tarefa em uma fila baseada em Redis processada por um worker separado. Quando a tarefa é concluída, o usuário recebe uma notificação por e-mail ou por uma requisição POST assinada para um webhook.
WAAS é gratuito? Qual é a licença?
WAAS é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
WAAS ainda é mantido?
Manutenção ativa. O último commit de WAAS foi em 30 de out. de 2026.
Para que posso usar WAAS?
Transcrever entrevistas gravadas ou reuniões em um servidor interno, em vez de usar um serviço na nuvem. Gerar arquivos de legenda (SRT ou VTT) em lote para conteúdo em vídeo. Adicionar conversão de fala em texto a uma aplicação interna pela API HTTP, com callbacks de webhook. Revisar e corrigir transcrições geradas automaticamente no editor local do navegador.
Como instalar WAAS?
Crie um ambiente virtual Python: python3 -mvenv .venv Ative o ambiente virtual: source .venv/bin/activate Instale as dependências do Python: pip install -r requirements.txt Crie o arquivo .envrc e o allowed_webhooks.json conforme descrito no README e, em seguida, inicie todos os contêineres: docker-compose --env-file .envrc up
Onde consigo WAAS?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/schibsted/WAAS

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados