Uma solução para o problema de latência de fala para texto em tempo real
Para obter um efeito de fala para texto nativo de baixa latência, você pode começar pelos seguintes aspectos:
- Otimização de hardwareSe estiver usando uma placa de vídeo NVIDIA, certifique-se de ter o kit de ferramentas CUDA mais recente instalado. Os usuários de CPU podem tentar quantificar o modelo (por exemplo, whisper-small-int8) para aliviar a carga.
- Configuração de parâmetrosModificação dos parâmetros webRTC em main.py:
- Definir audio_chunk_duration=0,3 (reduzir a duração do trecho de áudio)
- Ajustar speech_pad_ms=200 (reduzir o tempo de preenchimento do mudo)
- Definir batch_size=1 (desativar o processamento em lote)
- Seleção de modelosSeleção de modelos com base no desempenho do equipamento:
- Dispositivos de alto desempenho: whisper-large-v3-turbo
- Equipamento geral: base de sussurro
- Dispositivo de baixo perfil: whisper-tiny-int8
- Otimização do pré-processamentoAjuste a taxa de amostragem de áudio (recomenda-se 16000 Hz) e o número de canais (mono) por meio do parâmetro ffmpeg, por exemplo:
ffmpeg -ar 16000 -ac 1
Por fim, é recomendável adicionar ao arquivo .env do projeto a opçãoUSE_CACHE=false
A desativação do armazenamento em cache de resultados intermediários reduz a latência em mais 0,2 a 0,3 segundos.
Essa resposta foi extraída do artigoFerramenta de código aberto para conversão de fala em texto em tempo realO