Übersicht
Machine Learning Operations (MLOps) Workload Orchestrator optimiert die Bereitstellung von ML-Modellen und setzt bewährte Methoden für Skalierbarkeit, Zuverlässigkeit und Effizienz durch. Diese AWS-Lösung ist ein erweiterbares Framework mit einer Standardschnittstelle zur Verwaltung von ML-Pipelines über AWS-ML- und Drittanbieter-Services.
Diese Lösung enthält eine AWS-CloudFormation-Vorlage: Diese Vorlage ermöglicht das Modelltraining, das Hochladen von vorab trainierten Modellen (auch bekannt als Bring Your Own Model oder BYOM), die Konfiguration der Pipeline-Orchestrierung und die Überwachung des Pipeline-Betriebs. Durch die Implementierung dieser Lösung kann Ihr Team seine Agilität und Effizienz steigern, erfolgreiche Prozesse in großem Maßstab zu wiederholen.
Vorteile
Initiieren Sie eine vorkonfigurierte Pipeline durch einen API-Aufruf oder einen Amazon-S3-Bucket.
Automatisieren Sie die Modellüberwachung mit Amazon SageMaker BYOM und stellen Sie einen Serverless-Inferenzendpunkt mit Drift-Erkennung bereit.
Verwenden Sie das Amazon SageMaker Model Dashboard, um die von Ihnen erstellten Amazon-SageMaker-Ressourcen, einschließlich Modelle, Endpunkte, Modellkarten und Batch-Transformationsaufträge, anzuzeigen, zu durchsuchen und zu erkunden.
Technische Details
Sie können diese Architektur mit dem Implementierungsleitfaden und der dazugehörigen AWS-CloudFormation-Vorlage automatisch bereitstellen. Um mehrere Anwendungsfälle und Geschäftsanforderungen zu unterstützen, bietet diese Lösung zwei AWS-CloudFormation-Vorlagen:
- Nutzen Sie die Einzelkonten-Vorlage, um alle Lösungs-Pipelines im selben AWS-Konto einzurichten. Diese Option eignet sich für das Experimentieren, das Entwickeln und/oder kleinere Produktions-Workloads.
- Nutzen Sie die Vorlage für Multikonten, um mehrere Umgebungen (z. B. Entwicklung, Staging und Produktion) über mehrere AWS-Konten bereitzustellen. Dies verbessert die Governance, die Sicherheit und die Kontrolle der Bereitstellung der ML-Pipeline, bietet sicheres Experimentieren, schnellere Innovation und hält Produktionsdaten und Workloads sicher und zugänglich, um die Geschäftskontinuität zu gewährleisten.
-
Option 1 – Einzelkonto-Bereitstellung
-
Option 2 – Bereitstellen eines Multikontos
-
Option 1 – Einzelkonto-Bereitstellung
-
Schritt 1
Der Orchestrator, bei dem es sich um einen DevOps-Techniker oder einen anderen Benutzertyp handeln kann, startet diese Lösung in seinem AWS-Konto und wählt die bevorzugten Optionen aus. Sie können beispielsweise die Amazon SageMaker Model Registry oder einen vorhandenen Bucket von Amazon Simple Storage Service (Amazon S3) verwenden.
Schritt 2
Der Orchestrator lädt die benötigten Komponenten, beispielsweise das Modellartefakt, Trainingsdaten und/oder eine spezifische Algorithmus-ZIP-Datei, in den Komponenten-Bucket von Amazon S3 hoch. Wenn Sie die SageMaker Model Registry verwenden, muss der Orchestrator (oder eine automatisierte Pipeline) das Modell in der Modellregistrierung registrieren.
Schritt 3a
Eine Einzelkonto-Instance von AWS CodePipeline wird entweder durch das Senden eines API-Aufrufs zu Amazon API Gateway oder durch das Hochladen der mlops-config.json-Datei in den Bucket von AmazonS3 bereitgestellt.
Schritt 3b
Je nach Pipeline-Typ verpackt die AWS Lambda Orchestrator-Funktion die CloudFormation-Zielvorlage und ihre Parameter und Konfigurationen mithilfe des Hauptteils des API-Aufrufs oder der Datei mlops-config.json. Der Orchestrator verwendet dann diese gebündelte Vorlage und die Konfigurationen als Quellstufe für die CodePipeline-Instance.
Schritt 4
Die DeployPipeline-Phase nimmt die gebündelte CloudFormation-Vorlage und ihre Parameter oder Konfigurationen und richtet die Ziel-Pipeline im selben Konto ein.
Schritt 5
Nachdem die Ziel-Pipeline bereitgestellt ist, können die Benutzer auf ihre Funktionen zugreifen. Eine Amazon Simple Notification Service (Amazon SNS)-Benachrichtigung wird an die in den Startparametern der Lösung angegebene E-Mail-Adresse gesendet. -
Option 2 – Bereitstellen eines Multikontos
-
Schritt 1
Der Orchestrator, der ein DevOps-Techniker oder ein anderer Benutzer mit Admin-Zugang zum Orchestrator-Konto sein könnte, liefert die AWS-Organizations-Information, beispielsweise Entwicklung, Staging und Produktion von organisatorischen Einheiten-IDs und Kontonummern.
Er gibt auch die gewünschten Optionen an, z. B. Verwendung der SageMaker Model Registry oder Angabe eines vorhandenen Amazon S3 Buckets und starten dann die Lösung in ihrem AWS-Konto.
Schritt 2
Der Orchestrator lädt die von der Ziel-Pipeline angeforderten Komponenten, beispielsweise das Modellartefakt, Trainingsdaten und/oder eine spezifische Algorithmus-ZIP-Datei, in den Amazon-S3-Komponenten-Bucket im AWS-Konto des Orchestrators hoch. Wenn SageMaker Model Registry verwendet wird, muss der Orchestrator (oder eine automatisierte Pipeline) das Modell bei der Modell-Registry registrieren.
Schritt 3a
Eine Multikonto-Instance von CodePipeline wird entweder durch das Senden eines API-Aufrufs zu API Gateway oder durch das Hochladen der mlops-config.json-Datei in den Bucket von Amazon S3 bereitgestellt.Schritt 3b
Abhängig vom Typ der Pipeline bündelt die Lambda-Funktion des Orchestrators die
CloudFormation-Zielvorlage und ihre Parameter und Konfigurationen unter Verwendung des Hauptteils des API-Aufrufs oder der Datei mlops-config.json. Der Orchestrator verwendet dann diese gebündelte Vorlage und die Konfigurationen als Quellstufe für die CodePipeline-Instance.
Schritt 4
Die DeployDev-Phase nimmt die gebündelte CloudFormation-Vorlage und ihre Parameter/Konfigurationen und richtet die Ziel-Pipeline im Entwicklungskonto ein.
Schritt 5
Nachdem die Ziel-Pipeline im Entwicklungskonto bereitgestellt ist, kann der Entwickler auf der Pipeline iterieren.Schritt 6
Nach der Fertigstellung der Entwicklung akzeptiert der Orchestrator (oder ein anderes autorisiertes Konto) die DeployStaging-Aktion manuell, um zur nächsten Phase, DeployStaging, zu gelangen.
Schritt 7
In der DeployStaging-Phase wird die Ziel-Pipeline mithilfe der Staging-Konfiguration im Staging-Konto installiert.Schritt 8
Prüfer führen verschiedene Tests an der Ziel-Pipeline aus.Schritt 9
Wenn die Pipeline die Qualitätstests bestanden hat, kann der Orchestrator zur DeployProd-Aktion übergehen.Schritt 10
In der DeployProd-Phase wird die Ziel-Pipeline (mit Produktionskofigurationen) in das Produktionskonto integriert.Schritt 11
Die Ziel-Pipeline ist Live in der Produktion. Eine Amazon-SNS-Benachrichtigung wird an die in den Startparametern der Lösung angegebene E-Mail gesendet.
Ähnliche Inhalte
In Zusammenarbeit mit den Teams von AWS Partner Solutions Architect und AWS Solutions Library hat Cognizant seine Lösung MLOps Model Lifecycle Orchestrator auf der Lösung MLOps Workload Orchestrator aufgebaut.
- Datum der Veröffentlichung