Å bygge ut en plattform for maskinlæringsoperasjoner (MLOps) i det raskt utviklende landskapet av kunstig intelligens (AI) og maskinlæring (ML) for organisasjoner er avgjørende for sømløst å bygge bro over gapet mellom datavitenskapelig eksperimentering og distribusjon, samtidig som kravene til modellytelse oppfylles. sikkerhet og overholdelse.
For å oppfylle regulatoriske krav og samsvarskrav, er nøkkelkravene ved utforming av en slik plattform:
- Adressedatadrift
- Overvåk modellens ytelse
- Tilrettelegge for automatisk modellomskolering
- Gi en prosess for modellgodkjenning
- Oppbevar modellene i et sikkert miljø
I dette innlegget viser vi hvordan du lager et MLOps-rammeverk for å møte disse behovene mens du bruker en kombinasjon av AWS-tjenester og tredjepartsverktøysett. Løsningen innebærer et multimiljøoppsett med automatisert modellomskolering, batch-inferens og overvåking med Amazon SageMaker modellmonitor, modellversjon med SageMaker modellregister, og en CI/CD-pipeline for å lette promotering av ML-kode og pipelines på tvers av miljøer ved å bruke Amazon SageMaker, Amazon EventBridge, Amazon enkel varslingstjeneste (Amazon S3), HashiCorp Terraform, GitHubog Jenkins CI/CD. Vi bygger en modell for å forutsi alvorlighetsgraden (godartet eller ondartet) av en mammografisk masselesjon trent med XGBoost-algoritme ved å bruke det offentlig tilgjengelige UCI Mammografi Mass datasettet og distribuer det ved hjelp av MLOps-rammeverket. De fullstendige instruksjonene med kode er tilgjengelige i GitHub repository.
Løsningsoversikt
Følgende arkitekturdiagram viser en oversikt over MLOps-rammeverket med følgende nøkkelkomponenter:
- Strategi for flere kontoer – To forskjellige miljøer (dev og prod) er satt opp i to forskjellige AWS-kontoer i henhold til AWS Well-Architected beste praksis, og en tredje konto er satt opp i det sentrale modellregisteret:
- Utviklermiljø – Hvor en Amazon SageMaker Studio-domene er satt opp for å tillate modellutvikling, modelltrening og testing av ML-rørledninger (tog og inferens), før en modell er klar til å bli promotert til høyere miljøer.
- Prod miljø – Hvor ML-rørledningene fra dev blir forfremmet til som et første trinn, og planlagt og overvåket over tid.
- Sentralt modellregister - Amazon SageMaker modellregister er satt opp i en egen AWS-konto for å spore modellversjoner generert på tvers av dev- og prod-miljøene.
- CI/CD og kildekontroll – Utrullingen av ML-pipelines på tvers av miljøer håndteres gjennom CI/CD satt opp med Jenkins, sammen med versjonskontroll håndtert gjennom GitHub. Kodeendringer slått sammen til det tilsvarende miljøet git branch utløser en CI/CD-arbeidsflyt for å gjøre passende endringer i det gitte målmiljøet.
- Parti spådommer med modellovervåking – Inferensrørledningen bygget med Amazon SageMaker-rørledninger kjører på en planlagt basis for å generere spådommer sammen med modellovervåking ved å bruke SageMaker Model Monitor for å oppdage datadrift.
- Automatisert omskoleringsmekanisme – Treningspipelinen bygget med SageMaker Pipelines utløses hver gang en datadrift oppdages i inferensrørledningen. Etter at den er trent, blir modellen registrert i det sentrale modellregisteret for å godkjennes av en modellgodkjenner. Når den er godkjent, brukes den oppdaterte modellversjonen til å generere spådommer gjennom inferensrørledningen.
- Infrastruktur som kode – Infrastrukturen som kode (IaC), opprettet ved hjelp av HashiCorp Terraform, støtter planleggingen av inferensrørledningen med EventBridge, utløsning av togrørledningen basert på en EventBridge-regel og sende varsler ved hjelp av Amazon enkel varslingstjeneste (Amazon SNS) emner.
MLOps arbeidsflyt inkluderer følgende trinn:
- Få tilgang til SageMaker Studio-domenet i utviklingskontoen, klon GitHub-depotet, gå gjennom prosessen med modellutvikling ved å bruke eksempelmodellen som er gitt, og generer tog- og inferensrørledningene.
- Kjør togrørledningen i utviklingskontoen, som genererer modellartefakter for den trente modellversjonen og registrerer modellen i SageMaker Model Registry i den sentrale modellregisterkontoen.
- Godkjenn modellen i SageMaker Model Registry i den sentrale modellregisterkontoen.
- Skyv koden (tog- og inferensrørledninger, og Terraform IaC-koden for å lage EventBridge-planen, EventBridge-regelen og SNS-emnet) inn i en funksjonsgren av GitHub-depotet. Opprett en pull-forespørsel for å slå sammen koden til hovedgrenen til GitHub-depotet.
- Utløs Jenkins CI/CD-pipeline, som er satt opp med GitHub-depotet. CI/CD-rørledningen distribuerer koden til prod-kontoen for å opprette tog- og inferensrørledningene sammen med Terraform-kode for å klargjøre EventBridge-planen, EventBridge-regelen og SNS-emnet.
- Inferensrørledningen er planlagt å kjøre på daglig basis, mens togrørledningen er satt opp til å kjøre når datadrift oppdages fra inferensrørledningen.
- Varsler sendes gjennom SNS-emnet når det er en feil med enten toget eller inferensrørledningen.
Forutsetninger
For denne løsningen bør du ha følgende forutsetninger:
- Tre AWS-kontoer (dev-, prod- og sentrale modellregisterkontoer)
- Et SageMaker Studio-domene satt opp i hver av de tre AWS-kontoene (se Ombord på Amazon SageMaker Studio eller se videoen Ombord raskt til Amazon SageMaker Studio for installasjonsinstruksjoner)
- Jenkins (vi bruker Jenkins 2.401.1) med administrative rettigheter installert på AWS
- Terraform versjon 1.5.5 eller nyere installert på Jenkins server
For dette innlegget jobber vi i us-east-1
Region for å distribuere løsningen.
Tilsett KMS-nøkler i utvikler- og produksjonskontoer
Vårt første skritt er å skape AWS nøkkelstyringstjeneste (AWS KMS)-nøkler i dev- og prod-kontoene.
Opprett en KMS-nøkkel i dev-kontoen og gi tilgang til prod-kontoen
Fullfør følgende trinn for å opprette en KMS-nøkkel i utviklerkontoen:
- På AWS KMS-konsollen velger du Kundeadministrerte nøkler i navigasjonsruten.
- Velg Opprett nøkkel.
- Til Nøkkeltype, plukke ut symmetrisk.
- Til Nøkkelbruk, plukke ut Krypter og dekrypter.
- Velg neste.
- Skriv inn produksjonskontonummeret for å gi produksjonskontoen tilgang til KMS-nøkkelen som er klargjort i utviklerkontoen. Dette er et nødvendig trinn fordi første gang modellen trenes i utviklerkontoen, krypteres modellartefaktene med KMS-nøkkelen før de skrives til S3-bøtten i den sentrale modellregisterkontoen. Produksjonskontoen trenger tilgang til KMS-nøkkelen for å dekryptere modellartefaktene og kjøre inferensrørledningen.
- Velg neste og fullfør opprettelsen av nøkkelen din.
Etter at nøkkelen er klargjort, skal den være synlig på AWS KMS-konsollen.
Opprett en KMS-nøkkel i prod-kontoen
Gå gjennom de samme trinnene i forrige seksjon for å opprette en kundeadministrert KMS-nøkkel i prod-kontoen. Du kan hoppe over trinnet for å dele KMS-nøkkelen med en annen konto.
Sett opp en modellartefakter S3-bøtte i den sentrale modellregisterkontoen
Lag en S3-bøtte etter eget valg med strengen sagemaker
i navnekonvensjonen som en del av bøttens navn i den sentrale modellregisterkontoen, og oppdater bøttepolicyen på S3-bøtten for å gi tillatelser fra både dev- og prod-kontoene til å lese og skrive modellartefakter inn i S3-bøtten.
Følgende kode er bøttepolicyen som skal oppdateres på S3-bøtten:
Sett opp IAM-roller i AWS-kontoene dine
Neste trinn er å sette opp AWS identitets- og tilgangsadministrasjon (IAM) roller i AWS-kontoene dine med tillatelser for AWS Lambda, SageMaker og Jenkins.
Lambda-utførelsesrolle
Sett opp Lambda-utførelsesroller i dev- og prod-kontoene, som vil bli brukt av Lambda-funksjonen som kjøres som en del av SageMaker Pipelines Lambda trinn. Dette trinnet vil kjøre fra slutningsrørledningen for å hente den siste godkjente modellen, ved hjelp av hvilken slutninger genereres. Opprett IAM-roller i utvikler- og produksjonskontoene med navnekonvensjonen arn:aws:iam::<account-id>:role/lambda-sagemaker-role
og legg ved følgende IAM-policyer:
- Retningslinjer 1 – Opprett en innebygd policy kalt
cross-account-model-registry-access
, som gir tilgang til modellpakken satt opp i modellregisteret i den sentrale kontoen: - Retningslinjer 2 - Feste AmazonSageMakerFullAccess, som er en AWS administrert policy som gir full tilgang til SageMaker. Det gir også utvalgt tilgang til relaterte tjenester, som f.eks Automatisk skalering av AWS-applikasjoner, Amazon S3, Amazon Elastic Container Registry (Amazon ECR), og Amazon CloudWatch-logger.
- Retningslinjer 3 - Feste AWSLambda_FullAccess, som er en AWS-administrert policy som gir full tilgang til Lambda, Lambda-konsollfunksjoner og andre relaterte AWS-tjenester.
- Retningslinjer 4 – Bruk følgende IAM-tillitspolicy for IAM-rollen:
SageMaker utførelsesrolle
SageMaker Studio-domenene som er satt opp i dev- og prod-kontoene skal hver ha en utførelsesrolle tilknyttet, som kan finnes på Domeneinnstillinger på siden med domenedetaljer, som vist i følgende skjermbilde. Denne rollen brukes til å kjøre opplæringsjobber, behandle jobber og mer innenfor SageMaker Studio-domenet.
Legg til følgende retningslinjer i SageMaker-utførelsesrollen i begge kontoene:
- Retningslinjer 1 – Opprett en innebygd policy kalt
cross-account-model-artifacts-s3-bucket-access
, som gir tilgang til S3-bøtten i den sentrale modellregisterkontoen, som lagrer modellartefaktene: - Retningslinjer 2 – Opprett en innebygd policy kalt
cross-account-model-registry-access
, som gir tilgang til modellpakken i modellregisteret i den sentrale modellregisterkontoen: - Retningslinjer 3 – Opprett en innebygd policy kalt
kms-key-access-policy
, som gir tilgang til KMS-nøkkelen opprettet i forrige trinn. Oppgi konto-ID-en der policyen opprettes og KMS-nøkkel-ID-en som er opprettet i den kontoen. - Retningslinjer 4 - Feste AmazonSageMakerFullAccess, som er en AWS administrert policy som gir full tilgang til SageMaker og velge tilgang til relaterte tjenester.
- Retningslinjer 5 - Feste AWSLambda_FullAccess, som er en AWS-administrert policy som gir full tilgang til Lambda, Lambda-konsollfunksjoner og andre relaterte AWS-tjenester.
- Retningslinjer 6 - Feste CloudWatchEventsFullAccess, som er en AWS-administrert policy som gir full tilgang til CloudWatch Events.
- Retningslinjer 7 – Legg til følgende IAM-tillitspolicy for SageMaker-utførelses-IAM-rollen:
- Policy 8 (spesifikt for SageMaker-utførelsesrollen i prod-kontoen) – Opprett en innebygd policy kalt
cross-account-kms-key-access-policy
, som gir tilgang til KMS-nøkkelen som er opprettet i utviklerkontoen. Dette er nødvendig for at slutningspipelinen skal kunne lese modellartefakter som er lagret i den sentrale modellregisterkontoen der modellartefaktene er kryptert med KMS-nøkkelen fra utviklerkontoen når den første versjonen av modellen opprettes fra utviklerkontoen.
Jenkins rolle på tvers av kontoer
Sett opp en IAM-rolle kalt cross-account-jenkins-role
i prod-kontoen, som Jenkins vil anta for å distribuere ML-rørledninger og tilsvarende infrastruktur i prod-kontoen.
Legg til følgende administrerte IAM-policyer til rollen:
CloudWatchFullAccess
AmazonS3FullAccess
AmazonSNSFullAccess
AmazonSageMakerFullAccess
AmazonEventBridgeFullAccess
AWSLambda_FullAccess
Oppdater tillitsforholdet til rollen for å gi tillatelser til AWS-kontoen som er vert for Jenkins-serveren:
Oppdater tillatelser på IAM-rollen knyttet til Jenkins-serveren
Forutsatt at Jenkins er satt opp på AWS, oppdater IAM-rollen knyttet til Jenkins for å legge til følgende retningslinjer, som vil gi Jenkins tilgang til å distribuere ressursene til prod-kontoen:
- Retningslinjer 1 – Opprett følgende innebygde policy kalt
assume-production-role-policy
: - Retningslinjer 2 – Fest
CloudWatchFullAccess
administrert IAM-policy.
Sett opp modellpakkegruppen i den sentrale modellregisterkontoen
Fra SageMaker Studio-domenet i den sentrale modellregisterkontoen oppretter du en modellpakkegruppe kalt mammo-severity-model-package
ved å bruke følgende kodebit (som du kan kjøre med en Jupyter-notisbok):
Sett opp tilgang til modellpakken for IAM-roller i dev- og prod-kontoene
Gi tilgang til SageMaker-utførelsesrollene som er opprettet i dev- og prod-kontoene, slik at du kan registrere modellversjoner i modellpakken mammo-severity-model-package
i det sentrale modellregisteret fra begge kontoene. Fra SageMaker Studio-domenet i den sentrale modellregisterkontoen, kjør følgende kode i en Jupyter-notisbok:
Sett opp Jenkins
I denne delen konfigurerer vi Jenkins til å lage ML-rørledningene og den tilsvarende Terraform-infrastrukturen i prod-kontoen gjennom Jenkins CI/CD-rørledning.
- På CloudWatch-konsollen oppretter du en logggruppe med navnet
jenkins-log
innenfor prod-kontoen som Jenkins vil sende logger til fra CI/CD-rørledningen. Logggruppen skal opprettes i samme region som der Jenkins-serveren er satt opp. - Installer følgende plugins på Jenkins-serveren din:
- Sett opp AWS-legitimasjon i Jenkins ved å bruke IAM-rollen på tvers av kontoer (
cross-account-jenkins-role
) klargjort i prod-kontoen. - Til Systemkonfigurasjon, velg AWS.
- Oppgi legitimasjonen og CloudWatch-logggruppen du opprettet tidligere.
- Sett opp GitHub-legitimasjon i Jenkins.
- Opprett et nytt prosjekt i Jenkins.
- Skriv inn et prosjektnavn og velg Rørledning.
- På general kategorien, velg GitHub-prosjekt og gå inn i gaffelen GitHub repository URL.
- Plukke ut Dette prosjektet er parameterisert.
- På Legg til parameter meny, velg Strengeparameter.
- Til Navn, Tast inn
prodAccount
. - Til Standardverdi, skriv inn produktkonto-ID.
- Under Avanserte prosjektalternativerFor Definisjon, plukke ut Pipeline script fra SCM.
- Til SCM, velg gå.
- Til Repository URL, gå inn i gaffelen GitHub repository URL.
- Til Credentials, skriv inn GitHub-legitimasjonen som er lagret i Jenkins.
- Enter
main
i Grener å bygge seksjon, basert på hvilken CI/CD-rørledningen vil bli utløst. - Til Skriptbane, Tast inn
Jenkinsfile
. - Velg Spar.
Jenkins-rørledningen skal være opprettet og synlig på dashbordet ditt.
Bestem S3-bøtter, samle inn og klargjøre data
Fullfør følgende trinn for å konfigurere S3-bøttene og dataene dine:
- Lag en S3-bøtte etter eget valg med strengen
sagemaker
i navnekonvensjonen som en del av bøttens navn i både dev- og prod-kontoer for å lagre datasett og modellartefakter. - Sett opp en S3-bøtte for å opprettholde Terraform-tilstanden i prod-kontoen.
- Last ned og lagre den offentlig tilgjengelige UCI Mammografi Mass datasettet til S3-bøtten du opprettet tidligere i utviklerkontoen.
- Gaffel og klone GitHub repository innenfor SageMaker Studio-domenet i utviklerkontoen. Repoen har følgende mappestruktur:
- /environments – Konfigurasjonsskript for prod-miljø
- /mlops-infra – Kode for distribusjon av AWS-tjenester ved hjelp av Terraform-kode
- /rørledninger – Kode for SageMaker rørledningskomponenter
- Jenkinsfile – Skript som skal distribueres gjennom Jenkins CI/CD-pipeline
- setup.py – Nødvendig for å installere de nødvendige Python-modulene og lage run-pipeline-kommandoen
- mammography-severity-modeling.ipynb – Lar deg opprette og kjøre ML-arbeidsflyten
- Opprett en mappe kalt data i den klonede GitHub-depotmappen og lagre en kopi av den offentlig tilgjengelige UCI Mammografi Mass datasett.
- Følg Jupyter-notisboken
mammography-severity-modeling.ipynb
. - Kjør følgende kode i notatboken for å forhåndsbehandle datasettet og laste det opp til S3-bøtten i utviklerkontoen:
Koden vil generere følgende datasett:
-
- data/ mammo-train-dataset-part1.csv – Vil bli brukt til å trene den første versjonen av modellen.
- data/ mammo-train-dataset-part2.csv – Vil bli brukt til å trene den andre versjonen av modellen sammen med mammo-train-dataset-part1.csv datasettet.
- data/mammo-batch-dataset.csv – Vil bli brukt til å generere slutninger.
- data/mammo-batch-dataset-outliers.csv – Vil introdusere uteliggere i datasettet for å mislykkes i inferensrørledningen. Dette vil gjøre oss i stand til å teste mønsteret for å utløse automatisert omskolering av modellen.
- Last opp datasettet
mammo-train-dataset-part1.csv
under prefiksetmammography-severity-model/train-dataset
, og last opp datasettenemammo-batch-dataset.csv
ogmammo-batch-dataset-outliers.csv
til prefiksetmammography-severity-model/batch-dataset
av S3-bøtten som er opprettet i utviklerkontoen: - Last opp datasettene
mammo-train-dataset-part1.csv
ogmammo-train-dataset-part2.csv
under prefiksetmammography-severity-model/train-dataset
inn i S3-bøtta som er opprettet i prod-kontoen gjennom Amazon S3-konsollen. - Last opp datasettene
mammo-batch-dataset.csv
ogmammo-batch-dataset-outliers.csv
til prefiksetmammography-severity-model/batch-dataset
av S3-bøtta i prod-kontoen.
Kjør togrørledningen
Under <project-name>/pipelines/train
, kan du se følgende Python-skript:
- scripts/raw_preprocess.py – Integrerer med SageMaker Processing for funksjonsutvikling
- scripts/evaluate_model.py – Tillater beregning av modellberegninger, i dette tilfellet
auc_score
- train_pipeline.py – Inneholder koden for modelltreningspipeline
Fullfør følgende trinn:
- Last opp skriptene til Amazon S3:
- Få forekomsten av togrørledningen:
- Send inn togrørledningen og kjør den:
Følgende figur viser en vellykket gjennomføring av treningspipelinen. Det siste trinnet i pipelinen registrerer modellen i den sentrale modellregisterkontoen.
Godkjenne modellen i sentralt modellregister
Logg på den sentrale modellregisterkontoen og få tilgang til SageMaker-modellregistret innenfor SageMaker Studio-domenet. Endre modellversjonsstatusen til Godkjent.
Når den er godkjent, bør statusen endres på modellversjonen.
Kjør inferensrørledningen (valgfritt)
Dette trinnet er ikke nødvendig, men du kan fortsatt kjøre slutningspipeline for å generere spådommer i utviklerkontoen.
Under <project-name>/pipelines/inference
, kan du se følgende Python-skript:
- scripts/lambda_helper.py – Henter den siste godkjente modellversjonen fra den sentrale modellregisterkontoen ved å bruke et SageMaker Pipelines Lambda-trinn
- inference_pipeline.py – Inneholder koden for modellslutningsrørledningen
Fullfør følgende trinn:
- Last opp skriptet til S3-bøtten:
- Få inferensrørledningsforekomsten ved å bruke det normale batch-datasettet:
- Send inn slutningsrørledningen og kjør den:
Følgende figur viser en vellykket kjøring av inferensrørledningen. Det siste trinnet i rørledningen genererer spådommene og lagrer dem i S3-bøtten. Vi bruker MonitorBatchTransformStep for å overvåke inngangene til batchtransformeringsjobben. Hvis det er noen uteliggere, går inferensrørledningen inn i en mislykket tilstand.
Kjør Jenkins-rørledningen
De environment/
mappen i GitHub-depotet inneholder konfigurasjonsskriptet for prod-kontoen. Fullfør følgende trinn for å utløse Jenkins-rørledningen:
- Oppdater konfigurasjonsskriptet
prod.tfvars.json
basert på ressursene opprettet i de foregående trinnene: - Når den er oppdatert, skyver du koden inn i det gaffelformede GitHub-lageret og slår sammen koden til hovedgrenen.
- Gå til Jenkins UI, velg Bygg med parametere, og utløs CI/CD-pipelinen opprettet i de forrige trinnene.
Når byggingen er fullført og vellykket, kan du logge på prod-kontoen og se tog- og inferensrørledningene innenfor SageMaker Studio-domenet.
I tillegg vil du se tre EventBridge-regler på EventBridge-konsollen i prod-kontoen:
- Planlegg inferensrørledningen
- Send feilmelding på togledningen
- Når inferensrørledningen ikke klarer å utløse togrørledningen, send et varsel
Til slutt vil du se et SNS-varslingsemne på Amazon SNS-konsollen som sender varsler via e-post. Du får en e-post der du blir bedt om å bekrefte aksepten av disse e-postvarslene.
Test inferensrørledningen ved å bruke et batch-datasett uten uteliggere
For å teste om inferenspipelinen fungerer som forventet i prod-kontoen, kan vi logge inn på prod-kontoen og utløse inferens-pipelinen ved å bruke batch-datasettet uten utliggere.
Kjør pipelinen via SageMaker Pipelines-konsollen i SageMaker Studio-domenet til prod-kontoen, der transform_input
vil være S3 URI for datasettet uten uteliggere (s3://<s3-bucket-in-prod-account>/mammography-severity-model/data/mammo-batch-dataset.csv
).
Inferensrørledningen lykkes og skriver spådommene tilbake til S3-bøtta.
Test inferensrørledningen ved å bruke et batch-datasett med uteliggere
Du kan kjøre inferensrørledningen ved å bruke batch-datasettet med uteliggere for å sjekke om den automatiserte omskoleringsmekanismen fungerer som forventet.
Kjør pipelinen via SageMaker Pipelines-konsollen i SageMaker Studio-domenet til prod-kontoen, der transform_input
vil være S3 URI for datasettet med uteliggere (s3://<s3-bucket-in-prod-account>/mammography-severity-model/data/mammo-batch-dataset-outliers.csv
).
Inferensrørledningen svikter som forventet, noe som utløser EventBridge-regelen, som igjen utløser togrørledningen.
Etter noen øyeblikk bør du se en ny kjøring av togrørledningen på SageMaker Pipelines-konsollen, som plukker opp de to forskjellige togdatasettene (mammo-train-dataset-part1.csv
og mammo-train-dataset-part2.csv
) lastet opp til S3-bøtta for å omskolere modellen.
Du vil også se et varsel sendt til e-posten som abonnerer på SNS-emnet.
For å bruke den oppdaterte modellversjonen, logger du på den sentrale modellregisterkontoen og godkjenner modellversjonen, som vil bli plukket opp under neste kjøring av inferensrørledningen som utløses gjennom den planlagte EventBridge-regelen.
Selv om tog- og slutningsrørledningene bruker en statisk datasett-URL, kan du få datasett-URLen sendt til tog- og slutningsrørledningene som dynamiske variabler for å bruke oppdaterte datasett til å omskolere modellen og generere spådommer i et virkelighetsscenario.
Rydd opp
For å unngå fremtidige kostnader, fullfør følgende trinn:
- Fjern SageMaker Studio-domenet på tvers av alle AWS-kontoene.
- Slett alle ressursene som er opprettet utenfor SageMaker, inkludert S3-bøttene, IAM-rollene, EventBridge-reglene og SNS-emnet satt opp gjennom Terraform i prod-kontoen.
- Slett SageMaker-rørledningene opprettet på tvers av kontoer ved hjelp av AWS kommandolinjegrensesnitt (AWS CLI).
konklusjonen
Organisasjoner må ofte tilpasse seg bedriftsomfattende verktøysett for å muliggjøre samarbeid på tvers av ulike funksjonsområder og team. Dette samarbeidet sikrer at MLOps-plattformen din kan tilpasse seg endrede forretningsbehov og akselererer innføringen av ML på tvers av team. Dette innlegget forklarte hvordan du oppretter et MLOps-rammeverk i et flermiljøoppsett for å aktivere automatisert modellomopplæring, batch-inferens og overvåking med Amazon SageMaker Model Monitor, modellversjon med SageMaker Model Registry og promotering av ML-kode og rørledninger på tvers av miljøer med en CI/CD pipeline. Vi viste frem denne løsningen ved å bruke en kombinasjon av AWS-tjenester og tredjepartsverktøysett. For instruksjoner om implementering av denne løsningen, se GitHub repository. Du kan også utvide denne løsningen ved å ta inn dine egne datakilder og modelleringsrammeverk.
Om forfatterne
Gayatri Ghanakota er en senior maskinlæringsingeniør med AWS Professional Services. Hun brenner for å utvikle, distribuere og forklare AI/ML-løsninger på tvers av ulike domener. Før denne rollen ledet hun flere initiativer som dataforsker og ML-ingeniør med globale toppfirmaer innen finans- og detaljhandel. Hun har en mastergrad i informatikk med spesialisering i datavitenskap fra University of Colorado, Boulder.
Sunita Koppar er en Sr. Data Lake-arkitekt med AWS Professional Services. Hun er lidenskapelig opptatt av å løse kundenes smertepunkter ved å behandle big data og tilby langsiktige skalerbare løsninger. Før denne rollen utviklet hun produkter innen internett-, telekom- og bildomener, og har vært AWS-kunde. Hun har en mastergrad i datavitenskap fra University of California, Riverside.
Saswata Dash er DevOps-konsulent med AWS Professional Services. Hun har jobbet med kunder på tvers av helsevesen og biovitenskap, luftfart og produksjon. Hun brenner for alt som har med automatisering å gjøre og har omfattende erfaring med å designe og bygge kundeløsninger i bedriftsskala i AWS. Utenom jobben forfølger hun lidenskapen sin for fotografering og å fange soloppganger.
- SEO-drevet innhold og PR-distribusjon. Bli forsterket i dag.
- PlatoData.Network Vertical Generative Ai. Styrk deg selv. Tilgang her.
- PlatoAiStream. Web3 Intelligence. Kunnskap forsterket. Tilgang her.
- PlatoESG. Karbon, CleanTech, Energi, Miljø, Solenergi, Avfallshåndtering. Tilgang her.
- PlatoHelse. Bioteknologisk og klinisk etterretning. Tilgang her.
- kilde: https://aws.amazon.com/blogs/machine-learning/promote-pipelines-in-a-multi-environment-setup-using-amazon-sagemaker-model-registry-hashicorp-terraform-github-and-jenkins-ci-cd/
- : har
- :er
- :ikke
- :hvor
- $OPP
- 1
- 10
- 100
- 12
- 13
- 14
- 16
- 17
- 19
- 23
- 27
- 31
- 320
- 7
- 8
- 9
- a
- Om oss
- akselererer
- godkjennelse
- adgang
- Logg inn
- kontoer
- tvers
- Handling
- tilpasse
- legge til
- adresse
- administrativ
- Adopsjon
- Etter
- alder
- AI
- justere
- Alle
- tillate
- tillater
- langs
- også
- Amazon
- Amazon SageMaker
- Amazon Web Services
- an
- og
- En annen
- noen
- Søknad
- hensiktsmessig
- godkjenne
- godkjent
- arkitektur
- ER
- områder
- rundt
- kunstig
- kunstig intelligens
- Kunstig intelligens (AI)
- AS
- spør
- assosiert
- anta
- feste
- auto
- Automatisert
- Automatisk
- Automatisering
- automotive
- tilgjengelig
- luftfart
- unngå
- AWS
- AWS-kunde
- AWS profesjonelle tjenester
- tilbake
- basert
- basis
- BE
- fordi
- vært
- før du
- være
- BEST
- beste praksis
- mellom
- Stor
- Store data
- både
- Branch
- bridging
- Bringe
- bygge
- Bygning
- bygget
- virksomhet
- men
- by
- beregningen
- california
- som heter
- CAN
- saken
- sentral
- endring
- endret
- Endringer
- avgifter
- sjekk
- valg
- Velg
- kode
- samarbeid
- samle
- Colorado
- Kolonne
- kolonner
- COM
- kombinasjon
- fullføre
- samsvar
- komponenter
- omfattende
- datamaskin
- informatikk
- tilstand
- Konfigurasjon
- Bekrefte
- Konsoll
- konsulent
- Container
- inneholder
- kontroll
- Konvensjonen
- konvertere
- Tilsvarende
- skape
- opprettet
- Opprette
- Credentials
- Kryss
- kunde
- Kundeløsninger
- Kunder
- daglig
- dashbord
- dato
- Data Lake
- datavitenskap
- dataforsker
- datasett
- dekryptere
- Misligholde
- Grad
- utplassere
- utplasserings
- distribusjon
- Distribueres
- utforme
- detaljer
- oppdage
- oppdaget
- dev
- utviklet
- utvikle
- Utvikling
- DIKT
- forskjellig
- domene
- domener
- under
- dynamisk
- hver enkelt
- Tidligere
- effekt
- enten
- emalje
- e-post
- muliggjøre
- kryptert
- ingeniør
- sikrer
- Enter
- Miljø
- miljøer
- avgjørende
- hendelser
- utvikling
- gjennomføring
- forventet
- erfaring
- forklarte
- forklare
- utvide
- legge til rette
- FAIL
- Mislyktes
- mislykkes
- Failure
- Trekk
- Egenskaper
- Noen få
- Figur
- filet
- slutt~~POS=TRUNC
- finansiell
- ferdig
- bedrifter
- Først
- første gang
- etter
- Til
- funnet
- Rammeverk
- rammer
- fra
- Innfri
- fullt
- funksjon
- funksjonelle
- framtid
- mellomrom
- generere
- generert
- genererer
- få
- gå
- GitHub
- Gi
- gitt
- gir
- Global
- Go
- Går
- tilskudd
- Gruppe
- Ha
- helsetjenester
- her
- høyere
- holder
- Hosting
- Hvordan
- Hvordan
- HTML
- http
- HTTPS
- ID
- Identitet
- if
- implementere
- importere
- in
- inkluderer
- Inkludert
- indeks
- Infrastruktur
- i utgangspunktet
- initiativer
- innganger
- installere
- installerte
- f.eks
- instruksjoner
- Integrerer
- Intelligens
- Internet
- inn
- introdusere
- IT
- Jobb
- Jobb
- jpg
- JSON
- nøkkel
- nøkler
- Etiketten
- innsjø
- landskap
- seinere
- siste
- læring
- Led
- utnyttet
- Life
- Life Sciences
- linje
- logg
- langsiktig
- maskin
- maskinlæring
- Hoved
- vedlikeholde
- gjøre
- fikk til
- ledelse
- produksjon
- Margin
- Mass
- mestere
- mekanisme
- møte
- Meny
- Flett
- Metrics
- mangler
- ML
- MLOps
- modell
- modellering
- modeller
- modifisere
- Moduler
- Moments
- Overvåke
- overvåket
- overvåking
- mer
- flere
- navn
- oppkalt
- navngiving
- Navigasjon
- Trenger
- nødvendig
- behov
- Ny
- neste
- normal
- bærbare
- varsling
- varslinger
- Antall
- følelsesløs
- of
- ofte
- on
- ONE
- Drift
- or
- rekkefølge
- organisasjoner
- Annen
- ut
- utenfor
- enn
- oversikt
- egen
- pakke
- side
- Smerte
- pandaer
- brød
- del
- deler
- bestått
- lidenskap
- lidenskapelig
- Mønster
- ytelse
- tillatelser
- fotografering
- plukket
- Picks
- rørledning
- plattform
- plato
- Platon Data Intelligence
- PlatonData
- poeng
- Politikk
- politikk
- Post
- praksis
- forutsi
- Spådommer
- Forbered
- forutsetninger
- forrige
- Principal
- Før
- privilegier
- prosess
- prosessering
- Produksjon
- Produkter
- profesjonell
- prosjekt
- fremme
- Forfremmet
- forfremmelse
- gi
- forutsatt
- gir
- gi
- forsyning
- offentlig
- Trekker
- Forfølger
- Skyv
- Python
- raskt
- raskt
- Raw
- Lese
- klar
- virkelige verden
- region
- registrere
- registrert
- registre
- registret
- regulatorer
- i slekt
- forholdet
- fjerne
- Repository
- anmode
- påkrevd
- Krav
- ressurs
- Ressurser
- svar
- detaljhandel
- retur
- Elvebredd
- Rolle
- roller
- root
- Regel
- regler
- Kjør
- går
- sagemaker
- SageMaker-rørledninger
- samme
- Spar
- lagret
- skalerbar
- scenario
- planlegge
- planlagt
- planlegging
- Vitenskap
- VITENSKAPER
- Forsker
- script
- skript
- sømløst
- Sekund
- Seksjon
- sikre
- sikkerhet
- se
- send
- sending
- sender
- sendt
- separat
- server
- tjeneste
- Tjenester
- sett
- innstillinger
- oppsett
- Form
- Del
- hun
- bør
- Vis
- showcased
- vist
- Viser
- Enkelt
- tekstutdrag
- So
- løsning
- Solutions
- løse
- kilde
- Kilder
- Rom
- spesialisert
- spesifikk
- splittet
- Tilstand
- Uttalelse
- statisk
- status
- Trinn
- Steps
- Still
- oppbevare
- lagret
- butikker
- String
- struktur
- studio
- vellykket
- slik
- Støtter
- Target
- lag
- telekom
- terra
- test
- Testing
- Det
- De
- Dem
- deretter
- Der.
- Disse
- ting
- Tredje
- tredjeparts
- denne
- tre
- Gjennom
- tid
- til
- verktøysett
- topp
- Tema
- spor
- Tog
- trent
- Kurs
- Transform
- utløse
- utløst
- utløsende
- sant
- Stol
- SVING
- to
- ui
- etter
- universitet
- University of California
- Oppdater
- oppdatert
- lastet opp
- URL
- us
- bruke
- brukt
- ved hjelp av
- verktøyet
- Verdier
- ulike
- versjon
- versjoner
- av
- video
- synlig
- Se
- we
- web
- webtjenester
- når
- når som helst
- mens
- hvilken
- mens
- vil
- med
- innenfor
- uten
- Arbeid
- arbeidet
- arbeidsflyt
- arbeid
- virker
- skrive
- skrevet
- Du
- Din
- youtube
- zephyrnet