Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
SageMaker MLOpsTutorial del proyecto con Git Repos de terceros
importante
A partir del 30 de noviembre de 2023, la experiencia anterior de Amazon SageMaker Studio pasa a denominarse Amazon SageMaker Studio Classic. La siguiente sección trata específicamente del uso de la aplicación Studio Classic. Para obtener información sobre el uso de la experiencia de Studio actualizada, consulteAmazon SageMaker Studio.
En este tutorial, se utiliza la plantilla MLOpsplantilla para la creación, el entrenamiento y el despliegue de modelos con repositorios Git de terceros mediante CodePipeline para demostrar cómo utilizar MLOps los proyectos para crear un sistema de CI/CD para crear, entrenar e implementar modelos.
Requisitos previos
Para realizar este tutorial, necesitará lo siguiente:
-
Una IAM cuenta de IAM Identity Center para iniciar sesión en Studio Classic. Para obtener más información, consulte Descripción general SageMaker del dominio de Amazon.
-
Permiso para usar las plantillas SageMaker de proyecto proporcionadas. Para obtener más información, consulte SageMaker Se requieren permisos de estudio para usar los proyectos.
-
Familiaridad básica con la interfaz de usuario de Studio Classic. Para obtener más información, consulte Descripción general de la interfaz de usuario clásica de Amazon SageMaker Studio.
-
Dos GitHub repositorios inicializados con un. README Introducirá estos repositorios en la plantilla del proyecto, lo que iniciará en estos repositorios el código de compilación e implementación del modelo.
Temas
Paso 1: Configurar la conexión GitHub
En este paso, te conectas a tus GitHub repositorios mediante una AWS CodeStar conexión. El SageMaker proyecto usa esta conexión para acceder a tus repositorios de código fuente.
Para configurar la GitHub conexión:
-
Inicie sesión en la CodePipeline consola en https://console.aws.amazon.com/codepipeline/
-
En Configuración en el panel de navegación, elija Conexiones.
-
Seleccione Crear conexión.
-
En Seleccione un proveedor, seleccione GitHub.
-
En Nombre, escriba un nombre.
-
Selecciona Conectar a GitHub.
-
Si la GitHub aplicación AWS Connector no está instalada anteriormente, selecciona Instalar nueva aplicación.
Aparecerá una lista de todas las cuentas y organizaciones GitHub personales a las que tiene acceso.
-
Elija la cuenta en la que desee establecer la conectividad para utilizarla con SageMaker proyectos y GitHub repositorios.
-
Elija Configurar.
-
Si lo desea, puede seleccionar sus repositorios específicos o elegir Todos los repositorios.
-
Seleccione Guardar. Cuando se instala la aplicación, se te redirige a la GitHub página Conectar a y el ID de instalación se rellena automáticamente.
-
Elija Conectar.
-
Agrega una etiqueta con la clave
sagemaker
y el valortrue
a esta AWS CodeStar conexión. -
Copia la conexión ARN para guardarla para más tarde. Se utiliza ARN como parámetro en el paso de creación del proyecto.
Paso 2: Crear el proyecto
En este paso, se crea un SageMaker MLOps proyecto mediante una plantilla SageMaker de proyecto proporcionada para crear, entrenar e implementar modelos.
Para crear el proyecto SageMaker MLOps
-
Inicie sesión en Studio Classic. Para obtener más información, consulte Descripción general SageMaker del dominio de Amazon.
-
En la barra lateral de Studio Classic, selecciona el icono de inicio ()
.
-
Seleccione Implementaciones en el menú y, a continuación, seleccione Proyectos.
-
Elija Crear proyecto.
Aparece la pestaña Crear proyecto.
-
En el caso de las plantillas de SageMaker proyectos, elige MLOpsuna plantilla para la creación, el entrenamiento y el despliegue de modelos con repositorios de Git de terceros.
-
Elija Seleccionar plantilla de proyecto.
-
En ModelBuild CodeRepository Información, proporciona los siguientes parámetros:
-
Para URL, introduce el código URL de compilación del modelo en tu repositorio de Git en https://
git-url
Formato.git. -
En Ramificación, ingrese la ramificación que quiera usar desde su repositorio de Git para las actividades de canalización.
-
Para el nombre completo del repositorio, introduce el nombre del repositorio de Git en el formato de
username/repository name
oorganization/repository name
. -
Para Codestar Connection ARN, introduce ARN la AWS CodeStar conexión que creaste en el paso 1.
-
El conmutador Código de muestra le permite elegir si desea rellenar el repositorio con el código inicial de compilación del modelo. Puede dejarlo activado para esta demostración.
-
-
En ModelDeploy CodeRepository Información, proporcione los siguientes parámetros:
-
Para URL, introduce el código URL de despliegue del modelo en tu repositorio de Git en https://
git-url
Formato.git. -
En Ramificación, ingrese la ramificación que quiera usar desde su repositorio de Git para las actividades de canalización.
-
Para el nombre completo del repositorio, introduce el nombre del repositorio de Git en el formato de
username/repository name
oorganization/repository name
. -
Para Codestar Connection ARN, introduce ARN la AWS CodeStar conexión que creaste en el paso 1.
-
El conmutador Código de muestra le permite elegir si desea rellenar el repositorio con el código inicial de implementación del modelo. Puede dejarlo activado para esta demostración.
-
-
Elija Crear proyecto.
El proyecto aparece en la lista Proyectos con el Estado de Creado.
Paso 3: Realizar un cambio en el código
Ahora realice un cambio en el código de la canalización que crea el modelo y confirme el cambio para iniciar una nueva ejecución de la canalización. La ejecución de la canalización registra una nueva versión del modelo.
Para realizar un cambio de código
-
En el GitHub repositorio de compilación del modelo, navegue hasta la carpeta.
pipelines/abalone
Haga doble clic enpipeline.py
para abrir el archivo de código. -
En el archivo
pipeline.py
, busque la línea que establece el tipo de instancia de entrenamiento.training_instance_type = ParameterString( name="TrainingInstanceType", default_value="ml.m5.xlarge"
Abra el archivo para editarlo, cambie
ml.m5.xlarge
aml.m5.large
y confirme.
Tras confirmar el cambio de código, el MLOps sistema inicia una ejecución de la canalización que crea una nueva versión del modelo. En el siguiente paso, debe aprobar la nueva versión del modelo para implementarla en producción.
Paso 4: Aprobar el modelo
Ahora debe aprobar la nueva versión del modelo que se creó en el paso anterior para iniciar el despliegue de la versión del modelo en un SageMaker punto final.
Para aprobar la versión del modelo
-
En la barra lateral de Studio Classic, selecciona el icono de inicio ()
.
-
Seleccione Implementaciones en el menú y, a continuación, seleccione Proyectos.
-
Busque el nombre del proyecto que creó en el primer paso y haga doble clic en él para abrir la pestaña del proyecto.
-
En la pestaña del proyecto, elija Grupos de modelos y, a continuación, haga doble clic en el nombre del grupo de modelos que aparece.
Aparece la pestaña del grupo de modelos.
-
En la pestaña del grupo de modelos, haga doble clic en Versión 1. Se abre la pestaña Versión 1. Elija Actualizar estado.
-
En el cuadro de diálogo Actualizar el estado de la versión del modelo, en la lista desplegable Estado, seleccione Aprobar y, a continuación, elija Actualizar estado.
La aprobación de la versión del modelo hace que el MLOps sistema despliegue el modelo en fase de prueba. Para ver el punto de conexión, seleccione la pestaña Puntos de conexión en la pestaña del proyecto.
Paso 5: implementar la versión del modelo en producción (opcional)
Ahora puede implementar la versión modelo en el entorno de producción.
nota
Para completar este paso, debe ser administrador de su dominio de Studio Classic. Si no es un administrador, omita este paso.
Para implementar la versión modelo en el entorno de producción
-
Inicie sesión en la CodePipeline consola en https://console.aws.amazon.com/codepipeline/
-
Elija Pipelines y, a continuación, elija la canalización con el nombre sagemaker-
projectname
-projectid
- despliegue del modelo, dondeprojectname
es el nombre de su proyecto yprojectid
es el identificador de tu proyecto. -
En la DeployStagingetapa, selecciona Revisar.
-
En el cuadro de diálogo Revisar, elija Aprobar.
La aprobación de la DeployStagingetapa hace que el MLOps sistema implemente el modelo en producción. Para ver el punto final, seleccione la pestaña Endpoints en la pestaña del proyecto en Studio Classic.
Paso 6: Eliminar recursos
Para dejar de incurrir en cargos, debe eliminar los recursos que se crearon en este tutorial.
nota
Para eliminar la AWS CloudFormation pila y el bucket de Amazon S3, debe ser administrador en Studio Classic. Si no es administrador, pídale a su administrador que complete esos pasos.
-
En la barra lateral de Studio Classic, selecciona el icono de inicio ()
.
-
Seleccione Implementaciones en el menú y, a continuación, seleccione Proyectos.
-
Seleccione el proyecto objetivo del menú desplegable. Si no ve su proyecto, escriba el nombre del proyecto y aplique el filtro para buscarlo.
Seleccione su proyecto para ver sus detalles en el panel principal.
En el menú Acciones, elija Eliminar.
-
Para confirmar su elección, seleccione Eliminar en la ventana Eliminar proyecto.
Esto elimina el producto aprovisionado de Service Catalog que creó el proyecto. Esto incluye los CodeCommit CodePipeline, y CodeBuild los recursos creados para el proyecto.
-
Elimine las AWS CloudFormation pilas que creó el proyecto. Hay dos pilas, una para el ensayo y otra para la producción. Los nombres de las pilas son sagemaker-
projectname
-project-id
-deploy-staging y sagemaker-projectname
-project-id
-deploy-prod, dondeprojectname
es el nombre de su proyecto, yproject-id
es el identificador de tu proyecto.Para obtener información sobre cómo eliminar una AWS CloudFormation pila, consulte Eliminar una pila en la AWS CloudFormation consola en la Guía del AWS CloudFormation usuario.
-
Elimine el bucket de Amazon S3 que creó el proyecto. El nombre del depósito es sagemaker-project-
project-id
, ¿dóndeproject-id
es el identificador de tu proyecto.