Amazon SageMaker Studio är en helt integrerad utvecklingsmiljö (IDE) för maskininlärning (ML) delvis baserad på JupyterLab 3. Studio tillhandahåller ett webbaserat gränssnitt för att interaktivt utföra ML-utvecklingsuppgifter som krävs för att förbereda data och bygga, träna och distribuera ML-modeller. I Studio kan du ladda data, justera ML-modeller, flytta mellan stegen för att justera experiment, jämföra resultat och distribuera ML-modeller för slutledning.
Smakämnen AWS Cloud Development Kit (AWS CDK) är ett ramverk för utveckling av programvara med öppen källkod att skapa AWS molnformation staplar genom automatisk CloudFormation mall generation. 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.
Att konfigurera Studio med AWS CDK har blivit en strömlinjeformad process. AWS CDK låter dig använda inbyggda konstruktioner för att definiera och distribuera Studio med hjälp av infrastruktur som kod (IaC), inklusive AWS identitets- och åtkomsthantering (AWS IAM) behörigheter och önskade molnresurskonfigurationer, allt på ett ställe. Denna utvecklingsmetod kan användas i kombination med andra vanliga bästa praxis för mjukvaruteknik, såsom automatiserade koddistributioner, tester och CI / CD-rörledningar. AWS CDK minskar tiden som krävs för att utföra typiska infrastrukturuppdragsuppgifter samtidigt som ytan för mänskliga fel krymper genom automatisering.
Det här inlägget guidar dig genom stegen för att komma igång med att konfigurera och distribuera Studio för att standardisera ML-modellutveckling och samarbete med andra ML-ingenjörer och ML-forskare. Alla exempel i inlägget är skrivna i programmeringsspråket Python. AWS CDK erbjuder dock inbyggt stöd för flera andra programmeringsspråk som JavaScript, Java och C#.
Förutsättningar
För att komma igång gäller följande förutsättningar:
Klona GitHub-förvaret
Först, låt oss klona d GitHub repository.
När förvaret har hämtats kan du inspektera cdk-katalogen som innehåller följande resurser:
- cdk – Innehåller de viktigaste cdk-resurserna
- app.py – Där AWS CDK-stacken är definierad
- cdk.json – Innehåller metadata och funktionsflaggor
AWS CDK-skript
De två huvudfilerna vi vill titta på i cdk
underkatalog är sagemaker_studio_construct.py
och sagemaker_studio_stack.py
. Låt oss titta på varje fil mer i detalj.
Studio konstruktionsfil
Studiokonstruktionen definieras i sagemaker_studio_construct.py
fil.
Studiokonstruktionen tar in virtuellt privat moln (VPC), listade användare, AWS-region och underliggande standardinstanstyp som parametrar. Denna AWS CDK-konstruktion har följande funktioner:
- Skapar Studio-domänen (
SageMakerStudioDomain
) - Ställer in IAM-rollen
sagemaker_studio_execution_role
medAmazonSageMakerFullAccess
behörigheter som krävs för att skapa resurser. Behörigheter måste begränsas ytterligare för att följa minsta privilegieprincipen för förbättrad säkerhet. - Ställer in inställningar för Jupyter-serverappen – tar in
JUPYTER_SERVER_APP_IMAGE_NAME
, definierar jupyter-server-3-behållarebilden som ska användas. - Ställer in inställningar för kernel gateway-app – tar in
KERNEL_GATEWAY_APP_IMAGE_NAME
, definierar den datascience-2.0-behållarebild som ska användas. - Skapar en användarprofil för varje listad användare
Följande kodavsnitt visar relevanta Studio-domän AWS CloudFormation-resurser definierade i AWS CDK:
Följande kodavsnitt visar användarprofilerna som skapats från AWS CloudFormation-resurser:
Studio stack-fil
Efter att konstruktionen har definierats kan du lägga till den genom att skapa en instans av klassen och skicka de nödvändiga argumenten inuti stacken. Stacken skapar AWS CloudFormation-resurserna som en del av en sammanhängande distribution. Detta innebär att om minst en molnresurs inte kan skapas, rullar CloudFormation-stacken tillbaka alla utförda ändringar. Följande kodavsnitt av Studio-konstruktionen instansieras inuti Studio-stacken:
Distribuera AWS CDK-stacken
För att distribuera din AWS CDK-stack, kör följande kommandon från projektets rotkatalog i ditt terminalfönster:
aws configure
pip3 install -r requirements.txt
cdk bootstrap --app "python3 -m cdk.app"
cdk deploy --app "python3 -m cdk.app"
Granska resurserna som AWS CDK skapar i ditt AWS-konto och välj ja när du uppmanas att distribuera stacken. Vänta tills din stackinstallation är klar. Detta tar vanligtvis mindre än 5 minuter; Men att lägga till fler resurser kommer att förlänga driftsättningstiden. Du kan också kontrollera distributionsstatusen på AWS CloudFormation-konsol.
När stacken har distribuerats, kontrollera dess information genom att gå till Studio Kontrollpanel. Du bör se SageMaker Studio-användarprofilen som du skapade.
Om du distribuerar om stacken kommer den att leta efter ändringar och endast utföra de molnresursuppdateringar som är nödvändiga. Detta kan till exempel användas för att lägga till användare eller ändra behörigheter för dessa användare utan att behöva återskapa alla definierade molnresurser.
Städa
Utför följande steg för att ta bort en stack:
- Välj på AWS CloudFormation-konsolen Stacks i navigeringsfönstret.
- Öppna stapeln du vill ta bort.
- Välj i stackinformationsfönstret Radera.
- Välja Radera stack när du uppmanas
AWS CloudFormation kommer att ta bort resurserna som skapades när stacken distribuerades. Detta kan ta lite tid beroende på mängden resurser som skapas.
Om du stöter på några problem när du går igenom dessa rensningssteg kan du behöva göra det manuellt radera Studio-domänen först innan du upprepar stegen i det här avsnittet.
Slutsats
I det här inlägget visade vi hur man använder AWS molnbaserade IaC-resurser för att bygga en lätt återanvändbar mall för Studio-distributioner. SageMaker Studio är en helt integrerad webbaserad IDE som ger ett visuellt gränssnitt för ML-utvecklingsuppgifter baserat på JupyterLab3. Med AWS CDK-stackar kunde vi definiera konstruktioner för att bygga ut molnkomponenter som enkelt kan modifieras, redigeras eller raderas genom att göra ändringar i den underliggande CloudFormation-stacken.
För mer information om Amazon Studio, se Amazon SageMaker Studio.
Om författarna
Cory Hairston är mjukvaruingenjör vid Amazon ML Solutions Lab. Han är angelägen om att lära sig ny teknik och utnyttja den informationen för att bygga återanvändbara mjukvarulösningar. Han är en ivrig kraftlyftare och ägnar sin fritid åt att göra digital konst.
Marcelo Aberle är en ML-ingenjör i AWS AI-organisationen. Han leder MLOps insatser på Amazon ML Solutions Lab, och hjälper kunder att designa och implementera skalbara ML-system. Hans uppdrag är att vägleda kunder på deras ML-resa för företag och påskynda deras ML-väg till produktion.
Yash Shah är Science Manager i Amazon ML Solutions Lab. Han och hans team av tillämpade forskare och maskininlärningsingenjörer arbetar med en rad användningsfall för maskininlärning från hälsovård, sport, fordon och tillverkning.
- SEO-drivet innehåll och PR-distribution. Bli förstärkt idag.
- Platoblockchain. Web3 Metaverse Intelligence. Kunskap förstärkt. Tillgång här.
- Källa: https://aws.amazon.com/blogs/machine-learning/set-up-amazon-sagemaker-studio-with-jupyter-lab-3-using-the-aws-cdk/
- 1
- 100
- a
- Able
- Om oss
- accelerera
- tillgång
- Konto
- AI
- Alla
- tillåter
- amason
- Amazon ML Solutions Lab
- Amazon SageMaker
- Amazon SageMaker Studio
- mängd
- och
- app
- tillämpningar
- tillämpas
- Ansök
- tillvägagångssätt
- brinnande
- OMRÅDE
- argument
- Konst
- Automatiserad
- Automation
- fordonsindustrin
- AWS
- AWS molnformation
- tillbaka
- baserat
- blir
- innan
- BÄST
- bästa praxis
- mellan
- Block
- Bootstrap
- SLUTRESULTAT
- Byggnad
- inbyggd
- fall
- byta
- Förändringar
- ta
- Välja
- cloud
- koda
- SAMMANHÄNGANDE
- samverkan
- samling
- kombination
- Gemensam
- jämföra
- fullborda
- komponenter
- Konsol
- konstruera
- Behållare
- innehåller
- kontroll
- kontrollpanel
- skapa
- skapas
- skapar
- Skapa
- skapande
- Kunder
- datum
- Standard
- definierande
- beroende
- distribuera
- utplacerade
- utplacera
- utplacering
- distributioner
- Designa
- detalj
- detaljer
- Utveckling
- digital
- digital konst
- inaktiverad
- domän
- ner
- varje
- lätt
- ansträngningar
- råka ut för
- ingenjör
- Teknik
- Ingenjörer
- Företag
- Miljö
- fel
- Eter (ETH)
- exempel
- exempel
- misslyckas
- Leverans
- Kompis
- Fil
- Filer
- Förnamn
- följer
- efter
- Ramverk
- Fri
- från
- fullständigt
- funktioner
- ytterligare
- nätbryggan
- generering
- skaffa sig
- GitHub
- kommer
- styra
- Guider
- har
- hälso-och sjukvård
- hjälpa
- Hur ser din drömresa ut
- How To
- Men
- html
- HTTPS
- humant
- IAC
- IAM
- Identitet
- bild
- genomföra
- förbättras
- in
- informationen
- Infrastruktur
- installera
- exempel
- integrerade
- Gränssnitt
- problem
- IT
- java
- JavaScript
- resa
- json
- lab
- språk
- ledande
- inlärning
- hävstångs
- Noterade
- läsa in
- se
- Maskinen
- maskininlärning
- Huvudsida
- Framställning
- chef
- Produktion
- betyder
- metadata
- minuter
- Mission
- ML
- MLOps
- modell
- modeller
- modifierad
- mer
- flytta
- multipel
- nativ
- Navigering
- nödvändigt för
- Behöver
- Nya
- Ny teknik
- Erbjudanden
- ONE
- öppen källkod
- Programvara med öppen källkod
- organisation
- Övriga
- panelen
- panel
- parametrar
- del
- Förbi
- bana
- utföra
- utför
- behörigheter
- Plats
- plato
- Platon Data Intelligence
- PlatonData
- Inlägg
- praxis
- Förbered
- förutsättningar
- Principen
- privat
- process
- Produktion
- Profil
- Profiler
- Programmering
- projekt
- ger
- Python
- område
- minskar
- region
- relevanta
- Repository
- representerar
- Obligatorisk
- Krav
- resurs
- Resurser
- Resultat
- återanvändbar
- Roll
- rullar
- rot
- Körning
- sagemaker
- skalbar
- Vetenskap
- vetenskapsmän
- omfattning
- §
- säkerhet
- SJÄLV
- serverar
- in
- inställning
- inställningar
- skall
- Visar
- Mjukvara
- mjukvaruutveckling
- Programvara ingenjör
- mjukvaruutveckling
- Lösningar
- några
- Sporter
- stapel
- Stacks
- igång
- status
- Steg
- strömlinjeformad
- studio
- Framgångsrikt
- sådana
- stödja
- yta
- system
- System
- Ta
- tar
- uppgifter
- grupp
- Tekniken
- mall
- terminal
- tester
- Smakämnen
- deras
- Genom
- tid
- till
- Tåg
- typisk
- typiskt
- underliggande
- uppdaterad
- Uppdateringar
- användning
- Användare
- användare
- Virtuell
- vänta
- Webb-baserad
- medan
- kommer
- inom
- utan
- Arbete
- skriven
- Din
- zephyrnet