Amazon SageMaker Studio är den första helt integrerade utvecklingsmiljön (IDE) för maskininlärning (ML). Studio tillhandahåller ett enda webbaserat visuellt gränssnitt där du kan utföra alla ML-utvecklingssteg som krävs för att förbereda data, samt bygga, träna och distribuera modeller. Livscykelkonfigurationer är skalskript som utlöses av Studio-livscykelhändelser, som att starta en ny Studio-anteckningsbok. Du kan använda livscykelkonfigurationer för att automatisera anpassningen för din Studio-miljö. Denna anpassning inkluderar installation av anpassade paket, konfigurering av anteckningsboktillägg, förladdning av datauppsättningar och inställning av källkodsförråd. Till exempel, som administratör för en Studio-domän kanske du vill spara kostnader genom att låta bärbara appar stängas av automatiskt efter långa perioder av inaktivitet.
Smakämnen AWS Cloud Development Kit (AWS CDK) är ett ramverk för att definiera molninfrastruktur genom kod och tillhandahålla den genom AWS molnformation staplar. En stack är en samling AWS-resurser som kan uppdateras, flyttas eller raderas programmatiskt. AWS CDK konstrukt är byggstenarna i AWS CDK-applikationer, som representerar ritningen för att definiera molnarkitekturer.
I det här inlägget visar vi hur du använder AWS CDK för att ställa in Studio, använda Studios livscykelkonfigurationer och aktivera dess åtkomst för datavetare och utvecklare i din organisation.
Lösningsöversikt
Modulariteten för livscykelkonfigurationer gör att du kan tillämpa dem på alla användare i en domän eller på specifika användare. På så sätt kan du ställa in livscykelkonfigurationer och referera till dem i Studion kernel gateway eller Jupyter-server snabbt och konsekvent. Kernelgatewayen är ingångspunkten för att interagera med en notebook-instans, medan Jupyter-servern representerar Studio-instansen. Detta gör att du kan tillämpa DevOps bästa praxis och uppfylla säkerhets-, efterlevnads- och konfigurationsstandarder för alla AWS-konton och regioner. För det här inlägget använder vi Python som huvudspråk, men koden kan enkelt ändras till andra AWS CDK-stödda språk. För mer information, se Arbeta med AWS CDK.
Förutsättningar
För att komma igång, se till att du har följande förutsättningar:
Klona GitHub-förvaret
Först, klona d GitHub repository.
När du klona förvaret kan du observera att vi har ett klassiskt AWS CDK-projekt med katalogen studio-lifecycle-config-construct
, som innehåller konstruktionen och resurserna som krävs för att skapa livscykelkonfigurationer.
AWS CDK konstruktioner
Filen vi vill inspektera är aws_sagemaker_lifecycle.py
. Den här filen innehåller SageMakerStudioLifeCycleConfig
konstruktion vi använder för att ställa in och skapa livscykelkonfigurationer.
Smakämnen SageMakerStudioLifeCycleConfig
construct tillhandahåller ramverket för att bygga livscykelkonfigurationer med en anpassad AWS Lambda funktion och skalkod inläst från en fil. Konstruktionen innehåller följande parametrar:
- ID – Namnet på det aktuella projektet.
- studio_livscykel_innehåll - Den base64 kodat innehåll.
- studio_lifecycle_tags – Etiketter du tilldelar för att organisera Amazon-resurser. De matas in som nyckel-värdepar och är valfria för denna konfiguration.
- studio_lifecycle_config_app_type -
JupyterServer
är för den unika servern själv ochKernelGateway
app motsvarar en SageMaker-bildbehållare som körs.
För mer information om Studio notebook-arkitektur, se Dyk djupt in i Amazon SageMaker Studio Notebooks arkitektur.
Följande är ett kodavsnitt av Studios livscykelkonfigurationskonstruktion (aws_sagemaker_lifecycle.py
):
När du har importerat och installerat konstruktionen kan du använda den. Följande kodavsnitt visar hur man skapar en livscykelkonfiguration med konstruktionen i en stack antingen i app.py
eller annan konstruktion:
Distribuera AWS CDK-konstruktioner
För att distribuera din AWS CDK-stack, kör följande kommandon på den plats där du klonade förvaret.
Kommandot kan vara python
istället för python3
beroende på dina sökvägskonfigurationer.
- Skapa en virtuell miljö:
- För macOS/Linux, använd
python3 -m venv .cdk-venv
. - För Windows, använd
python3 -m venv .cdk-venv
.
- För macOS/Linux, använd
- Aktivera den virtuella miljön:
- För macOS/Linux, använd
source .cdk-venvbinactivate
. - För Windows, använd
.cdk-venv/Scripts/activate.bat
. - För PowerShell, använd
.cdk-venv/Scripts/activate.ps1
.
- För macOS/Linux, använd
- Installera nödvändiga beroenden:
pip install -r requirements.txt
pip install -r requirements-dev.txt
- Vid det här laget kan du valfritt syntetisera CloudFormation-mallen för denna kod:
- Distribuera lösningen med följande kommandon:
aws configure
cdk bootstrap
cdk deploy
När stacken har distribuerats framgångsrikt bör du kunna se stacken på CloudFormation-konsolen.
Du kommer också att kunna se livscykelkonfigurationen på SageMaker-konsolen.
Välj livscykelkonfiguration för att se skalkoden som körs samt eventuella taggar du tilldelat.
Bifoga Studios livscykelkonfiguration
Det finns flera sätt att koppla en livscykelkonfiguration. I det här avsnittet presenterar vi två metoder: att använda AWS Management Console, och programmatiskt med hjälp av den tillhandahållna infrastrukturen.
Fäst livscykelkonfigurationen med hjälp av konsolen
Utför följande steg för att använda konsolen:
- Välj på SageMaker-konsolen domäner i navigeringsfönstret.
- Välj det domännamn du använder och den aktuella användarprofilen och välj sedan Redigera.
- Välj den livscykelkonfiguration du vill använda och välj Bifoga.
Härifrån kan du också ställa in det som standard.
Bifoga livscykelkonfigurationen programmatiskt
Du kan också hämta ARN för Studio-livscykelkonfigurationen som skapats av konstruktionens och koppla den till Studio-konstruktionen programmatiskt. Följande kod visar att livscykelkonfigurationen ARN skickas till en Studio-konstruktion:
Städa upp
Slutför stegen i det här avsnittet för att rensa upp dina resurser.
Ta bort Studios livscykelkonfiguration
För att ta bort din livscykelkonfiguration, utför följande steg:
- Välj på SageMaker-konsolen Studiolivscykelkonfigurationer i navigeringsfönstret.
- Välj livscykelkonfiguration och välj sedan Radera.
Ta bort AWS CDK-stacken
När du är klar med resurserna du skapade kan du förstöra din AWS CDK-stack genom att köra följande kommando på platsen där du klonade förvaret:
När du blir ombedd att bekräfta raderingen av stacken, gå in yes
.
Du kan också ta bort stacken på AWS CloudFormation-konsolen med följande steg:
- Välj på AWS CloudFormation-konsolen Stacks i navigeringsfönstret.
- Välj den stack du vill ta bort.
- Välj i stackinformationsfönstret Radera.
- Välja Radera stack när du uppmanas
Om du stöter på några fel kan du behöva ta bort vissa resurser manuellt beroende på din kontokonfiguration.
Slutsats
I det här inlägget diskuterade vi hur Studio fungerar som en IDE för ML-arbetsbelastningar. Studio erbjuder livscykelkonfigurationsstöd, vilket gör att du kan ställa in anpassade skalskript för att utföra automatiserade uppgifter eller ställa in utvecklingsmiljöer vid lansering. Vi använde AWS CDK-konstruktioner för att bygga infrastrukturen för den anpassade resurs- och livscykelkonfigurationen. Konstruktioner syntetiseras till CloudFormation-stackar som sedan distribueras för att skapa det anpassade resurs- och livscykelskriptet som används i Studio och anteckningsbokens kärna.
För mer information, besök Amazon SageMaker Studio.
Om författarna
Cory Hairston är en mjukvaruingenjör med Amazon ML Solutions Lab. Han arbetar för närvarande med att tillhandahålla återanvändbara mjukvarulösningar.
Alex Chirayath är senior maskininlärningsingenjör vid Amazon ML Solutions Lab. Han leder team av datavetare och ingenjörer för att bygga AI-applikationer för att möta affärsbehov.
Gouri Pandeshwar är ingenjörschef på Amazon ML Solutions Lab. Han och hans team av ingenjörer arbetar med att bygga återanvändbara lösningar och ramverk som hjälper till att påskynda införandet av AWS AI/ML-tjänster för kunders affärsanvändningsfall.
- SEO-drivet innehåll och PR-distribution. Bli förstärkt idag.
- EVM Finans. Unified Interface for Decentralized Finance. Tillgång här.
- Quantum Media Group. IR/PR förstärkt. Tillgång här.
- PlatoAiStream. Web3 Data Intelligence. Kunskap förstärkt. Tillgång här.
- Källa: https://aws.amazon.com/blogs/machine-learning/use-the-aws-cdk-to-deploy-amazon-sagemaker-studio-lifecycle-configurations/
- :är
- :var
- $UPP
- 100
- 12
- 14
- 7
- a
- Able
- accelerera
- tillgång
- Konto
- konton
- tvärs
- adress
- Antagande
- Efter
- AI
- AI / ML
- Alla
- tillåter
- också
- amason
- Amazon ML Solutions Lab
- Amazon SageMaker
- Amazon SageMaker Studio
- Amazon Web Services
- an
- och
- Annan
- vilken som helst
- app
- tillämpningar
- Ansök
- appar
- arkitektur
- ÄR
- AS
- delad
- At
- bifoga
- automatisera
- Automatiserad
- automatiskt
- AWS
- AWS molnformation
- BE
- Där vi får lov att vara utan att konstant prestera,
- BÄST
- bästa praxis
- Block
- SLUTRESULTAT
- Byggnad
- företag
- men
- by
- KAN
- fall
- ändrats
- Välja
- klassiska
- cloud
- molninfrastruktur
- koda
- samling
- COM
- fullborda
- Efterlevnad
- konfiguration
- Bekräfta
- Konsol
- konstruera
- Behållare
- innehåller
- innehåll
- motsvarar
- Kostar
- skapa
- skapas
- Aktuella
- För närvarande
- beställnings
- anpassning
- datum
- datauppsättningar
- djup
- Standard
- definierande
- beroende
- distribuera
- utplacerade
- förstöra
- detaljer
- utvecklare
- Utveckling
- diskuteras
- domän
- Domain Name
- gjort
- ner
- lätt
- antingen
- möjliggöra
- möjliggör
- ingenjör
- Ingenjörer
- ange
- inträde
- Miljö
- miljöer
- fel
- händelser
- exempel
- förlängningar
- Fil
- Förnamn
- efter
- För
- Ramverk
- ramar
- från
- fullständigt
- fungera
- nätbryggan
- skaffa sig
- GitHub
- Har
- har
- he
- hjälpa
- här.
- hans
- Hur ser din drömresa ut
- How To
- html
- http
- HTTPS
- ID
- bild
- importera
- in
- innefattar
- informationen
- Infrastruktur
- installera
- installera
- exempel
- istället
- integrerade
- interagera
- Gränssnitt
- in
- IT
- DESS
- sig
- jpg
- lab
- Etiketter
- språk
- Språk
- lansera
- Leads
- inlärning
- livscykel
- läge
- Lång
- Maskinen
- maskininlärning
- Huvudsida
- göra
- ledning
- chef
- manuellt
- Maj..
- Möt
- metoder
- ML
- modeller
- mer
- rörd
- multipel
- namn
- Navigering
- behov
- Nya
- anteckningsbok
- observera
- of
- Erbjudanden
- on
- or
- organisation
- Övriga
- paket
- par
- panelen
- parametrar
- Godkänd
- bana
- Utföra
- perioder
- plato
- Platon Data Intelligence
- PlatonData
- Punkt
- Inlägg
- Power
- praxis
- Förbered
- förutsättningar
- presentera
- Profil
- projektet
- förutsatt
- ger
- tillhandahålla
- Python
- snabbt
- Läsa
- regioner
- Repository
- representerar
- representerar
- Obligatorisk
- Krav
- resurs
- Resurser
- återanvändbar
- Körning
- rinnande
- Säkerhet
- sagemaker
- vetenskapsmän
- omfattning
- skript
- §
- SJÄLV
- senior
- serverar
- Tjänster
- in
- inställning
- Shell
- skall
- show
- Visar
- stänga
- enda
- Mjukvara
- Programvara ingenjör
- lösning
- Lösningar
- några
- Källa
- källkod
- specifik
- stapel
- Stacks
- standarder
- igång
- Starta
- Steg
- studio
- Framgångsrikt
- sådana
- stödja
- Som stöds
- system
- uppgifter
- grupp
- lag
- mall
- den där
- Smakämnen
- Dem
- sedan
- de
- detta
- Genom
- till
- Tåg
- triggas
- två
- unika
- uppdaterad
- användning
- Begagnade
- Användare
- användare
- med hjälp av
- utsikt
- Virtuell
- Besök
- vill
- Sätt..
- sätt
- we
- webb
- webbservice
- Webb-baserad
- VÄL
- när
- medan
- som
- kommer
- fönster
- med
- arbetssätt
- fungerar
- Om er
- Din
- zephyrnet