Logotipo de Zephyrnet

Cree un flujo de trabajo de promoción y aprobación del registro modelo de Amazon SageMaker con intervención humana | Servicios web de Amazon

Fecha:

Esta publicación está coescrita con Jayadeep Pabbisetty, especialista sénior en ingeniería de datos de Merck, y Prabakaran Mathaiyan, ingeniero sénior de aprendizaje automático en Tiger Analytics.

El gran ciclo de vida de desarrollo de modelos de aprendizaje automático (ML) requiere un proceso de lanzamiento de modelos escalable similar al del desarrollo de software. Los desarrolladores de modelos a menudo trabajan juntos en el desarrollo de modelos ML y requieren una plataforma MLOps sólida para trabajar. Una plataforma MLOps escalable debe incluir un proceso para manejar el flujo de trabajo del registro, aprobación y promoción del modelo ML al siguiente nivel de entorno (desarrollo, prueba). , UAT o producción).

Un desarrollador de modelos normalmente comienza a trabajar en un entorno de desarrollo de ML individual dentro de Amazon SageMaker. Cuando un modelo está entrenado y listo para ser utilizado, debe ser aprobado después de haber sido registrado en el Registro de modelos de Amazon SageMaker. En esta publicación, analizamos cómo el equipo de IA/ML de AWS colaboró ​​con el equipo MLOps de TI de Merck Human Health para crear una solución que utiliza un flujo de trabajo automatizado para la aprobación y promoción del modelo de ML con intervención humana en el medio.

Resumen de la solución

Esta publicación se centra en una solución de flujo de trabajo que el ciclo de vida de desarrollo del modelo ML puede utilizar entre el proceso de capacitación y el proceso de inferencia. La solución proporciona un flujo de trabajo escalable para MLOps para respaldar el proceso de aprobación y promoción del modelo ML con intervención humana. Un modelo de ML registrado por un científico de datos necesita un aprobador para revisarlo y aprobarlo antes de usarlo para una canalización de inferencia y en el siguiente nivel de entorno (prueba, UAT o producción). La solución utiliza AWS Lambda, Puerta de enlace API de Amazon, Puente de eventos de Amazony SageMaker para automatizar el flujo de trabajo con intervención de aprobación humana en el medio. El siguiente diagrama de arquitectura muestra el diseño general del sistema, los servicios de AWS utilizados y el flujo de trabajo para aprobar y promover modelos de ML con intervención humana desde el desarrollo hasta la producción.

Arquitectura del aprobador de modelos

El flujo de trabajo incluye los siguientes pasos:

  1. El proceso de capacitación desarrolla y registra un modelo en el registro de modelos de SageMaker. En este punto, el estado del modelo es PendingManualApproval.
  2. EventBridge monitorea los eventos de cambio de estado para tomar acciones automáticamente con reglas simples.
  3. La regla de evento de registro del modelo EventBridge invoca una función Lambda que crea un correo electrónico con un enlace para aprobar o rechazar el modelo registrado.
  4. El aprobador recibe un correo electrónico con el enlace para revisar y aprobar o rechazar el modelo.
  5. El aprobador aprueba el modelo siguiendo el enlace del correo electrónico a un punto final de API Gateway.
  6. API Gateway invoca una función Lambda para iniciar actualizaciones del modelo.
  7. El registro del modelo se actualiza para el estado del modelo (Approved para el entorno de desarrollo, pero PendingManualApproval para prueba, UAT y producción).
  8. El detalle del modelo se almacena en Almacén de parámetros de AWS, una capacidad de Gerente de sistemas de AWS, incluida la versión del modelo, el entorno de destino aprobado y el paquete del modelo.
  9. La canalización de inferencia obtiene el modelo aprobado para el entorno de destino del Parameter Store.
  10. La función Lambda de notificación posterior a la inferencia recopila métricas de inferencia por lotes y envía un correo electrónico al aprobador para promover el modelo al siguiente entorno.

Requisitos previos

El flujo de trabajo de esta publicación supone que el entorno para el proceso de capacitación está configurado en SageMaker, junto con otros recursos. La entrada al proceso de capacitación es el conjunto de datos de características. Los detalles de generación de funciones no se incluyen en esta publicación, pero se centra en el registro, la aprobación y la promoción de los modelos de ML una vez entrenados. El modelo se inscribe en el registro de modelos y se rige por un marco de seguimiento en Monitor de modelo de Amazon SageMaker para detectar cualquier desviación y proceder al reentrenamiento en caso de desviación del modelo.

Detalles del flujo de trabajo

El flujo de trabajo de aprobación comienza con un modelo desarrollado a partir de un proceso de capacitación. Cuando los científicos de datos desarrollan un modelo, lo registran en el Registro de modelos de SageMaker con el estado del modelo de PendingManualApproval. EventBridge monitorea SageMaker para detectar el evento de registro del modelo y activa una regla de evento que invoca una función Lambda. La función Lambda construye dinámicamente un correo electrónico para la aprobación del modelo con un enlace a un punto final de API Gateway a otra función Lambda. Cuando el aprobador sigue el enlace para aprobar el modelo, API Gateway reenvía la acción de aprobación a la función Lambda, que actualiza el Registro de modelos de SageMaker y los atributos del modelo en Parameter Store. El aprobador debe estar autenticado y ser parte del grupo de aprobadores administrado por Active Directory. La aprobación inicial marca el modelo como Approved para desarrolladores pero PendingManualApproval para pruebas, UAT y producción. Los atributos del modelo guardados en Parameter Store incluyen la versión del modelo, el paquete del modelo y el entorno de destino aprobado.

Cuando una canalización de inferencia necesita recuperar un modelo, verifica en Parameter Store la última versión del modelo aprobada para el entorno de destino y obtiene los detalles de la inferencia. Cuando se completa el proceso de inferencia, se envía un correo electrónico de notificación posterior a la inferencia a una parte interesada solicitando una aprobación para promover el modelo al siguiente nivel ambiental. El correo electrónico tiene detalles sobre el modelo y las métricas, así como un enlace de aprobación a un punto final de API Gateway para una función Lambda que actualiza los atributos del modelo.

La siguiente es la secuencia de eventos y pasos de implementación para el flujo de trabajo de aprobación/promoción del modelo ML desde la creación del modelo hasta la producción. El modelo se promueve desde los entornos de desarrollo hasta los de prueba, UAT y producción con una aprobación humana explícita en cada paso.

Comenzamos con el proceso de capacitación, que está listo para el desarrollo del modelo. La versión del modelo comienza como 0 en SageMaker Model Registry.

registro modelo versión 0

  1. El canal de capacitación de SageMaker desarrolla y registra un modelo en el Registro de modelos de SageMaker. La versión 1 del modelo está registrada y comienza con Aprobación manual pendiente de estado.registro modelo versión 1Los metadatos del Registro de modelos tienen cuatro campos personalizados para los entornos: dev, test, uaty prod.parte inferior del registro del modelo
  2. EventBridge monitorea el Registro de modelos de SageMaker para detectar el cambio de estado y tomar medidas automáticamente con reglas simples.Patrón de evento EventBridgeReglas y bus de eventos de EventBridge
  3. La regla de evento de registro del modelo invoca una función Lambda que construye un correo electrónico con el enlace para aprobar o rechazar el modelo registrado.puerta de enlace lambda y apivariables de entorno lambda
  4. El aprobador recibe un correo electrónico con el enlace para revisar y aprobar (o rechazar) el modelo.correo electrónico de aprobación del modelo
  5. El aprobador aprueba el modelo siguiendo el enlace al punto final de API Gateway en el correo electrónico.Aprobación del modelo API GatewayDetalles de la ruta de la puerta de enlace APIDetalles de integración de ruta API GW
  6. API Gateway invoca la función Lambda para iniciar actualizaciones del modelo.
  7. El Registro de modelos de SageMaker se actualiza con el estado del modelo.Ejemplo de código de función Lambda
  8. La información detallada del modelo se almacena en Parameter Store, incluida la versión del modelo, el entorno de destino aprobado y el paquete del modelo.modelo versión 1 aprobadometadatos personalizados del registro de modelos
  9. La canalización de inferencia obtiene el modelo aprobado para el entorno de destino del Parameter Store.
  10. La función Lambda de notificación posterior a la inferencia recopila métricas de inferencia por lotes y envía un correo electrónico al aprobador para promover el modelo al siguiente entorno.
  11. El aprobador aprueba la promoción del modelo al siguiente nivel siguiendo el enlace al punto final de API Gateway, que activa la función Lambda para actualizar el Registro de modelos y el Almacén de parámetros de SageMaker.

El historial completo de versiones y aprobación del modelo se guarda para su revisión en Parameter Store.

detalles de la versión de aprobación del modeloatributos del modelo en el almacén de parámetros

Conclusión

El gran ciclo de vida de desarrollo del modelo ML requiere un proceso de aprobación del modelo ML escalable. En esta publicación, compartimos una implementación de un flujo de trabajo de registro, aprobación y promoción de un modelo de ML con intervención humana utilizando SageMaker Model Registry, EventBridge, API Gateway y Lambda. Si está considerando un proceso de desarrollo de modelo ML escalable para su plataforma MLOps, puede seguir los pasos de esta publicación para implementar un flujo de trabajo similar.


Sobre los autores

tom kim es arquitecto senior de soluciones en AWS, donde ayuda a sus clientes a alcanzar sus objetivos comerciales mediante el desarrollo de soluciones en AWS. Tiene una amplia experiencia en arquitectura y operaciones de sistemas empresariales en varias industrias, particularmente en atención médica y ciencias biológicas. Tom siempre está aprendiendo nuevas tecnologías que conducen al resultado comercial deseado por los clientes, p. AI/ML, GenAI y análisis de datos. También le gusta viajar a nuevos lugares y jugar en nuevos campos de golf siempre que tiene tiempo.

El retrato de Sharmika.Shamika Ariyawansa, que se desempeña como arquitecto senior de soluciones de IA/ML en la división de atención médica y ciencias biológicas de Amazon Web Services (AWS), se especializa en IA generativa, con un enfoque en la capacitación de modelos de lenguaje grande (LLM), optimizaciones de inferencia y MLOps (aprendizaje automático). Operaciones). Guía a los clientes en la incorporación de IA generativa avanzada en sus proyectos, garantizando procesos de capacitación sólidos, mecanismos de inferencia eficientes y prácticas MLOps optimizadas para soluciones de IA efectivas y escalables. Más allá de sus compromisos profesionales, Shamika se dedica apasionadamente al esquí y a las aventuras todoterreno.

Jayadeep Pabbisetty es ingeniero senior de datos y aprendizaje automático en Merck, donde diseña y desarrolla soluciones ETL y MLOps para desbloquear la ciencia y el análisis de datos para el negocio. Siempre está entusiasmado por aprender nuevas tecnologías, explorar nuevas vías y adquirir las habilidades necesarias para evolucionar con la industria de TI en constante cambio. En su tiempo libre sigue su pasión por los deportes y le gusta viajar y explorar nuevos lugares.

Prabakaran Mathaiyan es ingeniero senior de aprendizaje automático en Tiger Analytics LLC, donde ayuda a sus clientes a lograr sus objetivos comerciales brindándoles soluciones para la creación de modelos, capacitación, validación, monitoreo, CICD y mejora de soluciones de aprendizaje automático en AWS. Prabakaran siempre está aprendiendo nuevas tecnologías que conducen al resultado comercial deseado para los clientes, p. AI/ML, GenAI, GPT y LLM. También le gusta jugar al cricket siempre que tiene tiempo.

punto_img

Información más reciente

punto_img