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
smallllega 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:8bocupó 9,2 GB cargado en nuestra máquina (Ollama 0.30.10, 17-10-2026, datos en bruto endocs/measurements/local-model-benchmark-2026-10-17.json). - Una grabación en
.mp3,.m4ao.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:
# 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-cudaNo existe una etiqueta latest a secas; usa una de las dos de arriba.
Después descarga el modelo una vez:
curl -X POST http://localhost:8000/v1/models/Systran/faster-whisper-smallEsperado: 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
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?
| Modelo | Velocidad | Para qué |
|---|---|---|
Systran/faster-whisper-tiny.en | El más rápido, solo inglés | Audio limpio, borradores rápidos |
Systran/faster-whisper-small | Equilibrado | La mayoría de reuniones. Empieza aquí |
Systran/faster-whisper-medium | Unas dos veces más lento que small | Acentos, 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.
ollama pull llama3.1:8b
ollama run llama3.1:8bPega este prompt y después la transcripción:
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 real | Palabras transcritas |
|---|---|---|---|
| faster-whisper-tiny.en | 1,09 | 0,046 | 90 |
| faster-whisper-small | 7,47 | 0,314 | 88 |
| faster-whisper-medium | 15,41 | 0,647 | 92 |
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:
mediumun 6,5 %,tiny.enun 9,8 % ysmallun 12 % (los tres escribieron “eleven” como “11”, y eso cuenta igual en contra de cada uno).smallconvirtió “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 demedium. - Los nombres son el punto débil. Whisper adivina apellidos y nombres de producto:
smallescribió “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
- ¿El resumen va lento? Elige un archivo más pequeño para el modelo de Ollama.
- Habla con tu máquina en vez de subir archivos: un asistente de voz privado con OpenJarvis y Ollama.
- Haz números antes de comprar hardware: nube frente a IA local, tu punto de equilibrio.
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.