Planificación de capacidad de GPU para reconocimiento de voz
Cómo estimar los recursos de GPU necesarios para cargas de trabajo de reconocimiento de voz en tiempo real.
Las cargas de trabajo de reconocimiento de voz son exigentes porque combinan requisitos estrictos de latencia con una computación paralela intensiva. Un servicio de transcripción en tiempo real no puede almacenar en búfer de forma indefinida; debe procesar los fotogramas de audio a medida que llegan sin comprometer la precisión. Las GPU aceleran la inferencia del modelo acústico y del modelo de lenguaje, pero dimensionarlas correctamente requiere comprender la relación entre los flujos de audio, la complejidad del modelo y la estrategia de procesamiento por lotes (batching).
Este artículo explica cómo estimar la capacidad de GPU para el reconocimiento de voz en tiempo real sin basarse en conjeturas a partir de las pruebas de rendimiento de los fabricantes.
Comprenda el flujo de trabajo (pipeline)
El reconocimiento de voz suele seguir un flujo de trabajo: preprocesamiento del audio, extracción de características, inferencia del modelo acústico, decodificación y posprocesamiento del texto. La carga de la GPU se concentra en el modelo acústico, que evalúa los fotogramas de audio contra una red neuronal entrenada.
- Los flujos de audio pueden ser enunciados cortos o sesiones continuas prolongadas
- La frecuencia de muestreo y el desplazamiento de fotograma determinan con qué frecuencia se ejecuta la inferencia
- El tamaño del modelo controla el consumo de memoria y el cómputo por fotograma
- Procesar varios flujos por lotes aumenta el rendimiento, pero añade latencia
No es posible dimensionar las GPU únicamente a partir de los usuarios concurrentes. Dos usuarios que susurran de forma intermitente cargan el sistema de manera muy distinta a dos usuarios en una conversación continua.
Estime a partir de flujos, no de usuarios
Un enfoque práctico consiste en convertir los usuarios en flujos de audio activos y, a continuación, determinar cuántos flujos puede sostener una sola GPU dentro de su presupuesto de latencia.
- Defina la latencia máxima objetivo por enunciado o por palabra
- Mida o estime el tiempo de inferencia por fotograma en las GPU candidatas
- Calcule la frecuencia de fotogramas a partir de los parámetros de audio
- Determine cuántos flujos pueden intercalarse sin superar la latencia
- Aplique un margen de seguridad para ráfagas y sobrecarga del sistema
Si se utiliza el procesamiento por lotes, modele el rendimiento con distintos tamaños de lote. Los lotes más grandes mejoran la utilización de la GPU, pero aumentan el tiempo de espera en el peor caso.
Lista de verificación para la planificación de GPU en reconocimiento de voz
| Parámetro | Por qué es importante |
|---|---|
| Flujos activos | Impulsan directamente la carga de la GPU |
| Objetivo de latencia | Limita la agresividad del procesamiento por lotes |
| Tamaño del modelo | Determina la memoria y el cómputo por inferencia |
| Frecuencia de fotogramas | Establece la frecuencia de la inferencia |
| Memoria de la GPU | Debe contener los pesos del modelo y el estado de los flujos activos |
| Margen de seguridad | Protege contra ráfagas de tráfico y actualizaciones del modelo |
Memoria, no solo cómputo
Los modelos de voz modernos pueden ser de gran tamaño. La memoria de la GPU debe dar cabida a los pesos del modelo, las activaciones intermedias, las cachés de clave-valor de los decodificadores en streaming y cualquier estado de búsqueda por haces (beam search). Quedarse sin memoria obliga a reducir los lotes o a cuantizar el modelo, lo que puede afectar la precisión.
Planifique la memoria de la GPU con el mismo cuidado que el cómputo. Una GPU más rápida con memoria insuficiente puede ofrecer un rendimiento real inferior al de una GPU más lenta con mayor margen.
¿Está planificando una implementación de reconocimiento de voz?
SmashByte Servers diseña plataformas de alta densidad de GPU para cargas de trabajo de audio en tiempo real, transcripción e inferencia.
Solicitar planificación de capacidad de GPU