2021 lanserade vi AWS Support Proactive Services som en del av AWS Enterprise Support planen. Sedan introduktionen har vi hjälpt hundratals kunder att optimera sina arbetsbelastningar, sätta skyddsräcken och förbättra synligheten för deras maskininlärnings (ML) arbetsbelastningars kostnader och användning.
I den här serien av inlägg delar vi lärdomar om att optimera kostnader i Amazon SageMaker. I del 1, visade vi hur du kommer igång med att använda AWS Cost Explorer för att identifiera kostnadsoptimeringsmöjligheter i SageMaker. I det här inlägget fokuserar vi på SageMaker-inferensmiljöer: realtidsinferens, batchtransform, asynkron inferens och serverlös slutledning.
SageMaker erbjuder flera slutledningsalternativ som du kan välja mellan baserat på dina krav på arbetsbelastning:
- Inferens i realtid för online, låg latens eller höga genomströmningskrav
- Batchtransformation för offline, schemalagd bearbetning och när du inte behöver en beständig slutpunkt
- Asynkron slutledning för när du har stora nyttolaster med långa handläggningstider och vill köa förfrågningar
- Serverlös slutledning för när du har intermittenta eller oförutsägbara trafikmönster och kan tolerera kallstarter
I följande avsnitt diskuterar vi varje slutledningsalternativ mer i detalj.
SageMaker inferens i realtid
När du skapar en slutpunkt, bifogar SageMaker en Amazon Elastic Block Store (Amazon EBS) lagringsvolym till Amazon Elastic Compute Cloud (Amazon EC2)-instans som är värd för slutpunkten. Detta gäller för alla instanstyper som inte kommer med en SSD-lagring. Eftersom d*-instanstyperna kommer med en NVMe SSD-lagring, kopplar SageMaker inte en EBS-lagringsvolym till dessa ML-beräkningsinstanser. Hänvisa till Lagringsvolymer för värdinstanser för storleken på lagringsvolymerna som SageMaker bifogar för varje instanstyp för en enda slutpunkt och för en flermodellslutpunkt.
Kostnaden för SageMaker realtidsslutpunkter är baserad på den förbrukade instanstimme för varje instans medan slutpunkten körs, kostnaden för GB-månad av provisionerad lagring (EBS-volym) samt GB-data som bearbetas in och ut av endpoint-instansen, som beskrivs i Amazon SageMaker Prissättning. I Cost Explorer kan du se slutpunktskostnader i realtid genom att använda ett filter på användningstypen. Namnen på dessa användningstyper är strukturerade enligt följande:
REGION-Host:instanceType
(till exempel,USE1-Host:ml.c5.9xlarge
)REGION-Host:VolumeUsage.gp2
(till exempel,USE1-Host:VolumeUsage.gp2
)REGION-Hst:Data-Bytes-Out
(till exempel,USE2-Hst:Data-Bytes-In
)REGION-Hst:Data-Bytes-Out
(till exempel,USW2-Hst:Data-Bytes-Out)
Som visas i följande skärmdump, filtrering efter användningstyp Host:
kommer att visa en lista över värdanvändningstyper i realtid på ett konto.
Du kan antingen välja specifika användningstyper eller välja Markera allt Och välj Ansök för att visa kostnadsfördelningen för SageMaker realtidsvärdanvändning. För att se kostnads- och användningsfördelningen per instanstimmar måste du avmarkera alla REGION-Host:VolumeUsage.gp2
användningstyper innan du använder filtret för användningstyp. Du kan också använda ytterligare filter som kontonummer, EC2-instanstyp, kostnadsfördelningstagg, region och mer. Följande skärmdump visar kostnads- och användningsdiagram för de valda värdanvändningstyperna.
Dessutom kan du utforska kostnaderna för en eller flera värdinstanser genom att använda Instans typ filtrera. Följande skärmdump visar kostnads- och användningsfördelning för värdinstansen ml.p2.xlarge.
På samma sätt kan kostnaden för GB-data som bearbetas in och bearbetas ut visas genom att välja tillhörande användningstyper som ett tillämpat filter, som visas i följande skärmdump.
Efter att du har uppnått önskade resultat med filter och grupperingar kan du antingen ladda ner dina resultat genom att välja Ladda ner som CSV eller spara rapporten genom att välja Spara i rapportbiblioteket. För allmän vägledning om hur du använder Cost Explorer, se AWS Cost Explorers nya utseende och vanliga användningsfall.
Alternativt kan du aktivera AWS kostnads- och användningsrapporter (AWS CUR) för att få insikter i kostnads- och användningsdata för dina konton. AWS CUR innehåller information om AWS-förbrukning per timme. Den förvaras i Amazon enkel lagringstjänst (Amazon S3) på betalarkontot, som konsoliderar data för alla länkade konton. Du kan köra frågor för att analysera trender i din användning och vidta lämpliga åtgärder för att optimera kostnaden. Amazonas Athena är en serverlös frågetjänst som du kan använda för att analysera data från AWS CUR i Amazon S3 med standard SQL. Mer information och exempelfrågor finns i AWS CUR frågebibliotek.
Du kan också mata in AWS CUR-data Amazon QuickSight, där du kan skära och tärna det som du vill för rapporterings- eller visualiseringsändamål. För instruktioner, se Hur får jag in och visualiserar AWS Cost and Usage Report (CUR) i Amazon QuickSight.
Du kan erhålla information på resursnivå som slutpunkts-ARN, slutpunktsinstanstyper, instanspris per timme, dagliga användningstimmar och mer från AWS CUR. Du kan också inkludera kostnadsfördelningstaggar i din fråga för en ytterligare granularitetsnivå. Följande exempelfråga returnerar värdresursanvändning i realtid under de senaste 3 månaderna för det givna betalarkontot:
Följande skärmdump visar resultaten från att köra frågan med Athena. För mer information, se Fråga efter kostnads- och användningsrapporter med Amazon Athena.
Resultatet av frågan visar den slutpunkten mme-xgboost-housing
med ml.x4.xlarge-instansen rapporterar 24 timmars körtid för flera dagar i följd. Förekomstpriset är $0.24/timme och den dagliga kostnaden för att köra i 24 timmar är $5.76.
AWS CUR-resultat kan hjälpa dig att identifiera mönster av slutpunkter som körs under på varandra följande dagar i vart och ett av de länkade kontona, såväl som slutpunkter med den högsta månadskostnaden. Detta kan också hjälpa dig att avgöra om slutpunkterna i icke-produktionskonton kan tas bort för att spara kostnader.
Optimera kostnader för slutpunkter i realtid
Ur ett kostnadshanteringsperspektiv är det viktigt att identifiera underutnyttjade (eller överdimensionerade) instanser och bringa instansstorleken och antalet, om så krävs, i linje med arbetsbelastningskraven. Vanliga systemmått som CPU/GPU-användning och minnesanvändning skrivs till amazoncloudwatch för alla värdinstanser. För slutpunkter i realtid gör SageMaker flera ytterligare mätvärden tillgängliga i CloudWatch. Några av de vanligaste mätvärdena inkluderar anropsantal och anrop 4xx/5xx-fel. För en fullständig lista över mätvärden, se Övervaka Amazon SageMaker med Amazon CloudWatch.
Beräkningen CPUUtilization
ger summan av varje enskild CPU-kärnas användning. CPU-användningen för varje kärnområde är 0–100. Till exempel, om det finns fyra processorer, CPUUtilization
intervallet är 0–400 %. Metriken MemoryUtilization
är procentandelen minne som används av behållarna på en instans. Detta värdeintervall är 0–100 %. Följande skärmdump visar ett exempel på CloudWatch-mätvärden CPUUtilization
och MemoryUtilization
för en slutpunktsinstans ml.m4.10xlarge som kommer med 40 vCPU:er och 160 GiB minne.
Dessa mätdiagram visar maximalt CPU-utnyttjande på cirka 3,000 30 %, vilket motsvarar 30 vCPU:er. Det betyder att denna slutpunkt inte använder mer än 40 vCPU:er av den totala kapaciteten på 6 vCPU:er. På samma sätt är minnesutnyttjandet under XNUMX%. Med hjälp av denna information kan du möjligen experimentera med en mindre instans som kan matcha detta resursbehov. Dessutom CPUUtilization
metric visar ett klassiskt mönster av periodisk hög och låg CPU-efterfrågan, vilket gör denna slutpunkt till en bra kandidat för automatisk skalning. Du kan börja med en mindre instans och skala ut först när din beräkningsefterfrågan ändras. För information, se Skala Amazon SageMaker-modeller automatiskt.
SageMaker är utmärkt för att testa nya modeller eftersom du enkelt kan distribuera dem i en A/B-testmiljö med produktionsvarianter, och du betalar bara för det du använder. Varje produktionsvariant körs på sin egen beräkningsinstans och du debiteras per förbrukad instanstimme för varje instans medan varianten körs.
SageMaker stöder också skuggvarianter, som har samma komponenter som en produktionsvariant och körs på sin egen beräkningsinstans. Med skuggvarianter distribuerar SageMaker modellen automatiskt i en testmiljö, dirigerar en kopia av de slutledningsbegäranden som tagits emot av produktionsmodellen till testmodellen i realtid och samlar in prestandamått som latens och genomströmning. Detta gör att du kan validera alla nya kandidatkomponenter i din modellserverstack innan du marknadsför den till produktion.
När du är klar med dina tester och inte använder slutpunkten eller varianterna i stor utsträckning längre, bör du ta bort den för att spara kostnader. Eftersom modellen är lagrad i Amazon S3 kan du återskapa den efter behov. Du kan automatiskt upptäcka dessa slutpunkter och vidta korrigerande åtgärder (som att ta bort dem) genom att använda Amazon CloudWatch-händelser och AWS Lambda funktioner. Du kan till exempel använda Invocations
mätvärde för att få det totala antalet förfrågningar som skickats till en modelländpunkt och sedan upptäcka om ändpunkterna har varit inaktiva under de senaste timmarna (utan anrop under en viss period, till exempel 24 timmar).
Om du har flera underutnyttjade slutpunktsinstanser, överväg värdalternativ som t.ex flermodell slutpunkter (MME), slutpunkter för flera behållare (MCE) och seriella slutledningsledningar för att konsolidera användningen till färre slutpunktsinstanser.
För realtids- och asynkron inferensmodellimplementering kan du optimera kostnad och prestanda genom att distribuera modeller på SageMaker med AWS Graviton. AWS Graviton är en familj av processorer designade av AWS som ger bästa prisprestanda och är mer energieffektiva än sina x86-motsvarigheter. För vägledning om hur du distribuerar en ML-modell till AWS Graviton-baserade instanser och detaljer om prisfördelar, se Kör inferensarbetsbelastningar för maskininlärning på AWS Graviton-baserade instanser med Amazon SageMaker. SageMaker stöder också AWS slutledning acceleratorer genom ml.inf2 familj av instanser för att distribuera ML-modeller för realtids- och asynkron slutledning. Du kan använda dessa instanser på SageMaker för att uppnå hög prestanda till en låg kostnad för modeller för generativ artificiell intelligens (AI), inklusive stora språkmodeller (LLM) och syntransformatorer.
Dessutom kan du använda Amazon SageMaker Inference Recommender för att köra belastningstester och utvärdera prisprestandafördelarna med att distribuera din modell på dessa instanser. För ytterligare vägledning om att automatiskt upptäcka lediga SageMaker-ändpunkter, samt instansrättsstorlekar och automatisk skalning för SageMaker-slutpunkter, se Säkerställ effektiva beräkningsresurser på Amazon SageMaker.
SageMaker batch-transformation
Batch slutledning, eller offline slutledning, är processen att generera förutsägelser på en grupp observationer. Offlineförutsägelser är lämpliga för större datauppsättningar och i fall där du har råd att vänta flera minuter eller timmar på svar.
Kostnaden för SageMaker batchtransformering baseras på den konsumerade instanstimme för varje instans medan batchtransformeringsjobbet körs, som beskrivs i Amazon SageMaker Prissättning. I Cost Explorer kan du utforska batchtransformeringskostnader genom att tillämpa ett filter på användningstypen. Namnet på denna användningstyp är strukturerat som REGION-Tsform:instanceType
(till exempel, USE1-Tsform:ml.c5.9xlarge
).
Som visas i följande skärmdump, filtrering efter användningstyp Tsform:
kommer att visa en lista över SageMaker batch transform användningstyper i ett konto.
Du kan antingen välja specifika användningstyper eller välja Markera allt Och välj Ansök för att visa kostnadsuppdelningen för användning av batchtransformeringsinstanser för de valda typerna. Som nämnts tidigare kan du även använda ytterligare filter. Följande skärmdump visar kostnads- och användningsdiagram för de valda batchtransformeringsanvändningstyperna.
Optimera kostnader för batchtransformering
SageMaker batchtransform debiterar dig bara för de instanser som används medan dina jobb körs. Om din data redan finns i Amazon S3, så kostar det ingen kostnad att läsa indata från Amazon S3 och skriva utdata till Amazon S3. Alla utdataobjekt försöker laddas upp till Amazon S3. Om alla lyckas markeras batchtransformeringsjobbet som slutfört. Om ett eller flera objekt misslyckas markeras batchtransformeringsjobbet som misslyckat.
Avgifter för batchtransformeringsjobb tillkommer i följande scenarier:
- Jobbet är framgångsrikt
- Misslyckande pga
ClientError
och modellbehållaren är SageMaker eller ett SageMaker-hanterat ramverk - Misslyckande pga
AlgorithmError
orClientError
och modellbehållaren är din egen anpassade behållare (BYOC)
Följande är några av de bästa metoderna för att optimera ett SageMaker batchtransformeringsjobb. Dessa rekommendationer kan minska den totala körtiden för ditt batchtransformeringsjobb och därigenom sänka kostnaderna:
- uppsättning Batchstrategi till
MultiRecord
ochSplitType
tillLine
om du behöver batchtransformeringsjobbet för att göra minibatcher från inmatningsfilen. Om det inte automatiskt kan dela upp datasetet i minibatcher kan du dela upp det i minibatcher genom att lägga varje batch i en separat indatafil, placerad i datakällans S3-bucket. - Se till att batchstorleken passar in i minnet. SageMaker brukar hantera detta automatiskt; men när man delar upp batcher manuellt måste detta justeras baserat på minnet.
- Batchtransform partitionerar S3-objekten i inmatningen med nyckel och mappar dessa objekt till instanser. När du har flera filer kan en instans bearbeta
input1.csv
, och en annan instans kan bearbetainput2.csv
. Om du har en indatafil men initierar flera beräkningsinstanser, bearbetar bara en instans indatafilen och resten av instanserna är inaktiva. Se till att antalet filer är lika med eller större än antalet instanser. - Om du har ett stort antal små filer kan det vara fördelaktigt att kombinera flera filer till ett litet antal större filer för att minska interaktionstiden för Amazon S3.
- Om du använder Skapa TransformJob API kan du minska tiden det tar att slutföra batchtransformeringsjobb genom att använda optimala värden för parametrar som t.ex MaxPayloadInMB, MaxConcurrentTransforms, eller Batchstrategi:
MaxConcurrentTransforms
anger det maximala antalet parallella förfrågningar som kan skickas till varje instans i ett transformeringsjobb. Det idealiska värdet förMaxConcurrentTransforms
är lika med antalet vCPU-kärnor i en instans.MaxPayloadInMB
är den maximalt tillåtna storleken på nyttolasten, i MB. Värdet iMaxPayloadInMB
måste vara större än eller lika med storleken på en enskild post. För att uppskatta storleken på en post i MB, dividera storleken på din datauppsättning med antalet poster. För att säkerställa att posterna passar inom den maximala nyttolaststorleken rekommenderar vi att du använder ett något högre värde. Standardvärdet är 6 MB.MaxPayloadInMB
får inte vara större än 100 MB. Om du anger det valfriaMaxConcurrentTransforms
parameter, sedan värdet av (MaxConcurrentTransforms
*MaxPayloadInMB
) får inte heller överstiga 100 MB.- För fall där nyttolasten kan vara godtyckligt stor och överförs med hjälp av HTTP-chunkkodning, ställ in MaxPayloadInMB-värdet till 0. Den här funktionen fungerar endast i algoritmer som stöds. För närvarande stöder inte SageMakers inbyggda algoritmer HTTP-chunkkodning.
- Batch slutledningsuppgifter är vanligtvis bra kandidater för horisontell skalning. Varje arbetare inom ett kluster kan arbeta på olika delmängder av data utan att behöva utbyta information med andra arbetare. AWS erbjuder flera lagrings- och beräkningsalternativ som möjliggör horisontell skalning. Om en enskild instans inte räcker för att uppfylla dina prestationskrav, överväg att använda flera instanser parallellt för att fördela arbetsbelastningen. För viktiga överväganden när du skapar batchtransformeringsjobb, se Batch-inferens i skala med Amazon SageMaker.
- Övervaka kontinuerligt prestandamåtten för dina SageMaker-batchtransformeringsjobb med CloudWatch. Leta efter flaskhalsar, som hög CPU- eller GPU-användning, minnesanvändning eller nätverksgenomströmning, för att avgöra om du behöver justera instansstorlekar eller konfigurationer.
- SageMaker använder Amazon S3 multipart upload API för att ladda upp resultat från ett batchomvandlingsjobb till Amazon S3. Om ett fel uppstår tas de uppladdade resultaten bort från Amazon S3. I vissa fall, till exempel när ett nätverksavbrott inträffar, kan en ofullständig flerdelad uppladdning finnas kvar i Amazon S3. För att undvika lagringsavgifter rekommenderar vi att du lägger till S3 hinkpolicy till S3-skopans livscykelregler. Denna policy tar bort ofullständiga flerdelade uppladdningar som kan lagras i S3-bucket. För mer information, se Hantera din lagringslivscykel.
SageMaker asynkron slutledning
Asynkron slutledning är ett utmärkt val för kostnadskänsliga arbetsbelastningar med stora nyttolaster och bursttrafik. Förfrågningar kan ta upp till 1 timme att bearbeta och har nyttolaststorlekar på upp till 1 GB, så det är mer lämpligt för arbetsbelastningar som har lättade latenskrav.
Anrop av asynkrona ändpunkter skiljer sig från realtidsändpunkter. Istället för att skicka en nyttolast för begäran synkront med förfrågan laddar du upp nyttolasten till Amazon S3 och skickar en S3 URI som en del av förfrågan. Internt håller SageMaker en kö med dessa förfrågningar och bearbetar dem. Under skapandet av slutpunkten kan du valfritt ange en Amazon enkel meddelandetjänst (Amazon SNS) ämne för att få framgångs- eller felmeddelanden. När du får meddelandet om att din slutledningsbegäran har behandlats framgångsrikt kan du komma åt resultatet i Amazon S3-utdataplatsen.
Kostnaden för asynkron slutledning baseras på den per instanstimme som konsumeras för varje instans medan slutpunkten körs, kostnaden för GB-månad för tillhandahållen lagring samt GB-data som bearbetas in och ut ur slutpunktsinstansen, som beskrivs i Amazon SageMaker Prissättning. I Cost Explorer kan du filtrera asynkrona slutledningskostnader genom att använda ett filter på användningstypen. Namnet på denna användningstyp är strukturerat som REGION-AsyncInf:instanceType
(till exempel, USE1-AsyncInf:ml.c5.9xlarge
). Observera att GB-volym och GB-databearbetade användningstyper är desamma som realtidsslutpunkter, som nämnts tidigare i det här inlägget.
Som visas i följande skärmdump, filtrering efter användningstyp AsyncInf:
i Cost Explorer visar en kostnadsuppdelning efter asynkrona slutpunktsanvändningstyper.
För att se kostnads- och användningsfördelningen per instanstimmar måste du avmarkera alla REGION-Host:VolumeUsage.gp2
användningstyper innan du använder filtret för användningstyp. Du kan också använda ytterligare filter. Information på resursnivå som slutpunkts-ARN, slutpunktsinstanstyper, instanspris per timme och dagliga användningstimmar kan erhållas från AWS CUR. Följande är ett exempel på en AWS CUR-fråga för att erhålla asynkron värdresursanvändning under de senaste 3 månaderna:
Följande skärmdump visar resultaten från att köra AWS CUR-frågan med Athena.
Resultatet av frågan visar den slutpunkten sagemaker-abc-model-5
med ml.m5.xlarge-instansen rapporterar 24 timmars körtid för flera dagar i följd. Förekomstpriset är $0.23/timme och den dagliga kostnaden för att köra i 24 timmar är $5.52.
Som nämnts tidigare kan AWS CUR-resultaten hjälpa dig att identifiera mönster av endpoints som körs under på varandra följande dagar, såväl som endpoints med den högsta månadskostnaden. Detta kan också hjälpa dig att avgöra om slutpunkterna i icke-produktionskonton kan tas bort för att spara kostnader.
Optimera kostnader för asynkron slutledning
Precis som realtidsslutpunkterna baseras kostnaden för asynkrona slutpunkter på instanstypens användning. Därför är det viktigt att identifiera underutnyttjade instanser och ändra storlek på dem baserat på arbetsbelastningskraven. För att övervaka asynkrona slutpunkter gör SageMaker flera mått såsom ApproximateBacklogSize
, HasBacklogWithoutCapacity
, och mer tillgängligt i CloudWatch. Dessa mätvärden kan visa förfrågningar i kön för en instans och kan användas för automatisk skalning av en slutpunkt. SageMaker asynkron inferens inkluderar också mätvärden på värdnivå. För information om mätvärden på värdnivå, se SageMaker jobb och ändpunktsmått. Dessa mätvärden kan visa resursutnyttjande som kan hjälpa dig att göra rätt storlek på instansen.
SageMaker stöder automatisk skalning för asynkrona ändpunkter. Till skillnad från värdbaserade slutpunkter i realtid, stödjer asynkrona slutpunkter för slutpunkter att skala ner instanser till noll genom att sätta minimikapaciteten till noll. För asynkrona slutpunkter rekommenderar SageMaker starkt att du skapar en policykonfiguration för målspårningsskalning för en distribuerad modell (variant). Du måste definiera skalningspolicyn som skalas på ApproximateBacklogPerInstance
anpassat mått och ställ in MinCapacity
värde till noll.
Asynkron slutledning gör att du kan spara på kostnader genom att automatiskt skala instansräkningen till noll när det inte finns några förfrågningar att behandla, så du betalar bara när din slutpunkt behandlar förfrågningar. Förfrågningar som tas emot när det finns noll instanser köas för behandling efter att ändpunkten skalas upp. Därför, för användningsfall som kan tolerera en kallstartsavgift på några minuter, kan du valfritt skala ner antalet slutpunktsinstanser till noll när det inte finns några utestående förfrågningar och skala upp igen när nya förfrågningar kommer. Kallstartstiden beror på den tid som krävs för att starta en ny slutpunkt från början. Dessutom, om själva modellen är stor, kan tiden vara längre. Om ditt jobb förväntas ta längre tid än 1-timmes bearbetningstiden, kanske du vill överväga SageMaker batchtransformering.
Dessutom kan du också överväga din begärans kötid i kombination med handläggningstiden för att välja instanstyp. Till exempel, om ditt användningsfall tål timmar av väntetid, kan du välja en mindre instans för att spara kostnader.
För ytterligare vägledning om rätt storlek på instanser och automatisk skalning för SageMaker-slutpunkter, se Säkerställ effektiva beräkningsresurser på Amazon SageMaker.
Serverlös slutledning
Serverlös slutledning låter dig distribuera ML-modeller för slutledning utan att behöva konfigurera eller hantera den underliggande infrastrukturen. Baserat på mängden slutledningsförfrågningar som din modell tar emot, tillhandahåller SageMaker serverlös slutledning automatiskt, skalar och stänger av beräkningskapacitet. Som ett resultat betalar du endast för beräkningstiden för att köra din slutledningskod och mängden data som behandlas, inte för vilotid. För serverlösa slutpunkter är instansprovisionering inte nödvändig. Du måste tillhandahålla minnesstorlek och maximal samtidighet. Eftersom serverlösa slutpunkter tillhandahåller beräkningsresurser på begäran, kan din slutpunkt uppleva några extra sekunders latens (kallstart) för den första anropet efter en inaktiv period. Du betalar för beräkningskapaciteten som används för att behandla slutledningsförfrågningar, fakturerad per millisekund, GB-månad av tillhandahållen lagring och mängden data som behandlas. Beräkningsavgiften beror på vilken minneskonfiguration du väljer.
I Cost Explorer kan du filtrera kostnaderna för serverlösa slutpunkter genom att använda ett filter på användningstypen. Namnet på denna användningstyp är strukturerat som REGION-ServerlessInf:Mem-MemorySize
(till exempel, USE2-ServerlessInf:Mem-4GB
). Observera att användningstyperna för GB-volym och GB-databearbetning är desamma som slutpunkter i realtid.
Du kan se kostnadsfördelningen genom att använda ytterligare filter som kontonummer, instanstyp, region med mera. Följande skärmdump visar kostnadsfördelningen genom att använda filter för användningstypen serverlös slutledning.
Optimera kostnaden för serverlös slutledning
När du konfigurerar din serverlösa slutpunkt kan du ange minnesstorlek och maximalt antal samtidiga anrop. SageMaker serverlös slutledning tilldelar automatiskt beräkningsresurser proportionellt mot det minne du väljer. Om du väljer en större minnesstorlek har din behållare tillgång till fler vCPU:er. Med serverlös slutledning betalar du bara för den beräkningskapacitet som används för att behandla slutledningsförfrågningar, fakturerad per millisekund, och mängden data som behandlas. Beräkningsavgiften beror på vilken minneskonfiguration du väljer. Minnesstorlekarna du kan välja är 1024 MB, 2048 MB, 3072 MB, 4096 MB, 5120 MB och 6144 MB. Priset ökar med minnesstorleken, som förklaras i Amazon SageMaker Prissättning, så det är viktigt att välja rätt minnesstorlek. Som en allmän regel bör minnesstorleken vara minst lika stor som din modellstorlek. Det är dock en god praxis att hänvisa till minnesanvändning när du bestämmer storleken på ändpunktsminnet, utöver själva modellstorleken.
Allmänna bästa praxis för att optimera SageMaker slutledningskostnader
Att optimera värdkostnaderna är inte en engångshändelse. Det är en kontinuerlig process för att övervaka utplacerad infrastruktur, användningsmönster och prestanda, och även hålla ett skarpt öga på nya innovativa lösningar som AWS släpper och som kan påverka kostnaden. Tänk på följande bästa praxis:
- Välj en lämplig instanstyp – SageMaker stöder flera instanstyper, var och en med olika kombinationer av CPU, GPU, minne och lagringskapacitet. Baserat på din modells resurskrav, välj en instanstyp som tillhandahåller nödvändiga resurser utan överprovisionering. För information om tillgängliga SageMaker-instanstyper, deras specifikationer och vägledning om att välja rätt instans, se Säkerställ effektiva beräkningsresurser på Amazon SageMaker.
- Testa med lokalt läge – För att upptäcka fel och felsöka snabbare, rekommenderas att testa koden och behållaren (vid BYOC) i lokalt läge innan du kör inferensarbetsbelastningen på den fjärranslutna SageMaker-instansen. Lokalt läge är ett utmärkt sätt att testa dina skript innan du kör dem i en SageMaker-hanterad värdmiljö.
- Optimera modeller för att prestera bättre – Ooptimerade modeller kan leda till längre körtider och använda mer resurser. Du kan välja att använda fler eller större instanser för att förbättra prestandan; detta leder dock till högre kostnader. Genom att optimera dina modeller för att bli mer prestanda kan du kanske sänka kostnaderna genom att använda färre eller mindre instanser samtidigt som du behåller samma eller bättre prestandaegenskaper. Du kan använda Amazon SageMaker Neo med SageMaker inferens för att automatiskt optimera modeller. För mer information och prover, se Optimera modellens prestanda med Neo.
- Använd taggar och kostnadshanteringsverktyg – För att upprätthålla insyn i dina slutledningsarbetsbelastningar rekommenderas det att använda taggar samt AWS kostnadshanteringsverktyg som t.ex. AWS budgetar, den AWS faktureringskonsol, och prognosfunktionen i Cost Explorer. Du kan också utforska SageMaker Savings Plans som en flexibel prismodell. För mer information om dessa alternativ, se del 1 av den här serien.
Slutsats
I det här inlägget gav vi vägledning om kostnadsanalys och bästa praxis när du använder SageMakers slutledningsalternativ. Eftersom maskininlärning etablerar sig som ett kraftfullt verktyg över branscher måste utbildning och körning av ML-modeller förbli kostnadseffektiva. SageMaker erbjuder en bred och djup uppsättning funktioner för att underlätta varje steg i ML-pipelinen och ger kostnadsoptimeringsmöjligheter utan att påverka prestanda eller smidighet. Kontakta ditt AWS-team för kostnadsvägledning om dina SageMaker-arbetsbelastningar.
Om författarna
Deepali Rajale är senior AI/ML-specialist på AWS. Hon arbetar med företagskunder och tillhandahåller teknisk vägledning med bästa praxis för att distribuera och underhålla AI/ML-lösningar i AWS-ekosystemet. Hon har arbetat med ett brett spektrum av organisationer med olika användningsfall för djupinlärning som involverar NLP och datorseende. Hon brinner för att ge organisationer möjlighet att utnyttja generativ AI för att förbättra deras användningsupplevelse. På fritiden tycker hon om film, musik och litteratur.
Uri Rosenberg är AI & ML Specialist Technical Manager för Europa, Mellanöstern och Afrika. Med utgångspunkt från Israel arbetar Uri för att ge företagskunder i allt ML möjlighet att designa, bygga och driva i stor skala. På fritiden tycker han om att cykla, vandra och klättra i rock and roll.
- SEO-drivet innehåll och PR-distribution. Bli förstärkt idag.
- PlatoAiStream. Web3 Data Intelligence. Kunskap förstärkt. Tillgång här.
- Minting the Future med Adryenn Ashley. Tillgång här.
- Köp och sälj aktier i PRE-IPO-företag med PREIPO®. Tillgång här.
- Källa: https://aws.amazon.com/blogs/machine-learning/part-5-analyze-amazon-sagemaker-spend-and-determine-cost-optimization-opportunities-based-on-usage-part-5-hosting/
- : har
- :är
- :inte
- :var
- $UPP
- 000
- 1
- 100
- 2021
- 24
- 30
- 40
- 500
- 7
- 8
- a
- Able
- Om oss
- acceleratorer
- tillgång
- Konto
- konton
- Uppnå
- uppnås
- tvärs
- Handling
- åtgärder
- lägga till
- Dessutom
- Annat
- afrika
- Efter
- AI
- AI / ML
- algoritmer
- Alla
- fördelning
- tillåter
- redan
- också
- amason
- Amazon EC2
- Amazon SageMaker
- Amazon Web Services
- mängd
- an
- analys
- analysera
- och
- Annan
- vilken som helst
- längre
- api
- tillämpas
- Ansök
- Tillämpa
- lämpligt
- cirka
- ÄR
- konstgjord
- artificiell intelligens
- Konstgjord intelligens (AI)
- AS
- associerad
- At
- bifoga
- försökte
- bil
- automatiskt
- tillgänglig
- undvika
- AWS
- tillbaka
- baserat
- BE
- därför att
- varit
- innan
- nedan
- fördelaktigt
- fördel
- Fördelarna
- BÄST
- bästa praxis
- Bättre
- Stor
- större
- fakturering
- Blockera
- Fördelning
- föra
- SLUTRESULTAT
- inbyggd
- men
- by
- KAN
- kandidat
- kandidater
- kapacitet
- Kapacitet
- Vid
- fall
- vissa
- Förändringar
- egenskaper
- laddning
- laddad
- avgifter
- val
- Välja
- välja
- klassiska
- Klättring
- kluster
- koda
- förkylning
- kombinationer
- kombinera
- kombinerad
- komma
- kommer
- Gemensam
- vanligen
- fullborda
- komponent
- komponenter
- Compute
- dator
- Datorsyn
- konkurrent
- konfiguration
- i följd
- Tänk
- överväganden
- konsolidera
- konsoliderar
- konsumeras
- konsumtion
- Behållare
- Behållare
- innehåller
- kontinuerlig
- Kärna
- korrekt
- Pris
- Kostnadshantering
- kostnadseffektiv
- Kostar
- kunde
- skapa
- skapande
- För närvarande
- beställnings
- Kunder
- dagligen
- datum
- datauppsättningar
- Dagar
- beslutar
- Avgörande
- djup
- djupt lärande
- Standard
- Efterfrågan
- beror
- distribuera
- utplacerade
- utplacera
- utplacering
- vecklas ut
- Designa
- utformade
- önskas
- detalj
- detaljer
- Bestämma
- olika
- diskutera
- Visa
- displayer
- distribuera
- do
- inte
- gjort
- inte
- dubbla
- ner
- ladda ner
- grund
- under
- varje
- Tidigare
- lätt
- öster
- ekosystemet
- effektiv
- antingen
- ge
- ge
- möjliggöra
- möjliggör
- Slutpunkt
- energi
- förbättra
- säkerställa
- Företag
- Miljö
- miljöer
- lika
- Motsvarande
- fel
- fel
- upprättar
- uppskatta
- Europa
- utvärdera
- händelse
- exempel
- överstiga
- utbyta
- förväntat
- erfarenhet
- experimentera
- förklarade
- utforska
- explorer
- extensivt
- extra
- ögat
- underlättande
- MISSLYCKAS
- Misslyckades
- familj
- snabbare
- Leverans
- få
- färre
- Fil
- Filer
- filtrera
- filtrering
- filter
- Förnamn
- passa
- flexibel
- Fokus
- efter
- följer
- För
- hittade
- fyra
- från
- full
- funktioner
- Vidare
- Få
- Allmänt
- generera
- generativ
- Generativ AI
- skaffa sig
- ges
- god
- GPU
- grafer
- stor
- större
- Grupp
- vägleda
- Handtag
- Har
- har
- he
- hjälpa
- hjälpte
- här
- Hög
- högre
- högsta
- hans
- Horisontell
- värd
- värd
- värdkostnader
- värdar
- timme
- ÖPPETTIDER
- Hur ser din drömresa ut
- How To
- Men
- html
- http
- HTTPS
- Hundratals
- i
- idealisk
- identifiera
- Idle
- if
- Inverkan
- slag
- med Esport
- förbättra
- in
- innefattar
- innefattar
- Inklusive
- Ökar
- pekar på
- individuellt
- industrier
- informationen
- Infrastruktur
- innovativa
- ingång
- insikter
- exempel
- instruktioner
- Intelligens
- interaktion
- invändigt
- in
- Beskrivning
- involverar
- Israel
- IT
- DESS
- sig
- Jobb
- Lediga jobb
- jpg
- Angelägen
- hålla
- Nyckel
- språk
- Large
- större
- Efternamn
- Latens
- lansera
- lanserades
- leda
- Leads
- lärt
- inlärning
- t minst
- Lärdomar
- Lärdomar
- Nivå
- Hävstång
- livscykel
- tycka om
- linje
- kopplade
- Lista
- litteraturen
- läsa in
- lokal
- läge
- Lång
- längre
- se
- Låg
- lägre
- sänkning
- Maskinen
- maskininlärning
- bibehålla
- upprätthålla
- upprätthåller
- göra
- GÖR
- hantera
- förvaltade
- ledning
- hanteringsverktyg
- chef
- manuellt
- kartor
- markant
- Match
- maximal
- Maj..
- betyder
- Möt
- Minne
- nämnts
- metriska
- Metrics
- Mitten
- Mellanöstern
- kanske
- minsta
- minuter
- ML
- Mode
- modell
- modeller
- Övervaka
- övervakas
- övervakning
- Månad
- månad
- månader
- mer
- Filmer
- Multi-Model Endpoint
- multipel
- Musik
- måste
- namn
- namn
- nödvändigt för
- Behöver
- behövs
- behov
- nät
- NÄTVERKSAVBROTT
- Nya
- nlp
- Nej
- anmälan
- anmälningar
- antal
- objekt
- få
- erhållna
- of
- sänkt
- Erbjudanden
- offline
- on
- ONE
- nätet
- endast
- driva
- möjligheter
- optimala
- optimering
- Optimera
- optimera
- Alternativet
- Tillbehör
- or
- beställa
- organisationer
- Övriga
- ut
- strömavbrott
- skisse
- produktion
- utestående
- över
- egen
- Parallell
- parameter
- parametrar
- del
- passera
- Förbi
- brinner
- Tidigare
- Mönster
- mönster
- Betala
- procentuell
- prestanda
- perioden
- periodisk
- perspektiv
- plocka
- rörledning
- Planen
- planer
- plato
- Platon Data Intelligence
- PlatonData
- policy
- eventuellt
- Inlägg
- inlägg
- den mäktigaste
- praktiken
- praxis
- Förutsägelser
- pris
- prissättning
- prissättningsmodell
- Proaktiv
- process
- Bearbetad
- processer
- bearbetning
- processorer
- Produktion
- främja
- ge
- förutsatt
- ger
- tillhandahålla
- tillhandahållande
- syfte
- sätta
- sökfrågor
- område
- Betygsätta
- snarare
- nå
- Läsning
- verklig
- realtid
- motta
- mottagna
- erhåller
- rekommenderar
- rekommendationer
- rekommenderas
- rekommenderar
- post
- register
- minska
- region
- meddelanden
- förblir
- avlägsen
- avlägsnas
- rapport
- Rapportering
- Rapport
- begära
- förfrågningar
- Obligatorisk
- Krav
- resurs
- Resurser
- respons
- REST
- resultera
- Resultat
- återgår
- höger
- sten
- Rulla
- rutter
- Regel
- regler
- Körning
- rinnande
- sagemaker
- SageMaker Inference
- Samma
- Save
- Besparingar
- Skala
- skalor
- skalning
- scenarier
- planerad
- repa
- skript
- sekunder
- sektioner
- se
- vald
- väljer
- senior
- skickas
- separat
- Serier
- Server
- service
- Tjänster
- portion
- in
- inställning
- flera
- skugga
- Dela
- hon
- skall
- show
- visade
- visas
- Visar
- Liknande
- Enkelt
- eftersom
- enda
- Storlek
- storlekar
- Skiva
- Small
- mindre
- So
- Lösningar
- några
- Källa
- specialist
- specifik
- specifikationer
- spendera
- delas
- stapel
- standard
- starta
- igång
- Steg
- förvaring
- lagras
- starkt
- strukturerade
- framgång
- framgångsrik
- Framgångsrikt
- sådana
- tillräcklig
- lämplig
- stödja
- stödja proaktivt
- Som stöds
- Stöder
- system
- MÄRKA
- Ta
- tar
- uppgifter
- grupp
- Teknisk
- testa
- Testning
- tester
- än
- den där
- Smakämnen
- deras
- Dem
- sedan
- Där.
- vari
- därför
- Dessa
- saker
- detta
- de
- Genom
- genomströmning
- tid
- gånger
- till
- verktyg
- verktyg
- ämne
- Totalt
- trafik
- Utbildning
- Förvandla
- transformatorer
- Trender
- sann
- vänder
- Typ
- typer
- underliggande
- till skillnad från
- oförutsägbar
- uppladdad
- Användning
- användning
- användningsfall
- Begagnade
- användningar
- med hjälp av
- vanligen
- Använda
- BEKRÄFTA
- värde
- Värden
- Variant
- olika
- utsikt
- synlighet
- syn
- visualisering
- volym
- volymer
- vänta
- vill
- Sätt..
- we
- webb
- webbservice
- VÄL
- Vad
- när
- om
- som
- medan
- bred
- Brett utbud
- kommer
- med
- inom
- utan
- arbetade
- arbetstagaren
- arbetare
- fungerar
- skrivning
- skriven
- Om er
- Din
- zephyrnet
- noll-