Repolode
ggml-org

ggml-org/whisper.cpp

Port en C/C++ del modelo de reconocimiento de voz Whisper de OpenAI, para convertir voz en texto sin conexión y sin dependencias, usando CPU o GPU.

Alternativa open source a:Otter.aiGoogle Cloud Speech-to-Text

Estrellas
54,500
Forks
6,271
Issues abiertos
353
Último commit
ayer

¿Qué es?

whisper.cpp es una implementación en C/C++ del modelo de reconocimiento automático del habla Whisper de OpenAI. Transcribe audio localmente, sin Python ni dependencias de ejecución pesadas, por lo que resulta práctico integrarlo en aplicaciones de escritorio, móviles y para dispositivos embebidos.

El proyecto es compatible con numerosos backends de hardware, como Apple Silicon mediante Metal y Core ML, NVIDIA mediante CUDA, AMD mediante HIP/ROCm y Vulkan, además de AVX, ARM NEON, OpenBLAS, OpenVINO y varios NPU. Los modelos se almacenan en un formato ggml personalizado y se puede usar cuantización de enteros para reducir el uso de memoria y espacio en disco. También se puede habilitar la detección de actividad de voz para omitir los segmentos silenciosos antes de transcribir.

Además de la herramienta whisper-cli, el repositorio incluye un servidor HTTP con una API al estilo de OpenAI, un ejemplo de transmisión en tiempo real desde el micrófono y bindings para lenguajes como Rust, Go, Ruby, JavaScript y .NET. También se compila a WebAssembly y funciona en iOS, Android y Raspberry Pi.

Funciones clave

  • 01Funciona completamente sin conexión, en C/C++ estándar y sin dependencias obligatorias.
  • 02Acelera la inferencia con los backends Metal, Core ML, CUDA, Vulkan, HIP/ROCm y OpenVINO.
  • 03Admite cuantización de enteros para reducir el tamaño del modelo y el uso de memoria.
  • 04Incluye detección de actividad de voz para procesar solo los segmentos con habla.
  • 05Ofrece un servidor HTTP, transmisión en tiempo real y bindings para distintos lenguajes.

Casos de uso

  • Añadir conversión de voz a texto sin conexión a una aplicación de escritorio o móvil, sin usar una API en la nube.
  • Transcribir archivos de audio desde la línea de comandos o mediante scripts por lotes.
  • Ejecutar un endpoint de transcripción autogestionado en un servidor local con GPU o CPU.
  • Crear comandos de voz o un asistente en un dispositivo embebido, como una Raspberry Pi.

Inicio rápido

  1. 1

    Clona el repositorio

    git clone https://github.com/ggml-org/whisper.cpp.git
  2. 2

    Entra en el directorio del proyecto

    cd whisper.cpp
  3. 3

    Descarga un modelo base.en

    sh ./models/download-ggml-model.sh base.en
  4. 4

    Compila whisper-cli y transcribe un archivo de muestra

    cmake -B build && cmake --build build -j --config Release && ./build/bin/whisper-cli -f samples/jfk.wav

Antes de usarlo

  • El ejemplo de whisper-cli solo acepta archivos WAV de 16 bits, así que primero hay que convertir los archivos de otros formatos, por ejemplo, con ffmpeg.
  • Algunas opciones de aceleración, como Core ML, OpenVINO y la NPU de AMD, requieren configuración adicional y hardware específico.

Temas

Preguntas frecuentes

¿Qué es whisper.cpp?
Port en C/C++ del modelo de reconocimiento de voz Whisper de OpenAI, para convertir voz en texto sin conexión y sin dependencias, usando CPU o GPU. whisper.cpp es una implementación en C/C++ del modelo de reconocimiento automático del habla Whisper de OpenAI. Transcribe audio localmente, sin Python ni dependencias de ejecución pesadas, por lo que resulta práctico integrarlo en aplicaciones de escritorio, móviles y para dispositivos embebidos.
¿whisper.cpp es gratuito? ¿Qué licencia tiene?
whisper.cpp es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿whisper.cpp sigue mantenido?
Mantenimiento activo. El último commit de whisper.cpp fue el 19 oct 2026.
¿Para qué puedo usar whisper.cpp?
Añadir conversión de voz a texto sin conexión a una aplicación de escritorio o móvil, sin usar una API en la nube. Transcribir archivos de audio desde la línea de comandos o mediante scripts por lotes. Ejecutar un endpoint de transcripción autogestionado en un servidor local con GPU o CPU. Crear comandos de voz o un asistente en un dispositivo embebido, como una Raspberry Pi.
¿Cómo se instala whisper.cpp?
Clona el repositorio: git clone https://github.com/ggml-org/whisper.cpp.git Entra en el directorio del proyecto: cd whisper.cpp Descarga un modelo base.en: sh ./models/download-ggml-model.sh base.en Compila whisper-cli y transcribe un archivo de muestra: cmake -B build && cmake --build build -j --config Release && ./build/bin/whisper-cli -f samples/jfk.wav
¿Dónde consigo whisper.cpp?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/ggml-org/whisper.cpp

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados