La creación de modelos básicos personalizados requiere la coordinación de múltiples activos a lo largo del ciclo de vida de desarrollo, como activos de datos, infraestructura informática, marcos y arquitectura de modelos, linaje e implementaciones de producción. Los científicos de datos crean y perfeccionan conjuntos de datos de entrenamiento, desarrollan evaluadores personalizados para evaluar la calidad y seguridad del modelo e iteran a través de configuraciones de ajuste para optimizar el rendimiento. A medida que estos flujos de trabajo se amplían entre equipos y entornos, rastrear qué versiones específicas de conjuntos de datos, configuraciones de evaluador e hiperparámetros produjeron cada modelo se vuelve un desafío. Los equipos a menudo dependen de documentación manual en cuadernos u hojas de cálculo, lo que dificulta reproducir experimentos exitosos o comprender el linaje de los modelos de producción.
Este desafío se intensifica en entornos empresariales con múltiples cuentas de AWS para desarrollo, puesta en escena y producción. A medida que los modelos avanzan a través de los procesos de implementación, mantener la visibilidad de sus datos de entrenamiento, criterios de evaluación y configuraciones requiere una coordinación significativa. Sin un seguimiento automatizado, los equipos pierden la capacidad de rastrear los modelos implementados hasta sus orígenes o compartir activos de manera consistente entre experimentos. Amazon SageMaker AI admite el seguimiento y la administración de activos utilizados en el desarrollo de IA generativa. Con Amazon SageMaker AI puede registrar y versionar modelos, conjuntos de datos y evaluadores personalizados, y luego capturar automáticamente las relaciones y el linaje a medida que ajusta, evalúa e implementa modelos de IA generativos. Esto reduce la sobrecarga del seguimiento manual y proporciona visibilidad completa de cómo se crearon los modelos, desde el modelo básico hasta la implementación de producción.
En esta publicación, exploraremos las nuevas capacidades y conceptos centrales que ayudan a las organizaciones a rastrear y administrar los ciclos de vida de implementación y desarrollo de modelos. Le mostraremos cómo se configuran las funciones para entrenar modelos con un linaje automático de extremo a extremo, desde la carga y el control de versiones del conjunto de datos hasta el ajuste, la evaluación y la implementación perfecta de puntos finales del modelo.
Administrar versiones de conjuntos de datos entre experimentos
A medida que perfecciona los datos de entrenamiento para la personalización del modelo, normalmente crea varias versiones de conjuntos de datos. Puede registrar conjuntos de datos y crear nuevas versiones a medida que sus datos evolucionan, y cada versión se rastrea de forma independiente. Cuando registra un conjunto de datos en SageMaker AI, proporciona la ubicación de S3 y los metadatos que describen el conjunto de datos. A medida que perfecciona sus datos, ya sea agregando más ejemplos, mejorando la calidad o ajustándolos para casos de uso específicos, puede crear nuevas versiones del mismo conjunto de datos. Cada versión, como se muestra en la siguiente imagen, mantiene sus propios metadatos y ubicación S3 para que puedas realizar un seguimiento de la evolución de tus datos de entrenamiento a lo largo del tiempo.
Cuando utiliza un conjunto de datos para realizar ajustes, Amazon SageMaker AI vincula automáticamente la versión específica del conjunto de datos con el modelo resultante. Esto respalda la comparación entre modelos entrenados con diferentes versiones de conjuntos de datos y le ayuda a comprender qué mejoras de datos condujeron a un mejor rendimiento. También puede reutilizar la misma versión del conjunto de datos en varios experimentos para lograr coherencia al probar diferentes hiperparámetros o técnicas de ajuste fino.
Crear evaluadores personalizados reutilizables
La evaluación de modelos personalizados a menudo requiere criterios de calidad, seguridad o rendimiento específicos del dominio. Un evaluador personalizado consta de un código de función Lambda que recibe datos de entrada y devuelve resultados de evaluación, incluidas puntuaciones y estado de validación. Puede definir evaluadores para diversos fines: verificar la calidad de la respuesta, evaluar la seguridad y la toxicidad, validar el formato de salida o medir la precisión de una tarea específica. Puede realizar un seguimiento de los evaluadores personalizados mediante funciones de AWS Lambda que implementan su lógica de evaluación y luego versionar y reutilizar estos evaluadores en modelos y conjuntos de datos, como se muestra en la siguiente imagen.
Seguimiento automático del linaje durante todo el ciclo de vida del desarrollo.
La capacidad de seguimiento de linaje de IA de SageMaker captura automáticamente las relaciones entre los activos a medida que construye y evalúa modelos. Cuando crea un trabajo de ajuste, Amazon SageMaker AI vincula el trabajo de entrenamiento con conjuntos de datos de entrada, modelos básicos y modelos de salida. Cuando ejecuta trabajos de evaluación, conecta las evaluaciones con los modelos que se evalúan y los evaluadores utilizados. Esta captura automática de linaje significa que no es necesario documentar manualmente qué recursos se utilizaron para cada experimento. Puede ver el linaje completo de un modelo, mostrando su modelo base, conjuntos de datos de entrenamiento con versiones específicas, hiperparámetros, resultados de evaluación y ubicaciones de implementación, como se muestra en la imagen a continuación.
Con la vista de linaje, puede rastrear cualquier modelo implementado hasta sus orígenes. Por ejemplo, si necesita comprender por qué un modelo de producción se comporta de cierta manera, puede ver exactamente qué datos de entrenamiento, configuración de ajuste y criterios de evaluación se utilizaron. Esto es particularmente valioso para fines de gobernanza, reproducibilidad y depuración. También puede utilizar información de linaje para reproducir experimentos. Al identificar la versión exacta del conjunto de datos, la versión del evaluador y la configuración utilizadas para un modelo exitoso, puede recrear el proceso de capacitación con la confianza de que está utilizando entradas idénticas.
Integración con MLflow para el seguimiento de experimentos
Las capacidades de personalización de modelos de Amazon SageMaker AI tienen un comportamiento predeterminado integrado con las aplicaciones MLflow de SageMaker AI, lo que proporciona vinculación automática entre trabajos de entrenamiento de modelos y experimentos de MLflow. Cuando ejecuta trabajos de personalización de modelos, todas las acciones de MLflow necesarias se realizan automáticamente: la aplicación SageMaker AI MLflow predeterminada se utiliza automáticamente, se selecciona un experimento de MLflow y se registran todas las métricas, parámetros y artefactos. Desde la página del modelo de SageMaker AI Studio, podrá ver las métricas obtenidas de MLflow (como se muestra en la siguiente imagen) y ver más métricas completas dentro del experimento de MLflow asociado.
Con la integración de MLflow, es sencillo comparar varios modelos candidatos. Puede usar MLflow para visualizar métricas de rendimiento en todos los experimentos, identificar el modelo con mejor rendimiento y luego usar el linaje para comprender qué conjuntos de datos y evaluadores específicos produjeron ese resultado. Esto le ayuda a tomar decisiones informadas sobre qué modelos promover a producción basándose tanto en métricas cuantitativas como en la procedencia de los activos.
Comenzando con el seguimiento y la gestión de activos de IA generativa
Al incorporar estos diversos activos y procesos de personalización de modelos (control de versiones de conjuntos de datos, seguimiento de evaluadores, rendimiento de modelos, implementación de modelos), puede convertir los activos de modelos dispersos en un flujo de trabajo rastreable, reproducible y listo para producción con un linaje automático de extremo a extremo. Esta capacidad ahora está disponible en las regiones de AWS compatibles. Puede acceder a esta capacidad a través de Amazon SageMaker AI Studio y el SDK de Python de SageMaker.
Para empezar:
Abra Amazon SageMaker AI Studio y navegue hasta la sección Modelos. Personalice los modelos base JumpStart para crear un modelo. Navegue a la sección Activos para administrar conjuntos de datos y evaluadores. Registre su primer conjunto de datos proporcionando una ubicación y metadatos de S3. Cree un evaluador personalizado utilizando una función Lambda existente o cree uno nuevo. Utilice conjuntos de datos registrados en sus trabajos de ajuste: el linaje se captura automáticamente. Vea el linaje del modelo para ver las relaciones completas.
Para obtener más información, visite la documentación de Amazon SageMaker AI.
Sobre los autores
Amit Modi es el líder de producto para SageMaker AI MLOps, ML Governance e Inference en AWS. Con más de una década de experiencia B2B, crea productos y equipos escalables que impulsan la innovación y ofrecen valor a los clientes de todo el mundo.
Sandeep Raveesh es arquitecto de soluciones especializado en GenAI en AWS. Trabaja con el cliente a lo largo de su recorrido AIOps a través de la capacitación de modelos, aplicaciones GenAI como Agentes y la ampliación de casos de uso de GenAI. También se centra en estrategias de comercialización que ayudan a AWS a crear y alinear productos para resolver los desafíos de la industria en el espacio de la IA generativa. Puede conectarse con Sandeep en LinkedIn para conocer las soluciones GenAI.