Skip to main content
PromptQuorumPromptQuorum
Home/Local LLMs/Whisper en Apple Silicon 2026: Benchmarks Metal, Configuración Core ML, Guía M1–M5
Hardware & Performance

Whisper en Apple Silicon 2026: Benchmarks Metal, Configuración Core ML, Guía M1–M5

·14 min de lectura·Por Hans Kuepper · Fundador de PromptQuorum, herramienta de despacho multi-modelo · PromptQuorum

Whisper large-v3 en M5 Pro: 10–12× tiempo real. GPU Metal automático. Large-v3-turbo equilibra velocidad + precisión a 14–18×. Sin costo, completamente offline.

Whisper de reconocimiento de voz en Apple Silicon: benchmarks de Metal y Core ML para M1 hasta M5 Max. Guía de configuración, selección de modelo y transcripción en tiempo real.

Tabla de benchmarks completa: rendimiento de Whisper en Apple Silicon (M1–M5)

ChipTinyBaseSmallMediumLarge-v3
M132×20×12×
M1 Pro38×24×16×
M1 Max45×30×22×10×
M1 Ultra55×38×28×14×
M236×23×14×
M2 Pro42×28×20×
M2 Max50×35×26×12×
M2 Ultra60×42×32×17×
M340×26×16×
M3 Pro46×32×22×10×
M3 Max55×40×30×14×
M444×30×18×
M4 Pro50×36×26×12×
M4 Max60×44×34×16×
M5 (base)48×34×22×10×
M5 Pro55×40×30×14×
M5 Max65×48×38×18×

×N tiempo real = N segundos de audio transcritos en 1 segundo. Benchmarks vía whisper.cpp con aceleración Metal. Todos los M1 Pro+ pueden ejecutar large-v3 en tiempo real o más rápido.

Tamaños de modelos Whisper: ¿cuál deberías usar?

ModeloParámetrosTamaño en discoUso de RAMWER en inglésIdeal para

WER (tasa de error de palabras) en el conjunto de prueba inglés de LibriSpeech. Large-v3-turbo y distil-large-v3 son el punto óptimo para tiempo real en la mayoría de los Macs: calidad cercana a large-v3 a 4–6× la velocidad.

Metal vs Core ML vs Apple Neural Engine: ¿qué backend elegir?

Apple Silicon ofrece tres rutas de aceleración para Whisper. Cada una tiene sus ventajas y desventajas.

Metal (vía whisper.cpp) — Recomendado: Usa el framework GPU Apple Metal, compatible con todos los chips de la serie M, 10–12× tiempo real en large-v3 (M5 Pro), configuración vía make WHISPER_METAL=1. Ideal para: la mayoría de usuarios, la configuración más sencilla, rendimiento probado.

Core ML (vía formato Apple Core ML) — Avanzado: Usa el framework de aprendizaje automático de Apple, puede apuntar al Neural Engine (ANE) para algunas operaciones, 15–20% más rápido en algunas cargas de trabajo, requiere conversión del modelo (10–15 min de configuración). Ideal para: usuarios avanzados que buscan la máxima velocidad.

Apple Neural Engine (ANE) — Uso limitado: Acelerador de IA dedicado en todos los chips de la serie M, no accesible directamente (debe ir a través de Core ML), Whisper no aprovecha completamente el ANE por incompatibilidad de arquitectura, funciona mejor con modelos pequeños (tiny, base). Ideal para: Whisper tiny/base en laptops con batería.

Matriz de decisión: Primera configuración → Metal (whisper.cpp). Máxima velocidad en large-v3 → Metal (whisper.cpp). Laptop con batería, modelo base → Core ML con ANE. Servidor de producción → Metal (probado, confiable). Transcripción en tiempo real → Metal con modo streaming. Despliegue cloud en instancias Mac → Metal (contenedorizable).

  • Metal (whisper.cpp): Más rápido, amplia compatibilidad, configuración más sencilla
  • Core ML: Optimización con Neural Engine, ganancia de velocidad del 15–20% en algunas cargas (requiere conversión)
  • Apple Neural Engine: Beneficio limitado para modelos grandes, ideal para tiny/base en laptops

Configuración: whisper.cpp con aceleración Metal

  1. 1
    Instalar dependencias
    Why it matters: xcode-select --install (herramientas Xcode) brew install ffmpeg (conversión de audio)
  2. 2
    Clonar y compilar whisper.cpp con Metal
    Why it matters: git clone https://github.com/ggerganov/whisper.cpp cd whisper.cpp make WHISPER_METAL=1 ./main -h | grep -i metal
  3. 3
    Descargar un modelo
    Why it matters: bash ./models/download-ggml-model.sh small (466 MB, tiempo real) bash ./models/download-ggml-model.sh large-v3 (3 GB, mejor calidad) bash ./models/download-ggml-model.sh large-v3-turbo (1,6 GB, equilibrado)
  4. 4
    Transcribir un archivo de audio
    Why it matters: ./main -m models/ggml-large-v3.bin -f /ruta/al/audio.wav ./main -m models/ggml-large-v3.bin -f audio.wav -oj (JSON) ./main -m models/ggml-large-v3.bin -f audio.wav -l en (especificar idioma)
  5. 5
    Convertir audio no-WAV primero
    Why it matters: ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le output.wav ./main -m models/ggml-large-v3.bin -f output.wav

Transcripción en streaming en tiempo real (micrófono en vivo)

Para transcripción en vivo desde el micrófono: asistentes de voz, transcripción de reuniones, herramientas de accesibilidad.

Opción 1: modo stream de whisper.cpp

./stream -m models/ggml-small.bin --step 500 --length 5000

# --step 500: procesar cada 500ms

# --length 5000: mantener los últimos 5 segundos de contexto

Opción 2: Python con faster-whisper (ver bloque de código a continuación)

Latencia en M5 Pro: modelo small ~200ms, large-v3-turbo ~400–600ms, large-v3 ~800ms–1,2s de retraso respecto al tiempo real.

python
import sounddevice as sd
import numpy as np
from faster_whisper import WhisperModel

model = WhisperModel("large-v3-turbo", device="cpu", compute_type="int8")
buffer = []
chunk_duration = 3
sample_rate = 16000

def callback(indata, frames, time, status):
    buffer.append(indata.copy())
    if len(buffer) * 1024 / sample_rate >= chunk_duration:
        audio = np.concatenate(buffer).flatten().astype(np.float32)
        segments, _ = model.transcribe(audio, beam_size=5)
        for segment in segments:
            print(segment.text)
        buffer.clear()

with sd.InputStream(callback=callback, channels=1, samplerate=sample_rate):
    print("Listening... (Ctrl+C to stop)")
    while True:
        sd.sleep(1000)

Pipeline de asistente de voz: Whisper + Ollama + Piper TTS

Código completo para un asistente de voz local que funciona íntegramente en Apple Silicon.

python
import sounddevice as sd
import numpy as np
import requests
import subprocess
from faster_whisper import WhisperModel

WHISPER_MODEL = "large-v3-turbo"
OLLAMA_URL = "http://localhost:11434/api/chat"
LLM_MODEL = "llama3.1:8b"
SAMPLE_RATE = 16000

whisper = WhisperModel(WHISPER_MODEL, device="cpu", compute_type="int8")

def record_audio(duration=5):
    print("Listening...")
    audio = sd.rec(int(duration * SAMPLE_RATE),
                   samplerate=SAMPLE_RATE,
                   channels=1,
                   dtype=np.float32)
    sd.wait()
    return audio.flatten()

def transcribe(audio):
    segments, _ = whisper.transcribe(audio, beam_size=5)
    return " ".join([seg.text for seg in segments])

def llm_respond(user_text):
    response = requests.post(OLLAMA_URL, json={
        "model": LLM_MODEL,
        "messages": [{"role": "user", "content": user_text}],
        "stream": False
    })
    return response.json()["message"]["content"]

def speak(text):
    subprocess.run(
        ["piper", "--model", "en_US-amy-medium.onnx"],
        input=text.encode(),
        check=True
    )

while True:
    audio = record_audio(duration=5)
    user_text = transcribe(audio)
    print(f"You: {user_text}")
    if not user_text.strip():
        continue
    response = llm_respond(user_text)
    print(f"AI: {response}")
    speak(response)

Mejor configuración de Whisper según el modelo de Mac

Configuración MacModelo recomendadoMúltiplo de tiempo realCaso de uso

Para asistente de voz en tiempo real: usa small o large-v3-turbo para la menor latencia. Para transcripción de reuniones/podcasts: usa large-v3 para máxima precisión (retraso de 1–2 segundos aceptable). Los precios pueden variar según tu país.

Whisper local vs servicios de transcripción en la nube

MétricaWhisper local (M5 Pro)Google Speech-to-TextOpenAI Whisper APIAssemblyAI

Costo mensual (8 horas/día): Whisper local $0, Google $345, OpenAI $86, AssemblyAI $156. Los precios pueden variar según tu país. Para trabajo sensible a la privacidad (médico, legal, periodismo), Whisper local es la única opción. Para transcripción de alto volumen (más de $100/mes en la nube), un Mac local se amortiza en 12 meses.

¿Whisper es más rápido que las APIs en la nube?

Local en M5 Pro: 10× tiempo real (latencia 100ms). APIs en la nube: 100–500ms de latencia por la red. El local es más rápido y gratuito.

¿Puede Whisper manejar múltiples hablantes?

Sí, las marcas de tiempo separan a los hablantes. Usa herramientas de post-procesamiento o diarización para identificar la identidad de cada hablante.

¿Qué idiomas admite?

99 idiomas con detección automática. La precisión varía según el idioma: inglés al 2,5% WER, otros idiomas al 5–15% WER.

¿Qué modelo Whisper tiene la mejor relación velocidad/calidad?

Large-v3-turbo o distil-large-v3. Ambos logran ~95% de la precisión de large-v3 a 4–6× la velocidad. Recomendados para la mayoría de los casos de uso en tiempo real.

¿Puede Whisper manejar inglés con acento o hablantes no nativos?

Sí, pero el WER aumenta. Inglés nativo: ~2,5%. Acento fuerte/no nativo: 5–12%. Large-v3 maneja mejor los acentos que los modelos más pequeños.

¿Funciona Whisper para podcasts y transcripción de música?

Podcasts: sí, excelente para contenido hablado. Música con letra: deficiente — Whisper está entrenado para voz. Usa modelos especializados para música.

¿Qué tan preciso es Whisper con terminología técnica?

Variable. Términos técnicos comunes: bueno. Términos muy especializados: puede transcribir incorrectamente. Usa la opción --prompt con el vocabulario esperado para mejorar la precisión.

¿Puedo ejecutar múltiples instancias de Whisper en un Mac?

Sí, limitado por la memoria. M5 Pro 36GB: 2 instancias de large-v3 simultáneas. M5 Max 128GB: 4–6 instancias o una instancia más LLM/TTS.

A Note on Third-Party Facts

This article references third-party AI models, benchmarks, prices, and licenses. The AI landscape changes rapidly. Benchmark scores, license terms, model names, and API prices can shift between the time of writing and the time you read this. Before making deployment or compliance decisions based on this article, verify current figures on each provider's official source: Hugging Face model cards for licenses and benchmarks, provider websites for API pricing, and EUR-Lex for current GDPR and EU AI Act text. This article reflects publicly available information as of May 2026.

Compare your local LLM against 25+ cloud models simultaneously with PromptQuorum.

Join the PromptQuorum Waitlist →

← Back to Local LLMs

Whisper STT en Apple Silicon 2026: Benchmarks Metal M1–M5