Ver todos los artículos
desplieguewhispertranscripcionprivacidad

Actas de reunión privadas: Whisper (voz a texto) en tu propio hardware

JG
Jacobo González Jaspe
|
Ilustración abstracta: líneas ámbar en ángulo recto que convergen en un cuadrado de luz sobre azul marino. Hardware
Ilustración generada con IA en nuestra máquina.

Vas a convertir la grabación de una reunión en una transcripción y una lista de decisiones y tareas, en una máquina tuya. El audio no sale de ella y basta un portátil de 16 GB.

Qué necesitas

  • Un ordenador con 16 GB de RAM. La transcripción sola cabe en 8 GB: faster-whisper small llega a unos 2,3 GB en CPU según la prueba del propio SYSTRAN (README de faster-whisper). El modelo del resumen suma más: llama3.1:8b ocupó 9,2 GB cargado en nuestra máquina (Ollama 0.30.10, 17-10-2026, datos en bruto en docs/measurements/local-model-benchmark-2026-10-17.json).
  • Una grabación en .mp3, .m4a o .wav.
  • Docker para el servidor de transcripción y Ollama para el resumen.
  • Tiempo: de 15 a 20 minutos de preparación.

Una GPU NVIDIA hace la transcripción más rápida, pero no es obligatoria. Nuestra tabla de abajo se midió con una.

Paso 1: Arranca el servidor de transcripción

Speaches sirve faster-whisper con una API compatible con la de OpenAI, así que cualquier herramienta que hable esa API podrá usarlo después. Elige la imagen para tu máquina:

bash
# portátil o cualquier máquina sin GPU NVIDIA
docker run -d --name speaches -p 8000:8000 ghcr.io/speaches-ai/speaches:latest-cpu

# máquina con GPU NVIDIA (necesita NVIDIA Container Toolkit)
docker run -d --name speaches --gpus all -p 8000:8000 ghcr.io/speaches-ai/speaches:latest-cuda

No existe una etiqueta latest a secas; usa una de las dos de arriba.

Después descarga el modelo una vez:

bash
curl -X POST http://localhost:8000/v1/models/Systran/faster-whisper-small

Esperado: HTTP 200 cuando termina la descarga. curl http://localhost:8000/v1/models lo lista.

Si falla: “port already in use” significa que otra cosa ocupa el 8000; usa -p 8001:8000 y cambia el puerto en todos los comandos siguientes. docker logs speaches te dice por qué no arrancó.

Paso 2: Transcribe la grabación

bash
time curl http://localhost:8000/v1/audio/transcriptions \
  -F "file=@reunion.mp3" \
  -F "model=Systran/faster-whisper-small"

Esperado: un JSON con un campo text que contiene la transcripción. time te dice cuánto tardó, para compararlo con nuestra tabla.

Si falla: “model not found” significa que el id no es exactamente Systran/faster-whisper-small o que la descarga del paso 1 no terminó. Un texto vacío suele ser un archivo dañado; reprodúcelo antes.

¿Qué modelo?

ModeloVelocidadPara qué
Systran/faster-whisper-tiny.enEl más rápido, solo inglésAudio limpio, borradores rápidos
Systran/faster-whisper-smallEquilibradoLa mayoría de reuniones. Empieza aquí
Systran/faster-whisper-mediumUnas dos veces más lento que smallAcentos, jerga, salas con ruido

Para reuniones en español, usa small o medium: los modelos .en solo entienden inglés.

Paso 3: Redacta el acta con un modelo local

Una transcripción en bruto es un muro de “bueno, eh, como decía”. Un modelo de 8B la convierte en algo con lo que puedes trabajar.

bash
ollama pull llama3.1:8b
ollama run llama3.1:8b

Pega este prompt y después la transcripción:

texto
Aquí tienes la transcripción de una reunión. Dame:
1. El objetivo de la reunión en una frase.
2. Todas las decisiones tomadas.
3. Todas las tareas, con su responsable si se mencionó.
4. Preguntas abiertas o temas aplazados.

Transcripción:
[PEGA AQUÍ TU TRANSCRIPCIÓN]

Esperado: cuatro listas cortas.

Si falla: si Ollama se cierra o va a paso de tortuga, la máquina se ha quedado sin memoria. Cierra otras aplicaciones o prueba un modelo más pequeño como llama3.2:3b (el acta sale más tosca, pero sale).

Guarda la transcripción y el acta en una carpeta local. Pegarlas después en un chat web deshace todo el trabajo.

Qué medimos

Un clip en inglés de 23,8 segundos, transcrito con Speaches (imagen CUDA) y faster-whisper en nuestra NVIDIA DGX Spark (GB10), el 17-10-2026. El clip es sintético: un párrafo de 92 palabras al estilo de una reunión, leído por una voz local de texto a voz, así que sabemos cada palabra que se dijo. Cada tiempo es la mediana de tres ejecuciones tras una de calentamiento. El factor de tiempo real es el tiempo de proceso dividido por la duración del audio: 0,25 significa que una reunión de 30 minutos tarda unos 7,5 minutos.

Modelo Whisper (faster-whisper)Tiempo de proceso (s)Factor de tiempo realPalabras transcritas
faster-whisper-tiny.en1,090,04690
faster-whisper-small7,470,31488
faster-whisper-medium15,410,64792

En una reunión de una hora, 0,05 frente a 0,65 son 3 minutos de espera frente a 39. Una sola voz sintética y limpia es más fácil que una sala real donde se pisan al hablar, así que espera más errores en tus grabaciones que en la nuestra. Aún no lo hemos cronometrado en la CPU de un portátil; tu time del paso 2 rellena ese hueco. El script es scripts/bench/whisper_transcription.py; todas las ejecuciones y las transcripciones completas están en docs/measurements/whisper-transcription-2026-10-17.json en nuestro repositorio.

Lo que no te dice la ficha técnica

  • Contar palabras no es medir precisión. Los tres modelos sacaron casi las mismas palabras en nuestro clip (de 88 a 92). Como conocemos el texto, también contamos las palabras erróneas: medium un 6,5 %, tiny.en un 9,8 % y small un 12 % (los tres escribieron “eleven” como “11”, y eso cuenta igual en contra de cada uno). small convirtió “Next meeting is Monday” en “Sunday”. Un solo clip demuestra poco, así que lee las transcripciones de tu propio audio una al lado de otra antes de pagar el tiempo extra de medium.
  • Los nombres son el punto débil. Whisper adivina apellidos y nombres de producto: small escribió “Pabba” en vez de Pablo, y los tres oyeron “AI assistant” como “eye assistant” o “I-assistant”. Corrígelos en la transcripción antes del resumen o el acta repetirá el error.
  • El modelo del resumen puede inventar. Un modelo de 8B puede asignar una tarea a quien no es. Alguien que estuvo en la reunión debe leer el acta antes de enviarla.

Cuándo no merece la pena

Si tus reuniones ya se graban y transcriben dentro de una plataforma aprobada por tu organización, ganas poco. Esto compensa cuando las grabaciones son sensibles, cuando no hay herramienta aprobada o cuando transcribes tanto que el precio por minuto se nota.

Próximos pasos

Trabaja con nosotros

Si quieres esto funcionando para toda una oficina (el servidor dimensionado para tu volumen de reuniones, cuentas para tu equipo, una regla de conservación que encaje con tu política y una sesión breve para el personal), es el tipo de trabajo de alcance cerrado que hacemos. Primero medimos en tu hardware. Mira cómo trabajamos en consultoría o reserva una llamada.

Diagrama
Compartir: LinkedIn X
Veredicto semanal

Recibe las guías nuevas antes que nadie

Suscríbete y te avisamos cuando publiquemos guías, plantillas y workflows nuevos. Un correo a la semana, sin spam.

Ya publicados: 76 guías y 25 plantillas. Todo gratis y sin registro.

Bonus: el kit de inicio de IA local en PDF al suscribirte
1x por semana Sin spam Cancela cuando quieras

Ver qué recibes

La Ley de IA de la UE ya aplica: una lista que puedes completar

Cuéntanos qué quieres ejecutar

Dinos qué quieres ejecutar y con qué presupuesto. Te decimos qué hardware necesitas, qué modelo encaja y qué puedes esperar de él, antes de que gastes nada.

Primera llamada gratis, 15 min Local-first: tus datos no salen de tu red Herramientas y guías abiertas

76 guías gratuitas · 17 plantillas de cumplimiento