Herramienta de código abierto de voz a texto basada en Whisper, con marcas de tiempo por palabra mediante alineación forzada y diarización de hablantes opcional.
antirez/whisperbot
Bot de Telegram escrito en C que convierte mensajes de voz en texto con whisper.cpp o qwen-asr como backend de reconocimiento de voz.
- Estrellas
- 168
- Forks
- 12
- Issues abiertos
- 1
- Último commit
- hace 8 meses
¿Qué es?
Whisperbot es un bot de Telegram que transcribe mensajes de voz. El usuario le envía un mensaje de voz al bot, que descarga el audio, lo convierte a WAV con ffmpeg, ejecuta el backend de reconocimiento de voz elegido como proceso externo y envía la transcripción de forma progresiva, editando la respuesta a medida que llega el texto.
El bot admite dos backends: whisper.cpp (mediante whisper-cli) y qwen-asr, una implementación de inferencia de Qwen3-ASR íntegramente en C. El backend se selecciona al compilar mediante la definición de una macro en whisperbot.c. Está construido sobre botlib y usa un diseño con un hilo por solicitud y una cola protegida por un mutex, ya que el reconocimiento de voz consume muchos recursos de CPU. Cuando la cola crece, el bot cambia a un modelo más rápido y rechaza nuevas solicitudes cuando está llena.
Los límites, como la duración máxima del audio, el tamaño de la cola y el tiempo de espera del proceso, se definen como constantes al principio del código fuente. Las rutas de los backends y los modelos también están codificados directamente, y las solicitudes en cola se pierden al reiniciar el bot.
Funciones clave
- 01Transcribe mensajes de voz de Telegram y responde con el texto.
- 02Admite whisper.cpp y qwen-asr como backends de reconocimiento de voz seleccionables.
- 03Envía transcripciones parciales editando el mensaje a medida que llega el texto.
- 04Cambia a un modelo más rápido cuando crece la cola de solicitudes.
- 05Rechaza nuevas solicitudes cuando la cola está llena y pide a los usuarios que lo intenten más tarde.
Casos de uso
- Ejecutar un bot personal o para un equipo que convierta voz en texto en un servidor pequeño y autohospedado.
- Transcribir notas de voz enviadas en chats de Telegram sin enviar el audio a un servicio en la nube de terceros.
- Probar backends locales de reconocimiento de voz mediante una interfaz de chat.
Inicio rápido
- 1
Compila ambos backends de ASR o el que quieras usar y descarga sus modelos
- 2
Edita whisperbot.c para seleccionar exactamente un backend y configurar sus rutas
- 3
Crea un bot con @BotFather y guarda la clave API en apikey.txt
- 4
Compila y ejecuta el bot
make ./whisperbot
Antes de usarlo
- Las rutas del backend y de los modelos están hardcodeadas y requieren editar el código y volver a compilar.
- No hay persistencia: las solicitudes en cola se pierden si se reinicia el bot.
- Requiere un binario de backend de ASR independiente, sus modelos y ffmpeg, lo que complica la configuración.
Temas
Preguntas frecuentes
- ¿Qué es whisperbot?
- Bot de Telegram escrito en C que convierte mensajes de voz en texto con whisper.cpp o qwen-asr como backend de reconocimiento de voz. Whisperbot es un bot de Telegram que transcribe mensajes de voz. El usuario le envía un mensaje de voz al bot, que descarga el audio, lo convierte a WAV con ffmpeg, ejecuta el backend de reconocimiento de voz elegido como proceso externo y envía la transcripción de forma progresiva, editando la respuesta a medida que llega el texto.
- ¿whisperbot es gratuito? ¿Qué licencia tiene?
- whisperbot no declara ninguna licencia. Su código es público, pero sin licencia no tienes permiso explícito para reutilizarlo; consulta al autor antes de depender de él.
- ¿whisperbot sigue mantenido?
- Sin commits en más de 6 meses. El último commit de whisperbot fue el 12 feb 2026.
- ¿Para qué puedo usar whisperbot?
- Ejecutar un bot personal o para un equipo que convierta voz en texto en un servidor pequeño y autohospedado. Transcribir notas de voz enviadas en chats de Telegram sin enviar el audio a un servicio en la nube de terceros. Probar backends locales de reconocimiento de voz mediante una interfaz de chat.
- ¿Cómo se instala whisperbot?
- Compila ambos backends de ASR o el que quieras usar y descarga sus modelos Edita whisperbot.c para seleccionar exactamente un backend y configurar sus rutas Crea un bot con @BotFather y guarda la clave API en apikey.txt Compila y ejecuta el bot: make ./whisperbot
- ¿Dónde consigo whisperbot?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/antirez/whisperbot
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Aplicación de dictado con IA, de código abierto y local, que convierte voz en texto en macOS y Windows y funciona sin conexión con Whisper.
Estudio de voz con IA, open source y local-first para clonar voces, generar voz, dictar en cualquier app y dar voz a agentes de IA.
Aplicación de escritorio que transcribe y traduce audio y video sin conexión en tu computadora, basada en Whisper de OpenAI.
Herramienta de código abierto para traducir videos a otros idiomas mediante reconocimiento de voz, traducción de subtítulos, doblaje con IA y síntesis de audio y video.
Aplicación web de Next.js que genera subtítulos sincronizados a partir de videos subidos o enlaces a contenido multimedia con el modelo Whisper de Together AI.