Présentation

La solution d'orchestrateur de charges de travail MLOps vous permet de simplifier et d'appliquer les bonnes pratiques d'architecture pour la production de modèles de machine learning (ML). Cette solution est un cadre extensible qui fournit une interface standard de gestion des pipelines ML pour les services AWS ML et tiers. Le modèle de la solution permet aux clients de :
- Entraîner des modèles
- Charger les modèles entraînés (également appelés « apportez votre propre modèle » [BYOM])
- Configurer l'orchestration du pipeline
- Surveiller les opérations du pipeline
Cette solution augmente l'agilité et l'efficacité de votre équipe en lui permettant de répéter des processus réussis à grande échelle.
Avantages

Utilisez le tableau de bord du modèle Amazon SageMaker pour afficher les ressources Amazon SageMaker créées par votre solution (telles que les modèles, les points de terminaison, les cartes de modèle et les tâches de transformation par lots).
Détails techniques

Afin de s'adapter aux différents cas d'utilisation et besoins professionnels, la solution fournit deux modèles AWS CloudFormation :
- Utilisez le modèle monocompte pour déployer tous les pipelines de la solution dans le même compte AWS. Cette option est idéale pour les charges de travail d'expérimentation, de développement et/ou de production à petite échelle.
- Utilisez le modèle multicompte pour allouer plusieurs environnements (par exemple pour le développement, le prédéploiement et la production) sur différents comptes AWS. Cette approche offre de nombreux avantages : amélioration de la gouvernance, renforcement de la sécurité et du contrôle du déploiement du pipeline ML, expérimentation sûre, innovation plus rapidement et sécurité et disponibilité des données et des charges de travail de production garanties à des fins de continuité des activités.
-
Option 1 – Déploiement monocompte
-
Option 2 : Déploiement sur plusieurs comptes
-
Option 1 – Déploiement monocompte
-
Étape 1
L'orchestrateur (propriétaire de la solution ou ingénieur DevOps) lance la solution dans le compte AWS et sélectionne les options souhaitées (par exemple en utilisant le registre de modèles Amazon SageMaker ou en fournissant un compartiment Amazon S3 existant).Étape 2
L'orchestrateur charge les ressources requises pour le pipeline cible (par exemple l'artefact du modèle, les données d'entraînement ou le fichier zip de l'algorithme personnalisé) dans le compartiment des ressources Amazon S3. Si vous utilisez le registre de modèles Amazon SageMaker, l'orchestrateur (ou un pipeline automatisé) doit enregistrer le modèle à l'aide du registre de modèles.Étape 3a
La solution alloue une instance AWS CodePipeline monocompte en envoyant un appel d'API à Amazon API Gateway ou en effectuant un commit du fichier mlops-config.json dans le référentiel Git.
Étape 3b
En fonction du type de pipeline, la fonction AWS Lambda de l'orchestrateur regroupe en package le modèle AWS CloudFormation cible et ses paramètres/configurations à l'aide du corps de l'appel d'API ou du fichier mlops-config.json. Elle utilise ensuite ce package comme étape source pour l'instance AWS CodePipeline.Étape 4
L'étape DeployPipeline prend le package constitué du modèle CloudFormation et de ses paramètres/configurations et déploie le pipeline cible dans le même compte.Étape 5
Une fois le pipeline cible alloué, les utilisateurs peuvent avoir accès à ses fonctionnalités. Une notification Amazon Simple Notification Service (Amazon SNS) est envoyée à l'e-mail fourni dans les paramètres de lancement de la solution. -
Option 2 : Déploiement sur plusieurs comptes
-
Étape 1
L'orchestrateur (le propriétaire de la solution ou l'ingénieur DevOps avec un accès de type administrateur au compte de l'orchestrateur) fournit les informations AWS Organizations (par exemple les identifiants d'unités d'organisation de développement, de prédéploiement et de production ainsi que les numéros de comptes). Il spécifie également les options souhaitées (par exemple en utilisant le registre de modèles Amazon SageMaker ou en fournissant un compartiment S3 existant) et lance ensuite la solution dans son compte AWS.Étape 2
L'orchestrateur charge les ressources requises pour le pipeline cible (par exemple l'artefact du modèle, les données d'entraînement ou le fichier zip de l'algorithme personnalisé) dans le compartiment des ressources Amazon S3 au sein du compte AWS de l'orchestrateur. Si vous utilisez le registre de modèles Amazon SageMaker, l'orchestrateur (ou un pipeline automatisé) doit enregistrer le modèle à l'aide du registre de modèles.Étape 3a
Une instance AWS CodePipeline multicompte est allouée en envoyant un appel d'API à Amazon API Gateway ou en effectuant un commit du fichier mlops-config.json dans le référentiel Git.
Étape 3b
En fonction du type de pipeline, la fonction AWS Lambda de l'orchestrateur regroupe en packages le modèle AWS CloudFormation cible et ses paramètres/configurations pour chaque étape à l'aide du corps de l'appel d'API ou du fichier mlops-config.json. Elle utilise ensuite ce package comme étape source pour l'instance AWS CodePipeline.Étape 4
L'étape DeployDev prend le package constitué du modèle CloudFormation et de ses paramètres/configurations et déploie le pipeline cible dans le compte de développement.Étape 5
Une fois le pipeline cible alloué dans le compte de développement, le développeur peur effectuer des itérations sur ce pipeline.Étape 6
Une fois le développement terminé, l'orchestrateur (ou un autre compte autorisé) approuve manuellement l'action DeployStaging afin de passer à l'étape DeployStaging.Étape 7
L'étape DeployStaging déploie le pipeline cible dans le compte de prédéploiement à l'aide de la configuration de prédéploiement.Étape 8
Les testeurs effectuent différents tests sur le pipeline ainsi déployé.Étape 9
Une fois que le pipeline a passé avec succès les tests, l'orchestrateur peut approuver l'action DeployProd.Étape 10
L'étape DeployProd déploie le pipeline cible (avec les configurations de production) dans le compte de production.Étape 11
Pour finir, le pipeline cible réside en direct dans l'environnement de production. Une notification Amazon Simple Notification Service (Amazon SNS) est envoyée à l'e-mail fourni dans les paramètres de lancement de la solution.
Rubriques connexes

En collaboration avec les équipes AWS Partner Solutions Architect et la Bibliothèque de solutions AWS, Cognizant a créé sa solution MLOps « Orchestrateur de cycle de vie de modèle » à partir de la solution MLOps « Orchestrateur de charge de travail ».