1-configurar Vosk para que utilice todos los recursos de mi pc

 Para configurar Vosk y que utilice todos los recursos de tu PC con la máxima prioridad, sigue estos pasos (cubriendo ajustes de software, sistema operativo y configuración de Vosk):


1. Configuración de Vosk (Python)

A. Usar el modelo más optimizado

  • Descarga el modelo Vosk más grande y preciso (pero aún rápido) para tu idioma (ej. vosk-model-es-0.42 para español):

    bash
    Copy
    Download
    wget https://alphacephei.com/vosk/models/vosk-model-es-0.42.zip
    unzip vosk-model-es-0.42.zip

B. Ajustar parámetros de reconocimiento

En tu script de Python, activa opciones de rendimiento:

python
Copy
Download
from vosk import Model, KaldiRecognizer
import pyaudio

# Carga el modelo con threads adicionales (usa todos los núcleos del CPU)
model = Model("ruta/al/modelo", log_level=0)  # log_level=0 silencia logs innecesarios

# Configura el reconocedor para audio en tiempo real
recognizer = KaldiRecognizer(model, 16000)
recognizer.SetMaxAlternatives(1)  # Reduce carga al pedir solo 1 alternativa
recognizer.SetWords(True)  # Opcional: solo si necesitas palabras individuales

# Captura audio con PyAudio
p = pyaudio.PyAudio()
stream = p.open(format=pyaudio.paInt16, channels=1, rate=16000, input=True, frames_per_buffer=4096)  # Buffer pequeño para baja latencia

print("Escuchando... (Presiona Ctrl+C para detener)")
while True:
    data = stream.read(4096, exception_on_overflow=False)
    if recognizer.AcceptWaveform(data):
        print(recognizer.Result())  # Resultado final
    # else:
    #     print(recognizer.PartialResult())  # Resultados parciales (opcional, aumenta carga)

C. Optimizaciones clave:

  • Threads de CPU: Vosk usa múltiples hilos por defecto, pero puedes forzar más con variables de entorno antes de ejecutar el script:

    bash
    Copy
    Download
    export VOSK_THREADS=8  # Usa 8 hilos (ajusta según tu CPU)
    python tu_script.py
  • Modelo ligero: Si la prioridad es velocidad, prueba vosk-model-small-es-0.42.


2. Prioridad en el Sistema Operativo

Windows:

  1. Abre el Administrador de tareas (Ctrl + Shift + Esc).

  2. Ve a la pestaña Detalles.

  3. Haz clic derecho en tu script de Python (python.exe o pythonw.exe).

  4. Selecciona Establecer prioridad → Alta o Tiempo real (¡cuidado! "Tiempo real" puede inestabilizar el sistema).

Linux/macOS:

Ejecuta el script con nice y taskset para prioridad y afinidad de CPU:

bash
Copy
Download
sudo nice -n -20 taskset -c 0-7 python tu_script.py  # Usa todos los núcleos (0-7) con máxima prioridad
  • nice -n -20: Asigna la prioridad más alta (requiere sudo).

  • taskset -c 0-7: Fija el proceso a los núcleos 0-7 (ajusta según tu CPU).


3. Ajustes de Hardware

A. CPU:

  • Desactiva el estado de bajo consumo (BIOS/UEFI → "High Performance Mode").

  • En Windows, selecciona Plan de energía: Alto rendimiento (Panel de control → Hardware y sonido → Opciones de energía).

B. Audio:

  • Usa un buffer pequeño (ej. frames_per_buffer=2048 en PyAudio) para reducir latencia.

  • Evita dispositivos USB con drivers lentos (mejor usa audio integrado o interfaces profesionales).


4. Alternativa: Vosk con GPU (Si tienes Nvidia)

Vosk soporta aceleración por GPU con CUDA (solo en versiones compiladas manualmente). Sigue estos pasos:

  1. Instala CUDA Toolkit y cuDNN.

  2. Recompila Vosk desde código fuente con soporte CUDA:

    bash
    Copy
    Download
    git clone https://github.com/alphacep/vosk-api
    cd vosk-api/src
    make -j $(nproc) CUDA=1
  3. Usa el modelo como antes, pero notarás menor carga en la CPU.


Resultados Esperados

ConfiguraciónLatenciaPrecisiónUso de CPU
Vosk + Prioridad Alta + Threads0.5-1 segAlta100% (todos los núcleos)
Vosk + GPU (CUDA)0.2-0.5 segMáximaDescarga CPU

Conclusión

  • Máximo rendimiento: Combina prioridad en el SO, threads de CPU y un modelo optimizado.

  • Para streaming en OBS: Usa el plugin OBS-Vosk o integra el script Python con un filtro de audio en OBS (via VB-Cable).

Si necesitas ayuda con algún paso específico (ej: compilar Vosk con CUDA), dime y te guío. 

Comentarios

Entradas más populares de este blog

3-Whisper vs Vosk