Para preparar tus canalizaciones de AA para la producción, debes hacer lo siguiente:
- Aprovisiona recursos de procesamiento para tus canalizaciones
- Implementa el registro, la supervisión y las alertas
Aprovisionamiento de recursos de procesamiento
La ejecución de canalizaciones de AA requiere recursos de procesamiento, como RAM, CPU y GPU/TPU. Sin la capacidad de procesamiento adecuada, no puedes ejecutar tus canalizaciones. Por lo tanto, asegúrate de obtener la cuota suficiente para aprovisionar los recursos necesarios que tus canalizaciones necesitan para ejecutarse en producción.
Canalizaciones de entrega, entrenamiento y validación. Estas canalizaciones requieren TPU, GPU o CPU. Según tu caso de uso, es posible que entrenes y realices la inferencia en hardware diferente, o bien que uses el mismo hardware. Por ejemplo, el entrenamiento podría realizarse en CPUs, pero la entrega podría usar TPUs, o viceversa. En general, es común realizar el entrenamiento en hardware más grande y, luego, realizar la inferencia en hardware más pequeño.
Cuando elijas el hardware, ten en cuenta lo siguiente:
- ¿Se puede entrenar en hardware menos costoso?
- ¿Cambiar a un hardware diferente mejoraría el rendimiento?
- ¿Qué tamaño tiene el modelo y qué hardware optimizará su rendimiento?
- ¿Qué hardware es ideal según la arquitectura de tu modelo?
Canalizaciones de datos. Las canalizaciones de datos requieren cuota para la RAM y la CPU Deberás estimar cuánta cuota necesita tu canalización para generar conjuntos de datos de entrenamiento y prueba.
Es posible que no asignes cuota para cada canalización. En su lugar, puedes asignar una cuota que compartan las canalizaciones. En esos casos, verifica que tengas suficiente cuota para ejecutar todas tus canalizaciones y configura la supervisión y las alertas para evitar que una sola canalización errónea consuma toda la cuota.
Cuota de estimación
Para estimar la cuota que necesitarás para las canalizaciones de datos y entrenamiento, busca proyectos similares en los que basar tus estimaciones. Para estimar la cuota de servicio, intenta predecir las consultas por segundo del servicio. Estos métodos proporcionan un valor de referencia. A medida que comiences a crear un prototipo de solución durante la fase de experimentación, comenzarás a obtener una estimación de cuota más precisa.
Cuando calcules la cuota, recuerda tener en cuenta no solo la cuota de tus canalizaciones de producción, sino también la de los experimentos en curso.
Comprueba tu comprensión
Registro, supervisión y alertas
Es fundamental registrar y supervisar el comportamiento de un modelo de producción. La infraestructura de supervisión sólida confirma que tus modelos ofrecen predicciones confiables y de alta calidad.
Las buenas prácticas de registro y supervisión ayudan a identificar de forma proactiva los problemas en las canalizaciones de AA y a mitigar el posible impacto en el negocio. Cuando ocurren problemas, las alertas notifican a los miembros de tu equipo, y los registros integrales facilitan el diagnóstico de la causa raíz del problema.
Debes implementar el registro y la supervisión para detectar los siguientes problemas con las canalizaciones de AA:
Canalización | Supervisar |
---|---|
Entrega |
|
Datos |
|
Capacitación |
|
Validación |
|
También querrás registrar, supervisar y generar alertas para lo siguiente:
- Latencia. ¿Cuánto tiempo se tarda en entregar una predicción?
- Interrupciones. ¿El modelo dejó de entregar predicciones?
Comprueba tu comprensión
La implementación de un modelo.
Para la implementación del modelo, te recomendamos que documentes lo siguiente:
- Aprobaciones necesarias para comenzar la implementación y aumentarla
- Cómo poner un modelo en producción
- Indica dónde se implementa el modelo, por ejemplo, si hay entornos de pruebas o de lanzamiento de versiones preliminares.
- Qué hacer si falla una implementación
- Cómo revertir un modelo que ya está en producción
Después de automatizar el entrenamiento del modelo, querrás automatizar la validación y la implementación. La automatización de las implementaciones distribuye la responsabilidad y reduce la probabilidad de que una sola persona genere un cuello de botella en una implementación. También reduce los posibles errores, aumenta la eficiencia y la confiabilidad, y permite las rotaciones de guardia y la asistencia de SRE.
Por lo general, implementas modelos nuevos para un subconjunto de usuarios y verificas que el modelo se comporte como se espera. Si es así, continúa con la implementación. Si no es así, revierte la implementación y comienza a diagnosticar y depurar los problemas.