Amazon SageMaker-Studio ist eine vollständig integrierte Entwicklungsumgebung (IDE) für maschinelles Lernen (ML), die teilweise darauf basiert JupyterLab 3. Studio bietet eine webbasierte Schnittstelle zum interaktiven Ausführen von ML-Entwicklungsaufgaben, die zum Vorbereiten von Daten und zum Erstellen, Trainieren und Bereitstellen von ML-Modellen erforderlich sind. In Studio können Sie Daten laden, ML-Modelle anpassen, zwischen den Schritten wechseln, um Experimente anzupassen, Ergebnisse vergleichen und ML-Modelle für Inferenzen bereitstellen.
Das AWS Cloud-Entwicklungskit (AWS CDK) ist ein Open-Source-Softwareentwicklungs-Framework zum Erstellen AWS CloudFormation Stapeln durch Automatik CloudFormation-Vorlage Generation. Ein Stack ist eine Sammlung von AWS-Ressourcen, die programmgesteuert aktualisiert, verschoben oder gelöscht werden können. AWS-CDK Konstrukte sind die Bausteine von AWS CDK-Anwendungen, die den Entwurf zur Definition von Cloud-Architekturen darstellen.
Das Einrichten von Studio mit AWS CDK ist zu einem optimierten Prozess geworden. Mit dem AWS CDK können Sie native Konstrukte verwenden, um Studio mithilfe von Infrastructure as Code (IaC) zu definieren und bereitzustellen, einschließlich AWS Identity and Access Management and (AWS IAM)-Berechtigungen und gewünschte Cloud-Ressourcenkonfigurationen an einem Ort. Dieser Entwicklungsansatz kann in Kombination mit anderen gängigen Softwareentwicklungs-Best Practices wie automatisierten Codebereitstellungen, Tests usw. verwendet werden CI / CD-Pipelines. Das AWS CDK reduziert die Zeit, die für die Durchführung typischer Infrastrukturbereitstellungsaufgaben erforderlich ist, und verkleinert gleichzeitig die Angriffsfläche für menschliche Fehler durch Automatisierung.
Dieser Beitrag führt Sie durch die Schritte zum Einrichten und Bereitstellen von Studio, um die Entwicklung von ML-Modellen und die Zusammenarbeit mit anderen ML-Ingenieuren und ML-Wissenschaftlern zu standardisieren. Alle Beispiele im Beitrag sind in der Programmiersprache Python geschrieben. Das AWS CDK bietet jedoch integrierte Unterstützung für mehrere andere Programmiersprachen wie JavaScript, Java und C#.
Voraussetzungen:
Für den Einstieg gelten folgende Voraussetzungen:
Klonen Sie das GitHub-Repository
Zuerst, lass uns klonen GitHub-Repository.
Wenn das Repository erfolgreich abgerufen wurde, können Sie das cdk-Verzeichnis überprüfen, das die folgenden Ressourcen enthält:
- cdk – Enthält die wichtigsten CDK-Ressourcen
- app.py. – Wo der AWS CDK-Stack definiert ist
- cdk.json – Enthält Metadaten und Feature-Flags
AWS CDK-Skripts
Die beiden Hauptdateien, die wir uns ansehen wollen, sind in der cdk
Unterverzeichnis sind sagemaker_studio_construct.py
und sagemaker_studio_stack.py
. Sehen wir uns jede Datei genauer an.
Studio-Konstruktdatei
Das Studio-Konstrukt ist in der definiert sagemaker_studio_construct.py
Datei.
Das Studio-Konstrukt übernimmt die virtuelle private Cloud (VPC), aufgelistete Benutzer, AWS-Region und zugrunde liegender Standard-Instance-Typ als Parameter. Dieses AWS CDK-Konstrukt erfüllt die folgenden Funktionen:
- Erstellt die Studio-Domäne (
SageMakerStudioDomain
) - Legt die IAM-Rolle fest
sagemaker_studio_execution_role
mitAmazonSageMakerFullAccess
Berechtigungen zum Erstellen von Ressourcen erforderlich. Berechtigungen müssen weiter eingeschränkt werden, um dem Prinzip der geringsten Rechte für eine verbesserte Sicherheit zu folgen. - Legt die Einstellungen der Jupyter-Server-App fest – übernimmt
JUPYTER_SERVER_APP_IMAGE_NAME
, das das zu verwendende jupyter-server-3-Container-Image definiert. - Legt die Einstellungen der Kernel-Gateway-App fest – übernimmt
KERNEL_GATEWAY_APP_IMAGE_NAME
, das das zu verwendende datascience-2.0-Container-Image definiert. - Erstellt ein Benutzerprofil für jeden aufgelisteten Benutzer
Das folgende Code-Snippet zeigt die relevanten AWS CloudFormation-Ressourcen der Studio-Domäne, die in AWS CDK definiert sind:
Das folgende Code-Snippet zeigt die aus AWS CloudFormation-Ressourcen erstellten Benutzerprofile:
Studio-Stack-Datei
Nachdem das Konstrukt definiert wurde, können Sie es hinzufügen, indem Sie eine Instanz der Klasse erstellen und die erforderlichen Argumente innerhalb des Stapels übergeben. Der Stack erstellt die AWS CloudFormation-Ressourcen als Teil einer kohärenten Bereitstellung. Das bedeutet, dass der CloudFormation-Stack alle vorgenommenen Änderungen rückgängig macht, wenn mindestens eine Cloud-Ressource nicht erstellt werden kann. Das folgende Code-Snippet des Studio-Konstrukts wird innerhalb des Studio-Stapels instanziiert:
Stellen Sie den AWS CDK-Stack bereit
Um Ihren AWS CDK-Stack bereitzustellen, führen Sie die folgenden Befehle aus dem Stammverzeichnis des Projekts in Ihrem Terminalfenster aus:
aws configure
pip3 install -r requirements.txt
cdk bootstrap --app "python3 -m cdk.app"
cdk deploy --app "python3 -m cdk.app"
Überprüfen Sie die Ressourcen, die das AWS CDK in Ihrem AWS-Konto erstellt, und wählen Sie Ja aus, wenn Sie aufgefordert werden, den Stack bereitzustellen. Warten Sie, bis Ihre Stack-Bereitstellung abgeschlossen ist. Dies dauert normalerweise weniger als 5 Minuten; Das Hinzufügen weiterer Ressourcen verlängert jedoch die Bereitstellungszeit. Sie können den Bereitstellungsstatus auch auf der überprüfen AWS CloudFormation-Konsole.
Wenn der Stack erfolgreich bereitgestellt wurde, überprüfen Sie seine Informationen, indem Sie zum Studio Control Panel gehen. Sie sollten das von Ihnen erstellte SageMaker Studio-Benutzerprofil sehen.
Wenn Sie den Stapel erneut bereitstellen, prüft er auf Änderungen und führt nur die erforderlichen Cloud-Ressourcenaktualisierungen durch. Dies kann beispielsweise verwendet werden, um Benutzer hinzuzufügen oder Berechtigungen zu ändern diese Benutzer, ohne alle definierten Cloud-Ressourcen neu erstellen zu müssen.
Aufräumen
Führen Sie die folgenden Schritte aus, um einen Stapel zu löschen:
- Wählen Sie in der AWS CloudFormation-Konsole aus Stacks im Navigationsbereich.
- Öffnen Sie den Stapel, den Sie löschen möchten.
- Wählen Sie im Stack-Detailbereich aus Löschen.
- Auswählen Stapel löschen wenn Sie dazu aufgefordert werden.
AWS CloudFormation löscht die Ressourcen, die bei der Bereitstellung des Stacks erstellt wurden. Dies kann je nach Menge der erstellten Ressourcen einige Zeit in Anspruch nehmen.
Wenn Sie bei diesen Bereinigungsschritten auf Probleme stoßen, müssen Sie dies möglicherweise tun Löschen Sie die Studio-Domain manuell bevor Sie die Schritte in diesem Abschnitt wiederholen.
Zusammenfassung
In diesem Beitrag haben wir gezeigt, wie Sie Cloud-native IaC-Ressourcen von AWS verwenden, um eine einfach wiederverwendbare Vorlage für Studio-Bereitstellungen zu erstellen. SageMaker Studio ist eine vollständig integrierte webbasierte IDE, die eine visuelle Schnittstelle für ML-Entwicklungsaufgaben basierend auf JupyterLab3 bereitstellt. Mit AWS CDK-Stacks konnten wir Konstrukte zum Erstellen von Cloud-Komponenten definieren, die einfach geändert, bearbeitet oder gelöscht werden können, indem wir Änderungen am zugrunde liegenden CloudFormation-Stack vornehmen.
Weitere Informationen zu Amazon Studio finden Sie unter Amazon SageMaker-Studio.
Über die Autoren
Cory Haarston ist Software Engineer im Amazon ML Solutions Lab. Er lernt leidenschaftlich gern neue Technologien und nutzt diese Informationen, um wiederverwendbare Softwarelösungen zu entwickeln. Er ist ein begeisterter Kraftsportler und verbringt seine Freizeit damit, digitale Kunst zu machen.
Marcelo Aberle ist ein ML-Ingenieur in der AWS-KI-Organisation. Er leitet die MLOps-Bemühungen im Amazon ML Solutions Lab und unterstützt Kunden bei der Entwicklung und Implementierung skalierbarer ML-Systeme. Seine Mission ist es, Kunden auf ihrer Enterprise-ML-Reise zu begleiten und ihren ML-Weg zur Produktion zu beschleunigen.
Jasch Schah ist Wissenschaftsmanagerin in der Amazon ML-Lösungslabor. Er und sein Team aus angewandten Wissenschaftlern und Ingenieuren für maschinelles Lernen arbeiten an einer Reihe von Anwendungsfällen für maschinelles Lernen aus den Bereichen Gesundheitswesen, Sport, Automobil und Fertigung.
- SEO-gestützte Content- und PR-Distribution. Holen Sie sich noch heute Verstärkung.
- Platoblockkette. Web3-Metaverse-Intelligenz. Wissen verstärkt. Hier zugreifen.
- Quelle: https://aws.amazon.com/blogs/machine-learning/set-up-amazon-sagemaker-studio-with-jupyter-lab-3-using-the-aws-cdk/
- 1
- 100
- a
- Fähig
- Über uns
- beschleunigen
- Zugang
- Konto
- AI
- Alle
- erlaubt
- Amazon
- Amazon ML-Lösungslabor
- Amazon Sage Maker
- Amazon SageMaker-Studio
- Betrag
- und
- App
- Anwendungen
- angewandt
- Jetzt bewerben
- Ansatz
- glühend
- Bereich
- Argumente
- Kunst
- Automatisiert
- Automation
- Automobilindustrie
- AWS
- AWS CloudFormation
- Zurück
- basierend
- werden
- Bevor
- BESTE
- Best Practices
- zwischen
- Blockiert
- Bootstrap
- bauen
- Building
- eingebaut
- Fälle
- Übernehmen
- Änderungen
- aus der Ferne überprüfen
- Auswählen
- Cloud
- Code
- KOHÄRENT
- Zusammenarbeit
- Sammlung
- Kombination
- gemeinsam
- vergleichen
- abschließen
- Komponenten
- Konsul (Console)
- konstruieren
- Container
- enthält
- Smartgeräte App
- Schalttafel
- erstellen
- erstellt
- schafft
- Erstellen
- Schaffung
- Kunden
- technische Daten
- Standard
- Definition
- Abhängig
- einsetzen
- Einsatz
- Bereitstellen
- Einsatz
- Implementierungen
- Design
- Detail
- Details
- Entwicklung
- digital
- digitale Kunst
- behindert
- Domain
- nach unten
- jeder
- leicht
- Bemühungen
- Begegnung
- Ingenieur
- Entwicklung
- Ingenieure
- Unternehmen
- Arbeitsumfeld
- Fehler
- Äther (ETH)
- Beispiel
- Beispiele
- scheitert
- Merkmal
- Kerl
- Reichen Sie das
- Mappen
- Vorname
- folgen
- Folgende
- Unser Ansatz
- Frei
- für
- voll
- Funktionen
- weiter
- Tor
- Generation
- bekommen
- GitHub
- gehen
- Guide
- Anleitungen
- mit
- Gesundheitswesen
- Unternehmen
- Ultraschall
- Hilfe
- aber
- HTML
- HTTPS
- human
- IAC
- IAM
- Identitätsschutz
- Image
- implementieren
- verbessert
- in
- Information
- Infrastruktur
- installieren
- Instanz
- integriert
- Schnittstelle
- Probleme
- IT
- Javac
- JavaScript
- Reise
- JSON
- Labor
- Sprache
- führenden
- lernen
- Nutzung
- Gelistet
- Belastung
- aussehen
- Maschine
- Maschinelles Lernen
- Main
- Making
- Manager
- Herstellung
- Mittel
- Metadaten
- Minuten
- Ziel
- ML
- MLOps
- Modell
- für
- geändert
- mehr
- schlauer bewegen
- mehrere
- nativen
- Navigation
- notwendig,
- Need
- Neu
- Neue Technologien
- Angebote
- EINEM
- Open-Source-
- Quelloffene Software
- Organisation
- Andere
- Brot
- Tafel
- Parameter
- Teil
- Bestehen
- Weg
- ausführen
- Durchführung
- Berechtigungen
- Ort
- Plato
- Datenintelligenz von Plato
- PlatoData
- Post
- Praktiken
- Danach
- Voraussetzungen
- Prinzip
- privat
- Prozessdefinierung
- Produktion
- Profil
- Profil
- Programmierung
- Projekte
- bietet
- Python
- Angebot
- reduziert
- Region
- relevant
- Quelle
- Darstellen
- falls angefordert
- Voraussetzungen:
- Ressourcen
- Downloads
- Die Ergebnisse
- wiederverwendbar
- Rollen
- Rollen
- Wurzel
- Führen Sie
- sagemaker
- skalierbaren
- Wissenschaft
- Wissenschaftler
- Umfang
- Abschnitt
- Sicherheitdienst
- SELF
- dient
- kompensieren
- Einstellung
- Einstellungen
- sollte
- Konzerte
- Software
- Software-Entwicklung
- Software IngenieurIn
- Softwareentwicklung
- Lösungen
- einige
- Sports
- Stapel
- Stacks
- begonnen
- Status
- Shritte
- gestrafft
- Studio Adressen
- Erfolgreich
- so
- Support
- Oberfläche
- System
- Systeme und Techniken
- Nehmen
- nimmt
- und Aufgaben
- Team
- Technologies
- Vorlage
- Terminal
- Tests
- Das
- ihr
- Durch
- Zeit
- zu
- Training
- typisch
- typisch
- zugrunde liegen,
- aktualisiert
- Updates
- -
- Mitglied
- Nutzer
- Assistent
- warten
- Webbasiert
- während
- werden wir
- .
- ohne
- Arbeiten
- geschrieben
- Ihr
- Zephyrnet