Esta función agrega múltiples solicitudes de inferencia individuales en una única ejecución por lotes para maximizar la utilización de la GPU y minimizar la sobrecarga por solicitud. Al analizar los patrones de las solicitudes en tiempo real, el sistema determina los tamaños de lote óptimos que equilibran las limitaciones de memoria con la velocidad de procesamiento. Este enfoque es fundamental para aplicaciones empresariales que gestionan flujos de datos a gran escala, donde la sensibilidad a la latencia y la eficiencia de costos son prioritarias.
El sistema monitorea automáticamente las colas de inferencia entrantes para detectar picos de carga o condiciones de estado estable.
Calcula los tamaños de lote óptimos evaluando los recursos de cómputo disponibles y los tiempos de llegada de las solicitudes.
Las solicitudes se combinan en lotes unificados, se ejecutan en paralelo y luego se descomponen para la entrega individual de las respuestas.
Monitoree en tiempo real las tasas de llegada de solicitudes y las métricas de utilización actual de la memoria de la GPU.
Calcule el tamaño óptimo de los lotes en función de los objetivos de latencia y los recursos de cómputo disponibles.
Agrupe las solicitudes entrantes en lotes unificados, conservando los datos de contexto individuales.
Ejecute trabajos de inferencia en paralelo y descomponga los resultados para entregar información a los clientes de forma individual por solicitud.
Los puntos finales de la API reciben cargas útiles que contienen metadatos que indican la prioridad y los requisitos de recursos para la toma de decisiones de procesamiento por lotes.
El motor evalúa la profundidad de la cola y la capacidad del hardware para determinar el número óptimo de solicitudes por lote.
Los lotes unificados se envían a clústeres de GPU, donde los modelos se ejecutan en paralelo antes de que se agreguen los resultados.