Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utiliser des modèles SageMaker de projet fournis par l'IA
Important
Au 28 octobre 2024, les AWS CodeCommit modèles ont été supprimés. Pour les nouveaux projets, sélectionnez l'un des modèles de projet disponibles qui utilisent des référentiels Git tiers.
Amazon SageMaker AI fournit des modèles de projet qui créent l'infrastructure dont vous avez besoin pour créer une MLOps solution d'intégration continue et de déploiement continu (CI/CD) de modèles de machine learning. Utilisez ces modèles pour traiter des données, extraire des fonctionnalités, entraîner et tester des modèles, enregistrer les modèles dans le registre des SageMaker modèles et déployer les modèles à des fins d'inférence. Vous pouvez personnaliser le code d'amorçage et les fichiers de configuration en fonction de vos besoins.
Note
Des rôles supplémentaires sont nécessaires pour utiliser les modèles de projet. Pour obtenir la liste complète des rôles requis et les instructions permettant de les créer, consultez Octroi des autorisations de SageMaker studio requises pour utiliser les projets. Si vous n'avez pas les nouveaux rôles, vous recevrez le message d'erreur « n'CodePipeline est pas autorisé à exécuter AssumeRole sur le rôle arn:aws:iam : :xxx : » role/service-role/AmazonSageMakerServiceCatalogProductsCodePipelineRole lorsque vous essayez de créer un nouveau projet et que vous ne pouvez pas continuer.
SageMaker Les modèles de projets d'IA vous offrent le choix suivant de référentiels de code, d'outils d'automatisation des flux de travail et d'étapes de pipeline :
-
Référentiel de code : référentiels Git tiers tels que GitHub Bitbucket
-
Automatisation du flux de travail CI/CD : AWS CodePipeline ou Jenkins
-
Étapes de pipelines : création et entraînement de modèles, déploiement de modèles, ou les deux
La discussion suivante donne un aperçu de chaque modèle que vous pouvez choisir lors de la création de votre projet d' SageMaker IA. Vous pouvez également consulter les modèles disponibles dans Studio (ou Studio Classic) en suivant la procédure pas à pas Créer le projet du projet.
Pour step-by-step obtenir des instructions sur la création d'un véritable projet, vous pouvez suivre l'une des procédures détaillées du projet :
-
Si vous souhaitez utiliser le modèle MLOps modèles pour la création de modèles, la formation et le déploiement avec Git tiers à l'aide de CodePipeline, consultez Parcourez un MLOps projet d' SageMaker IA à l'aide de Git Repos tiers.
-
Si vous souhaitez utiliser le modèleMLOps modèles pour la création de modèles, la formation et le déploiement avec des référentiels Git tiers à l'aide de Jenkins, consultez Create Amazon SageMaker Projects using third source control et Jenkins
.
Rubriques
-
Référentiel de code : Git tiers
Note
Établissez la AWS CodeStar connexion entre votre AWS compte et votre GitHub utilisateur ou votre organisation. Ajoutez une balise avec la clé
sagemaker
et la valeurtrue
à cette AWS CodeStar connexion. -
Automatisation du flux de travail CI/CD : AWS CodePipeline
Création de modèles et formation
Ce modèle fournit les ressources suivantes :
-
Associations avec un dépôt Git spécifié par le client. Le référentiel contient un exemple de code qui crée un pipeline Amazon SageMaker AI en code Python et montre comment créer et mettre à jour le pipeline SageMaker AI. Ce référentiel contient également un exemple de bloc-notes Python que vous pouvez ouvrir et exécuter dans Studio (ou Studio Classic).
-
Un AWS CodePipeline pipeline comportant des étapes de source et de génération. L'étape source pointe vers le référentiel Git tiers. L'étape de construction extrait le code de ce référentiel, crée et met à jour le pipeline d' SageMaker IA, lance une exécution de pipeline et attend que l'exécution du pipeline soit terminée.
-
Un AWS CodeBuild projet visant à remplir les référentiels Git avec les informations du code source. Cela nécessite une AWS CodeStar connexion entre votre Compte AWS compte sur l'hôte du dépôt Git.
-
Un compartiment Amazon S3 destiné à stocker les artefacts, y compris CodePipeline les CodeBuild artefacts, et tous les artefacts générés par le pipeline d' SageMaker IA s'exécute.
Déploiement de modèle
Ce modèle fournit les ressources suivantes :
-
Associations avec un dépôt Git spécifié par le client. Le référentiel contient un exemple de code qui déploie des modèles sur des terminaux dans des environnements de préparation et de production.
-
Un AWS CodePipeline pipeline qui comprend la source, la construction et deploy-to-production les étapes. deploy-to-staging L'étape source pointe vers le référentiel Git tiers et l'étape de compilation extrait le code de ce référentiel et génère des AWS CloudFormation piles à déployer. Les deploy-to-production étapes deploy-to-staging et déploient les AWS CloudFormation piles dans leurs environnements respectifs. Il existe une étape d'approbation manuelle entre les étapes de préparation et de production, de sorte qu'un MLOps ingénieur doit approuver le modèle avant son déploiement en production.
-
Un AWS CodeBuild projet visant à remplir les référentiels Git avec les informations du code source. Cela nécessite une AWS CodeStar connexion entre votre Compte AWS compte sur l'hôte du dépôt Git.
-
Un compartiment Amazon S3 destiné à stocker les artefacts, y compris CodePipeline les CodeBuild artefacts, et tous les artefacts générés par le pipeline d' SageMaker IA s'exécute.
Création de modèles, formation et déploiement
Ce modèle fournit les ressources suivantes :
-
Associations avec un ou plusieurs référentiels Git spécifiés par le client.
-
Un AWS CodePipeline pipeline qui comprend la source, la construction et deploy-to-production les étapes. deploy-to-staging L'étape source pointe vers le référentiel Git tiers et l'étape de compilation extrait le code de ce référentiel et génère des CloudFormation piles à déployer. Les deploy-to-production étapes deploy-to-staging et déploient les CloudFormation piles dans leurs environnements respectifs. Il existe une étape d'approbation manuelle entre les étapes de préparation et de production, de sorte qu'un MLOps ingénieur doit approuver le modèle avant son déploiement en production.
-
Un AWS CodeBuild projet visant à remplir les référentiels Git avec les informations du code source. Cela nécessite une AWS CodeStar connexion entre votre AWS compte et votre compte sur l'hôte du dépôt Git.
-
Un compartiment Amazon S3 destiné à stocker les artefacts, y compris CodePipeline les CodeBuild artefacts, et tous les artefacts générés par le pipeline d' SageMaker IA s'exécute.
Comme mentionné précédemment, consultez Démonstration du projet utilisant des dépôts Git tiers (Français non garanti) pour obtenir une démonstration qui utilise ce modèle pour créer un vrai projet.
-
Référentiel de code : Git tiers
Note
Établissez la AWS CodeStar connexion entre votre AWS compte et votre GitHub utilisateur ou votre organisation. Ajoutez une balise avec la clé
sagemaker
et la valeurtrue
à cette AWS CodeStar connexion. -
Automatisation du flux de travail CI/CD : AWS CodePipeline
Les modèles suivants incluent un SageMaker modèle Amazon Model Monitor supplémentaire qui fournit les types de surveillance suivants :
-
Qualité des données – Surveillance de la dérive de la qualité des données.
-
Qualité du modèle – Surveillance des écarts dans les métriques de qualité du modèle, comme la précision.
-
Dérive du biais pour les modèles en production — Surveillez le biais des prédictions d'un modèle.
Création de modèles, formation, déploiement et Amazon SageMaker Model Monitor
Ce modèle est une extension du MLOps modèle pour la création de modèles, la formation et le déploiement à l'aide CodePipeline de référentiels Git. Il inclut à la fois les composants de création de modèles, de formation et de déploiement du modèle, ainsi qu'un SageMaker modèle Amazon Model Monitor supplémentaire qui fournit les types de surveillance suivants :
Surveiller un modèle déployé
Vous pouvez utiliser ce modèle pour une MLOps solution visant à déployer un ou plusieurs moniteurs de la qualité des données, de la qualité du modèle, du biais du modèle et de l'explicabilité du modèle Amazon SageMaker AI afin de surveiller un modèle déployé sur un point de terminaison d'inférence basé sur l' SageMaker IA. Ce modèle fournit les ressources suivantes :
-
Associations avec un ou plusieurs référentiels Git spécifiés par le client. Le référentiel contient un exemple de code Python qui extrait les lignes de base utilisées par les moniteurs à partir de l'Amazon SageMaker Model Registry et met à jour les paramètres du modèle pour les environnements de préparation et de production. Il contient également un AWS CloudFormation modèle pour créer les Amazon SageMaker Model Monitors.
-
Un AWS CodePipeline pipeline comportant des étapes de source, de création et de déploiement. L'étape source pointe vers le CodePipeline référentiel. L'étape de création récupère le code de ce référentiel, obtient la références du registre Model Registry et met à jour les paramètres du modèle pour les environnements intermédiaires et de production. Les étapes de déploiement déploient les contrôleurs configurés dans les environnements intermédiaires et de production. L'étape d'approbation manuelle, au sein de l'
DeployStaging
étape, vous oblige à vérifier que le point de terminaison de l' SageMaker IA de production se trouveInService
bien avant d'approuver et de passer à l'DeployProd
étape. -
Un AWS CodeBuild projet visant à remplir les référentiels Git avec les informations du code source. Cela nécessite une AWS CodeStar connexion entre votre Compte AWS compte sur l'hôte du dépôt Git.
-
Le modèle utilise le même compartiment Amazon S3 créé par le MLOps modèle pour la création de modèles, la formation et le déploiement afin de stocker les sorties des moniteurs.
-
Deux règles relatives aux EventBridge événements Amazon déclenchent l'Amazon SageMaker Model Monitor AWS CodePipeline chaque fois que le point de terminaison de l' SageMaker IA intermédiaire est mis à jour.
-
Référentiel de code : Git tiers
Note
Établissez la AWS CodeStar connexion entre votre AWS compte et votre GitHub utilisateur ou votre organisation. Ajoutez une balise avec la clé
sagemaker
et la valeurtrue
à cette AWS CodeStar connexion. -
Automatisation des flux CI/CD : Jenkins
Création de modèles, formation et déploiement
Ce modèle fournit les ressources suivantes :
-
Associations avec un ou plusieurs référentiels Git spécifiés par le client.
-
Code de départ pour générer des pipelines Jenkins contenant la source, la version et deploy-to-production les étapes. deploy-to-staging L'étape source pointe vers le référentiel Git spécifié par le client. L'étape de construction extrait le code de ce référentiel et génère deux CloudFormation piles. Les étapes de déploiement déploient les CloudFormation piles dans leurs environnements respectifs. Il existe une étape d'approbation entre l'étape intermédiaire et l'étape de production.
-
Un AWS CodeBuild projet visant à remplir les référentiels Git avec les informations du code source. Cela nécessite une AWS CodeStar connexion entre votre AWS compte et votre compte sur l'hôte du dépôt Git.
-
Un compartiment Amazon S3 pour stocker les artefacts du projet d' SageMaker IA et du pipeline d' SageMaker IA.
Le modèle crée l'association entre votre projet et les référentiels de contrôle de source, mais vous devez effectuer des étapes manuelles supplémentaires pour établir la communication entre votre AWS compte et Jenkins. Pour les étapes détaillées, consultez Créer des SageMaker projets Amazon à l'aide d'un contrôle de source tiers et de Jenkins
Les instructions vous aident à créer l'architecture illustrée dans le schéma suivant, avec GitHub comme référentiel de contrôle de source dans cet exemple. Comme indiqué, vous attachez votre référentiel Git au projet pour enregistrer et gérer les versions du code. Jenkins initie le pipeline de création de modèle lorsqu'il détecte des modifications du code de création de modèle dans le référentiel Git. Vous connectez également le projet à Jenkins pour orchestrer les étapes de déploiement de vos modèles, qui démarrent lorsque vous approuvez le modèle enregistré dans le registre des modèles, ou lorsque Jenkins détecte des modifications du code de déploiement du modèle.

En résumé, les étapes vous guident à travers les tâches suivantes :
-
Établissez le lien entre vos GitHub comptes AWS et.
-
Créer le compte Jenkins et importer les plugins nécessaires.
-
Créer la politique IAM de Jenkins pour les utilisateurs et les autorisations.
-
Définissez les AWS informations d'identification de l'utilisateur Jenkins IAM sur votre serveur Jenkins.
-
Créer un jeton API pour la communication avec votre serveur Jenkins.
-
Utilisez un CloudFormation modèle pour définir une EventBridge règle afin de surveiller les modèles récemment approuvés dans le registre des modèles.
-
Créez le projet d' SageMaker IA, qui permet à vos GitHub référentiels d'intégrer du code de création et de déploiement de modèles.
-
Créer votre pipeline de création de modèle Jenkins avec le code initial de création de modèle.
-
Créer votre pipeline de déploiement de modèle Jenkins avec le code initial de déploiement de modèle.
Ce modèle est une extension de MLOps modèles pour la création de modèles, la formation et le déploiement avec Git tiers à l'aide de CodePipeline. Il inclut à la fois les composants de création du modèle, d'entraînement et de déploiement de ce modèle, ainsi que les options suivantes :
-
Inclure le traitement d'un pipeline de création d'image
-
Inclure l'entraînement d'une pipeline de création d'image
-
Inclure l'inférence d'une pipeline de création d'image
Pour chacun des composants sélectionnés lors de la création du projet, les éléments suivants sont créés à l'aide du modèle :
-
Un référentiel Amazon ECR
-
Un CodeCommit référentiel contenant un Dockerfile que vous pouvez personnaliser
-
A CodePipeline qui est initié par des modifications apportées au CodePipeline référentiel
-
Un CodeBuild projet qui crée une image Docker et l'enregistre dans le référentiel Amazon ECR
-
EventBridge Règle qui initie CodePipeline le programme
Lorsque le CodePipeline est lancé, il crée un nouveau conteneur Docker et l'enregistre dans un référentiel Amazon ECR. Lorsqu'un nouveau conteneur est enregistré dans le référentiel Amazon ECR, un nouveau conteneur ImageVersion
est ajouté à l'image SageMaker AI. Cela déclenche le pipeline de création de modèle, qui à son tour initie le pipeline de déploiement.
L'image nouvellement créée est utilisée dans les parties de création de modèle, d'entraînement et de déploiement du flux de travail, le cas échéant.
La politique gérée attachée au rôle AmazonSageMakerServiceCatalogProductsUseRole
a été mise à jour le 27 juillet 2021 en vue d'une utilisation avec les modèles Git tiers. Les utilisateurs qui intègrent Amazon SageMaker Studio (ou Studio Classic) après cette date et qui activent les modèles de projet utilisent la nouvelle politique. Les utilisateurs qui ont effectué l'onboarding avant cette date doivent mettre à jour la politique pour utiliser ces modèles. Utilisez l'une des options suivantes pour mettre à jour la politique :
-
Supprimer le rôle et activer les paramètres de Studio (ou Studio Classic)
-
Dans la console IAM, supprimez
AmazonSageMakerServiceCatalogProductsUseRole
. -
Dans le panneau de configuration de Studio (ou Studio Classic), choisissez Modifier les paramètres.
-
Basculez les deux paramètres, puis choisissez Submit (Envoyer).
-
-
Dans la console IAM, ajoutez les autorisations suivantes à
AmazonSageMakerServiceCatalogProductsUseRole
:{ "Effect": "Allow", "Action": [ "codestar-connections:UseConnection" ], "Resource": "arn:aws:codestar-connections:*:*:connection/*", "Condition": { "StringEqualsIgnoreCase": { "aws:ResourceTag/sagemaker": "true" } } }, { "Effect": "Allow", "Action": [ "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::sagemaker-*" ] }