Med en Amazon SageMaker-domæne, kan du indsætte brugere med en AWS identitets- og adgangsstyring (IAM) eksekveringsrolle anderledes end domæneudførelsesrollen. I sådanne tilfælde kan den indbyggede domænebruger ikke oprette projekter ved hjælp af skabeloner og Amazon SageMaker JumpStart løsninger. Dette indlæg skitserer en automatiseret tilgang til at aktivere JumpStart for domænebrugere med en tilpasset eksekveringsrolle. Vi leder dig gennem to forskellige use cases for at aktivere JumpStart og hvordan du løser disse cases programmatisk. Den automatiserede løsning kan hjælpe dig med at skalere din proces for at aktivere JumpStart for Domain-brugere med tilpassede roller, hvilket øger produktiviteten for dit datavidenskabsteam og Amazon SageMaker Studio administratorer.
JumpStart er en funktion i Studio, der hjælper dig hurtigt og nemt at komme i gang med maskinlæring (ML). Med flere og flere kunder, der i stigende grad bruger ML og adopterer Amazon SageMaker, JumpStart gør det nemmere for datavidenskab og ML-teams at få adgang til og finjustere mere end 150 populære open source-modeller, såsom naturlig sprogbehandling, objektgenkendelse og billedklassificeringsmodeller.
Løsningsoversigt
JumpStart kræver et SageMaker-domæne med projektskabeloner aktiveret for kontoen og Studio-brugere, som vist på det følgende skærmbillede.
Hvis den er aktiveret, tillader denne indstilling brugere (konfigureret til at bruge rollen Domæneudførelse) at oprette projekter ved hjælp af skabeloner og JumpStart-løsninger. I scenariet, hvor brugerens eksekveringsrolle er anderledes end domæneudførelsesrollen, forbliver JumpStart deaktiveret for denne bruger, selv når det er aktiveret på domænet. Vi behandler dette tilpassede rollescenarie og den automatiserede løsning i de følgende afsnit.
I denne løsning behandler vi problemet i følgende to tilfælde:
- Brug case 1 – Aktivering af JumpStart på en automatiseret måde for eksisterende domænebrugere med brugerdefinerede roller uanset tildelte apps
- Brug case 2 – Levering af et referencescript, som du kan bruge til programmatisk at aktivere JumpStart, mens du onboarder en ny domænebruger med en tilpasset rolle
Domænebruger onboarding
Når du har oprettet et domæne, kan du indsætte brugere for at starte apps (såsom Studio, RStudio eller Canvas). Du skal tildele en standardudførelsesrolle til en domænebruger under oprettelsesprocessen, som vist på det følgende skærmbillede.
Du kan vælge en anden rolle end domæneudførelsesrollen for en bruger. Dette kan dog deaktivere JumpStart for sådanne brugere, selv når det er aktiveret på domænet. Denne adfærd skyldes det faktum, at SageMaker ikke gør nogen antagelse om en tilpasset rolle og dens tilladelsesgrænse. De nødvendige tilladelser og politikker skal tildeles eksplicit for at få adgang til skabeloner og JumpStart-løsninger udgivet af SageMaker i AWS servicekatalog.
Du kan aktivere SageMaker Projects og JumpStart manuelt for hver bruger ved at vælge brugerprofilen på SageMaker Domain-kontrolpanelet. Denne proces kan dog være tidskrævende, hvis en bruger allerede har nogle apps tildelt. Det Redigere knappen nederst til højre er kun aktiveret, når ingen apps er tildelt den bruger (se følgende skærmbillede). Du skal først slette de tildelte apps for at kunne redigere en brugerprofil.
Årsagen til den deaktiverede JumpStart-funktion er tydelig under trin 2 af redigering af en brugerprofil, hvor en meddelelse siger "Hvis der er individuelle brugere, der bruger tilpassede udførelsesroller i din organisation, skal du aktivere dem på brugerprofilsiden."
I de følgende sektioner leder vi dig gennem to automatiserede løsninger, der dækker use cases for både eksisterende og nye domænebrugere.
Forudsætninger
De trin, der er beskrevet som en del af denne løsning, har følgende forudsætninger:
- Du har oprettet et SageMaker-domæne
- SageMaker Domain-godkendelsesmetoden er IAM
- Tilpassede roller, der er tildelt SageMaker Domain-brugere, har
AmazonSageMakerFullAccess
politik vedhæftet
For at JumpStart løsninger for at blive aktiveret for brugere, skal AWS Service Catalog-porteføljen Amazon SageMaker Solutions og ML Ops-produkter importeres til kontoen, og denne portefølje skal være tilknyttet den rolle, der kører SageMaker. Rolletilknytningen er nødvendig, så Studio kan påberåbe sig AWS Service Catalog API'er, der er knyttet til Solutions-porteføljen.
Som en generel bedste praksis anbefaler vi at teste processen i et ikke-produktionsmiljø efterfulgt af valideringstests for at sikre, at alt er konfigureret og fungerer efter dine forventninger, før du foretager ændringer i produktionsmiljøet.
Use case 1: Aktiver JumpStart for alle eksisterende domænebrugere med en tilpasset rolle
Lad os først overveje use casen for eksisterende brugere og aktivere JumpStart for disse brugere på en automatiseret måde.
For at opnå dette har vi lavet en AWS CloudFormation skabelon at du kan køre i samme region, hvor SageMaker-domænet findes.
CloudFormation-stakken indeholdt i den vedhæftede jumpstart_solutions_resources.template.yaml
fil har følgende komponenter:
- AmazonSageMakerServiceCatalogProductsLaunchRole og AmazonSageMakerServiceCatalogProductsUseRole – Opretter disse to IAM-roller, hvis de ikke allerede eksisterer.
- 1PProductUseRolePolicy – Opretter denne politik, der bruges af
AmazonSageMakerServiceCatalogProductsUseRole
, hvis denne rolle ikke allerede eksisterer. - setup_solutions_tests_portfolio - En AWS Lambda funktion, der udfører AWS Service Catalog-porteføljeimport og rolletilknytning ved at kalde Boto3 API'er. Denne funktion kaldes én gang i løbet af CloudFormation-stakoprettelse.
- LambdaIAMRole rolle – Bruges af funktionen
setup_solutions_tests_portfolio
til at kalde AWS Service Catalog og SageMaker API'er. - SetupPortfolioInvoker – Starter funktionen
setup_solutions_tests_portfolio
.
Efter at Lambda-funktionen kører som en del af CloudFormation-implementeringen, eftermonterer den alle eksisterende SageMaker Domain-brugere for at aktivere JumpStart og Projects for dem. For mere information om oprettelse og overvågning af en CloudFormation-stak, se Hvordan fungerer AWS CloudFormation.
Use case 2: Aktiver JumpStart for en enkelt domænebruger med en tilpasset rolle
Mange kunder foretrækker at skalere domænebruger-onboarding-processen ved at automatisere den programmatisk. I dette afsnit giver vi en Python-scriptreference, som du kan bruge som en del af onboarding-processen for at aktivere JumpStart for en ny bruger med en tilpasset rolle. Dette Python-script udfører den nødvendige tilknytning til den givne brugerrolle. Den automatiserede proces, der kalder dette script, skal have tilladelse til at bruge AWS Service Catalog og SageMaker API'er. Se følgende kode:
Du kan enten kalde scriptet uafhængigt eller integrere det som et trin i en automatiseret proces for at oprette en brugerprofil til onboarding til Studio. For mere information om brug af Boto3, se Boto3 reference.
Ryd op
Når alle de tilpassede roller er aktiveret til at bruge JumpStart, kan vi rydde op i de ressourcer, der ikke længere er nødvendige. Du kan slette Lambda-funktionen setup_solutions_tests_portfolio
og IAM-rollen LambdaIAMRole
oprettet af CloudFormation-skabelonen. De to andre IAM-roller, AmazonSageMakerServiceCatalogProductsLaunchRole
, AmazonSageMakerServiceCatalogProductsUseRole
, og den tilknyttede politik 1PProductUseRolePolicy (hvis oprettet) må ikke slettes, fordi de skal eksistere for at få adgang til JumpStart.
Konklusion
I dette indlæg delte vi trinene til at aktivere JumpStart for en tilpasset rolle for eksisterende brugere såvel som nye brugere programmatisk. Som altid skal du sørge for at validere de trin, der er nævnt i denne løsning i et ikke-produktionsmiljø, før du implementerer til produktion.
Prøv det og lad os vide, hvis du har spørgsmål i kommentarfeltet!
Yderligere ressourcer
For mere information, se følgende:
- Amazon SageMaker-ressourcer
- Automatiser en centraliseret udrulning af Amazon SageMaker Studio med AWS Service Catalog
- Konfiguration af Amazon SageMaker Studio til teams og grupper med komplet ressourceisolering
Om forfatterne
Nikhil Jha er Senior Technical Account Manager hos Amazon Web Services. Hans fokusområder omfatter AI/ML og analyse. I sin fritid nyder han at spille badminton med sin datter og udforske naturen.
Evan Kravitz er softwareingeniør hos Amazon Web Services, der arbejder på SageMaker JumpStart. Han nyder at lave mad og løbe i New York City.
- "
- 100
- adgang
- Konto
- adresse
- Alle
- allerede
- Amazon
- Amazon Web Services
- analytics
- API'er
- tilgang
- apps
- tildelt
- Association
- Godkendelse
- Automatiseret
- AWS
- BEDSTE
- grænse
- ringe
- tilfælde
- Årsag
- By
- klassificering
- kode
- kommentarer
- kontrol
- skaber
- Oprettelse af
- Kunder
- data
- datalogi
- implementering
- implementering
- Detektion
- forskellige
- Er ikke
- domæne
- nemt
- muliggør
- ingeniør
- Miljø
- at alt
- udførelse
- forventninger
- Feature
- Fornavn
- Fokus
- efter
- funktion
- Generelt
- gå
- hjælpe
- hjælper
- Hvordan
- How To
- HTTPS
- Identity
- billede
- omfatter
- individuel
- oplysninger
- spørgsmål
- IT
- Sprog
- lancere
- læring
- maskine
- machine learning
- Making
- leder
- manuelt
- ML
- modeller
- overvågning
- Natural
- New York
- New York
- onboarding
- drift
- ordrer
- organisation
- Andet
- udendørs
- politikker
- politik
- Populær
- portefølje
- behandle
- produktion
- produktivitet
- Produkter
- Profil
- projekt
- projekter
- give
- hurtigt
- anbefaler
- påkrævet
- ressource
- Ressourcer
- Kør
- Scale
- Videnskab
- tjeneste
- Tjenester
- indstilling
- delt
- So
- Software
- Software Engineer
- Løsninger
- SOLVE
- stable
- påbegyndt
- Stater
- Studio
- hold
- Teknisk
- Test
- tests
- Gennem
- tid
- tidskrævende
- us
- brug
- brugere
- web
- webservices
- inden for
- arbejder