In 2021 lanceerden we AWS ondersteunt proactieve services kader van de AWS Enterprise-ondersteuning plan. Sinds de introductie hebben we honderden klanten geholpen hun workloads te optimaliseren, vangrails te plaatsen en de zichtbaarheid van de kosten en het gebruik van hun machine learning-workloads te verbeteren.
In deze reeks berichten delen we geleerde lessen over het optimaliseren van kosten in Amazon Sage Maker. in Deel 1, hebben we laten zien hoe u aan de slag kunt gaan AWS-kostenverkenner om mogelijkheden voor kostenoptimalisatie in SageMaker te identificeren. In dit bericht richten we ons op SageMaker-inferentie-omgevingen: real-time inferentie, batchtransformatie, asynchrone inferentie en serverloze inferentie.
SageMaker biedt meerdere inferentie-opties waaruit u kunt kiezen op basis van uw werklastvereisten:
- Real-time gevolgtrekking voor online, lage latentie of hoge doorvoervereisten
- Batch-transformatie voor offline, geplande verwerking en wanneer u geen permanent eindpunt nodig heeft
- Asynchrone gevolgtrekking voor wanneer u grote payloads heeft met lange verwerkingstijden en verzoeken in de wachtrij wilt plaatsen
- Serverloze gevolgtrekking voor wanneer u intermitterende of onvoorspelbare verkeerspatronen heeft en een koude start kunt verdragen
In de volgende secties bespreken we elke gevolgtrekkingsoptie in meer detail.
SageMaker realtime gevolgtrekking
Wanneer u een eindpunt maakt, voegt SageMaker een Amazon elastische blokwinkel (Amazon EBS) opslagvolume naar de Amazon Elastic Compute-cloud (Amazon EC2) instantie die het eindpunt host. Dit geldt voor alle instantietypen die niet worden geleverd met een SSD-opslag. Omdat de d*-instantietypen worden geleverd met een NVMe SSD-opslag, koppelt SageMaker geen EBS-opslagvolume aan deze ML-rekeninstanties. Verwijzen naar Opslagvolumes van hostinstanties voor de grootte van de opslagvolumes die SageMaker koppelt voor elk instantietype voor een enkel eindpunt en voor een eindpunt met meerdere modellen.
De kosten van real-time eindpunten van SageMaker zijn gebaseerd op het verbruik per instantie-uur voor elke instantie terwijl het eindpunt actief is, de kosten per GB-maand van ingerichte opslag (EBS-volume), evenals de GB-gegevens die in en uit de eindpuntinstantie worden verwerkt, zoals beschreven in Amazon SageMaker-prijzen. In Cost Explorer kunt u real-time eindpuntkosten bekijken door een filter toe te passen op het gebruikstype. De namen van deze gebruikstypen zijn als volgt gestructureerd:
REGION-Host:instanceType
(bijvoorbeeld,USE1-Host:ml.c5.9xlarge
)REGION-Host:VolumeUsage.gp2
(bijvoorbeeld,USE1-Host:VolumeUsage.gp2
)REGION-Hst:Data-Bytes-Out
(bijvoorbeeld,USE2-Hst:Data-Bytes-In
)REGION-Hst:Data-Bytes-Out
(bijvoorbeeld,USW2-Hst:Data-Bytes-Out)
Zoals te zien is in de volgende schermafbeelding, filteren op gebruikstype Host:
toont een lijst met real-time hostinggebruikstypen in een account.
U kunt specifieke gebruikstypen selecteren of selecteren Alles selecteren En kies Solliciteer om de kostenverdeling van het real-time hostinggebruik van SageMaker weer te geven. Om de uitsplitsing van de kosten en het gebruik per instantie-uren te zien, moet u alle deselecteren REGION-Host:VolumeUsage.gp2
gebruikstypen voordat u het gebruikstypefilter toepast. U kunt ook aanvullende filters toepassen, zoals rekeningnummer, EC2-exemplaartype, tag voor kostentoewijzing, Regio en meer. De volgende schermafbeelding toont kosten- en gebruiksgrafieken voor de geselecteerde soorten hostinggebruik.
Bovendien kunt u de kosten van een of meer hostinginstanties bekijken door de Instantietype filter. De volgende schermafbeelding toont een uitsplitsing van kosten en gebruik voor hostinginstantie ml.p2.xlarge.
Evenzo kunnen de kosten voor verwerkte en verwerkte GB-gegevens worden weergegeven door de bijbehorende gebruikstypen als een toegepast filter te selecteren, zoals weergegeven in de volgende schermafbeelding.
Nadat u de gewenste resultaten heeft bereikt met filters en groeperingen, kunt u uw resultaten downloaden door te kiezen Downloaden als CSV of sla het rapport op door te kiezen Opslaan in rapportbibliotheek. Raadpleeg voor algemene richtlijnen voor het gebruik van Cost Explorer Nieuwe look en veelvoorkomende use cases van AWS Cost Explorer.
Optioneel kunt u inschakelen AWS kosten- en gebruiksrapporten (AWS CUR) om inzicht te krijgen in de kosten en gebruiksgegevens voor uw accounts. AWS CUR bevat details over het AWS-verbruik per uur. Het is erin opgeslagen Amazon eenvoudige opslagservice (Amazon S3) in de betalerrekening, die gegevens consolideert voor alle gekoppelde rekeningen. U kunt query's uitvoeren om trends in uw gebruik te analyseren en passende maatregelen te nemen om de kosten te optimaliseren. Amazone Athene is een serverloze queryservice die u kunt gebruiken om de gegevens van AWS CUR in Amazon S3 te analyseren met behulp van standaard SQL. Meer informatie en voorbeeldvragen vindt u in de AWS CUR-querybibliotheek.
U kunt ook AWS CUR-gegevens invoeren Amazon QuickSight, waar u het op elke gewenste manier kunt snijden en dobbelen voor rapportage- of visualisatiedoeleinden. Voor instructies, zie Hoe kan ik het AWS Cost and Usage Report (CUR) opnemen en visualiseren in Amazon QuickSight.
U kunt informatie op resourceniveau verkrijgen, zoals endpoint-ARN, endpoint-instantietypen, instantietarief per uur, dagelijkse gebruiksuren en meer van AWS CUR. U kunt ook tags voor kostentoewijzing in uw zoekopdracht opnemen voor een extra gedetailleerdheidsniveau. De volgende voorbeeldquery retourneert real-time gebruik van hostingresources voor de afgelopen 3 maanden voor de opgegeven betaleraccount:
De volgende schermafbeelding toont de resultaten die zijn verkregen door de query uit te voeren met Athena. Voor meer informatie, zie Kosten- en gebruiksrapporten opvragen met Amazon Athena.
Het resultaat van de query toont dat eindpunt mme-xgboost-housing
met ml.x4.xlarge rapporteert de instantie 24 uur runtime gedurende meerdere opeenvolgende dagen. Het instantietarief is $ 0.24/uur en de dagelijkse kosten voor 24 uur draaien zijn $ 5.76.
AWS CUR-resultaten kunnen u helpen bij het identificeren van patronen van eindpunten die gedurende opeenvolgende dagen worden uitgevoerd in elk van de gekoppelde accounts, evenals eindpunten met de hoogste maandelijkse kosten. Dit kan u ook helpen beslissen of de eindpunten in niet-productieaccounts kunnen worden verwijderd om kosten te besparen.
Optimaliseer de kosten voor real-time endpoints
Vanuit het oogpunt van kostenbeheer is het belangrijk om onderbenutte (of te grote) instanties te identificeren en de omvang en het aantal exemplaren, indien nodig, in overeenstemming te brengen met de werklastvereisten. Er wordt geschreven naar algemene systeemstatistieken zoals CPU/GPU-gebruik en geheugengebruik Amazon Cloud Watch voor alle hostinginstanties. Voor real-time eindpunten stelt SageMaker verschillende aanvullende statistieken beschikbaar in CloudWatch. Enkele van de algemeen gecontroleerde statistieken zijn het aantal aanroepen en 4xx/5xx-aanroepfouten. Raadpleeg voor een volledige lijst met statistieken Bewaak Amazon SageMaker met Amazon CloudWatch.
de metriek CPUUtilization
geeft de som van het gebruik van elke afzonderlijke CPU-kern. Het CPU-gebruik van elk kernbereik is 0โ100. Als er bijvoorbeeld vier CPU's zijn, is de CPUUtilization
bereik is 0โ400%. De metriek MemoryUtilization
is het percentage van het geheugen dat wordt gebruikt door de containers op een instantie. Dit waardebereik is 0โ100%. De volgende schermafbeelding toont een voorbeeld van CloudWatch-statistieken CPUUtilization
en MemoryUtilization
voor een eindpuntinstantie ml.m4.10xlarge die wordt geleverd met 40 vCPU's en 160 GiB-geheugen.
Deze metrische grafieken tonen een maximaal CPU-gebruik van ongeveer 3,000%, wat overeenkomt met 30 vCPU's. Dit betekent dat dit eindpunt niet meer dan 30 vCPU's gebruikt van de totale capaciteit van 40 vCPU's. Evenzo is het geheugengebruik minder dan 6%. Met behulp van deze informatie kunt u mogelijk experimenteren met een kleinere instantie die aan deze resourcebehoefte kan voldoen. Verder is de CPUUtilization
metric toont een klassiek patroon van periodiek hoge en lage CPU-vraag, waardoor dit eindpunt een goede kandidaat is voor automatisch schalen. U kunt beginnen met een kleinere instantie en eerst uitschalen naarmate uw rekenvraag verandert. Zie voor informatie Schaal Amazon SageMaker-modellen automatisch.
SageMaker is geweldig voor het testen van nieuwe modellen, omdat u ze eenvoudig kunt implementeren in een A/B-testomgeving met behulp van productie varianten, en u betaalt alleen voor wat u gebruikt. Elke productievariant wordt uitgevoerd op een eigen rekeninstantie en u betaalt per verbruikte instantie-uur voor elke instantie terwijl de variant wordt uitgevoerd.
SageMaker ondersteunt ook schaduw varianten, die dezelfde componenten hebben als een productievariant en draaien op hun eigen rekeninstantie. Met schaduwvarianten implementeert SageMaker het model automatisch in een testomgeving, stuurt een kopie van de inferentieverzoeken die door het productiemodel zijn ontvangen in realtime naar het testmodel en verzamelt prestatiestatistieken zoals latentie en doorvoer. Dit stelt u in staat om elke nieuwe kandidaat-component van uw modelservingstack te valideren voordat u deze naar productie promoot.
Wanneer u klaar bent met uw tests en het eindpunt of de varianten niet meer uitgebreid gebruikt, moet u het verwijderen om kosten te besparen. Omdat het model is opgeslagen in Amazon S3, kunt u het naar behoefte opnieuw maken. U kunt deze eindpunten automatisch detecteren en corrigerende maatregelen nemen (zoals het verwijderen ervan) door gebruik te maken van Amazon CloudWatch-evenementen en AWS Lambda functies. U kunt bijvoorbeeld de Invocations
metric om het totale aantal verzoeken te krijgen dat naar een modeleindpunt is verzonden en vervolgens te detecteren of de eindpunten het afgelopen aantal uren inactief zijn geweest (zonder aanroepen gedurende een bepaalde periode, zoals 24 uur).
Als u meerdere onderbenutte eindpuntinstanties heeft, overweeg dan hostingopties zoals eindpunten met meerdere modellen (MME's), eindpunten met meerdere containers (MCE's), en seriรซle inferentiepijplijnen om het gebruik te consolideren naar minder eindpuntinstanties.
Voor real-time en asynchrone implementatie van inferentiemodellen kunt u de kosten en prestaties optimaliseren door modellen op SageMaker te implementeren met behulp van AWS Graviton. AWS Graviton is een familie van processors ontworpen door AWS die de beste prijs-kwaliteitverhouding bieden en energiezuiniger zijn dan hun x86-tegenhangers. Raadpleeg voor hulp bij het implementeren van een ML-model op op AWS Graviton gebaseerde instanties en details over het prijs-prestatievoordeel Voer machine learning-inferentieworkloads uit op AWS Graviton-gebaseerde instanties met Amazon SageMaker. SageMaker ondersteunt ook AWS Inferentie versnellers door de ml.inf2 familie van instanties voor het inzetten van ML-modellen voor real-time en asynchrone inferentie. U kunt deze instanties op SageMaker gebruiken om tegen lage kosten hoge prestaties te bereiken voor generatieve kunstmatige intelligentie (AI)-modellen, waaronder grote taalmodellen (LLM's) en vision transformers.
Bovendien kunt u gebruiken Amazon SageMaker Inferentie-aanbeveler om belastingstests uit te voeren en de prijs-prestatievoordelen van de implementatie van uw model op deze instanties te evalueren. Raadpleeg voor meer informatie over het automatisch detecteren van inactieve SageMaker-eindpunten, de juiste grootte van instanties en automatisch schalen voor SageMaker-eindpunten Zorg voor efficiรซnte rekenbronnen op Amazon SageMaker.
SageMaker batch-transformatie
Batch gevolgtrekking, of offline gevolgtrekking, is het proces van het genereren van voorspellingen over een reeks waarnemingen. Offline voorspellingen zijn geschikt voor grotere datasets en in gevallen waarin u het zich kunt veroorloven om enkele minuten of uren op een reactie te wachten.
De kosten voor SageMaker-batchtransformatie zijn gebaseerd op het verbruik per instantie-uur voor elke instantie terwijl de batchtransformatietaak wordt uitgevoerd, zoals beschreven in Amazon SageMaker-prijzen. In Cost Explorer kunt u de kosten van batchtransformatie onderzoeken door een filter toe te passen op het gebruikstype. De naam van dit gebruikstype is gestructureerd als REGION-Tsform:instanceType
(bijvoorbeeld, USE1-Tsform:ml.c5.9xlarge
).
Zoals te zien is in de volgende schermafbeelding, filteren op gebruikstype Tsform:
toont een lijst met gebruikstypen van SageMaker-batchtransformatie in een account.
U kunt specifieke gebruikstypen selecteren of selecteren Alles selecteren En kies Solliciteer om de kostenspecificatie van het gebruik van batchtransformatie-exemplaren voor de geselecteerde typen weer te geven. Zoals eerder vermeld, kunt u ook extra filters toepassen. De volgende schermafbeelding toont kosten- en gebruiksgrafieken voor de geselecteerde gebruikstypen voor batchtransformaties.
Optimaliseer de kosten voor batchtransformatie
SageMaker-batchtransformatie brengt u alleen kosten in rekening voor de instanties die worden gebruikt terwijl uw taken worden uitgevoerd. Als uw gegevens zich al in Amazon S3 bevinden, zijn er geen kosten verbonden aan het lezen van invoergegevens van Amazon S3 en het schrijven van uitvoergegevens naar Amazon S3. Er wordt geprobeerd alle uitvoerobjecten te uploaden naar Amazon S3. Als alles succesvol is, wordt de batchtransformatietaak gemarkeerd als voltooid. Als een of meer objecten mislukken, wordt de batchtransformatietaak gemarkeerd als mislukt.
Kosten voor batchtransformatietaken zijn van toepassing in de volgende scenario's:
- De baan is succesvol
- Mislukking door
ClientError
en de modelcontainer is SageMaker of een door SageMaker beheerd raamwerk - Mislukking door
AlgorithmError
orClientError
en de modelcontainer is uw eigen aangepaste container (BYOC)
Hieronder volgen enkele van de best practices voor het optimaliseren van een SageMaker-batchtransformatietaak. Deze aanbevelingen kunnen de totale looptijd van uw batchtransformatietaak verkorten, waardoor de kosten dalen:
- Zet de BatchStrategie naar
MultiRecord
enSplitType
naarLine
als u de batchtransformatietaak nodig hebt om minibatches te maken van het invoerbestand. Als het de dataset niet automatisch in mini-batches kan splitsen, kunt u deze in mini-batches verdelen door elke batch in een apart invoerbestand te plaatsen, dat in de S3-bucket van de gegevensbron wordt geplaatst. - Zorg ervoor dat de batchgrootte in het geheugen past. SageMaker handelt dit meestal automatisch af; bij het handmatig verdelen van batches moet dit echter worden afgestemd op basis van het geheugen.
- Batchtransformatie verdeelt de S3-objecten in de invoer met een sleutel en wijst die objecten toe aan instanties. Als u meerdere bestanden heeft, kan รฉรฉn exemplaar worden verwerkt
input1.csv
, en een ander exemplaar kan worden verwerktinput2.csv
. Als u รฉรฉn invoerbestand hebt maar meerdere rekeninstanties initialiseert, verwerkt slechts รฉรฉn instantie het invoerbestand en zijn de overige instanties inactief. Zorg ervoor dat het aantal bestanden gelijk is aan of groter is dan het aantal exemplaren. - Als je een groot aantal kleine bestanden hebt, kan het nuttig zijn om meerdere bestanden te combineren tot een klein aantal grotere bestanden om de interactietijd van Amazon S3 te verkorten.
- Als u de CreรซerTransformJob API kunt u de tijd die nodig is om batchtransformatietaken te voltooien, verminderen door optimale waarden te gebruiken voor parameters zoals MaxPayloadInMB, MaxConcurrentTransformsof BatchStrategie:
MaxConcurrentTransforms
geeft het maximum aantal parallelle verzoeken aan dat naar elke instantie in een transformatietaak kan worden verzonden. De ideale waarde voorMaxConcurrentTransforms
is gelijk aan het aantal vCPU-kernen in een instantie.MaxPayloadInMB
is de maximaal toegestane grootte van de payload, in MB. De waarde erinMaxPayloadInMB
moet groter zijn dan of gelijk zijn aan de grootte van รฉรฉn record. Om de grootte van een record in MB te schatten, deelt u de grootte van uw dataset door het aantal records. Om ervoor te zorgen dat de records binnen de maximale payload-grootte passen, raden we aan een iets grotere waarde te gebruiken. De standaardwaarde is 6 MB.MaxPayloadInMB
mag niet groter zijn dan 100 MB. Als u de optioneleMaxConcurrentTransforms
parameter, dan de waarde van (MaxConcurrentTransforms
*MaxPayloadInMB
) mag ook niet groter zijn dan 100 MB.- Voor gevallen waarin de payload willekeurig groot kan zijn en wordt verzonden met behulp van HTTP-chunked-codering, stelt u de MaxPayloadInMB-waarde in op 0. Deze functie werkt alleen in ondersteunde algoritmen. Momenteel ondersteunen de ingebouwde algoritmen van SageMaker geen HTTP-chunked-codering.
- Batch-inferentietaken zijn meestal goede kandidaten voor horizontaal schalen. Elke werknemer binnen een cluster kan met een andere subset van gegevens werken zonder dat informatie met andere werknemers hoeft te worden uitgewisseld. AWS biedt meerdere opslag- en rekenopties die horizontaal schalen mogelijk maken. Als een enkele instantie niet voldoende is om aan uw prestatie-eisen te voldoen, kunt u overwegen om meerdere instanties parallel te gebruiken om de werklast te verdelen. Raadpleeg voor de belangrijkste overwegingen bij het ontwerpen van batchtransformatietaken Batchgevolgtrekking op schaal met Amazon SageMaker.
- Bewaak continu de prestatiestatistieken van uw SageMaker-batchtransformatietaken met behulp van CloudWatch. Zoek naar knelpunten, zoals een hoog CPU- of GPU-gebruik, geheugengebruik of netwerkdoorvoer, om te bepalen of u instantiegroottes of configuraties moet aanpassen.
- SageMaker gebruikt de Amazon S3 meerdelige upload-API om resultaten van een batchtransformatietaak naar Amazon S3 te uploaden. Als er een fout optreedt, worden de geรผploade resultaten verwijderd uit Amazon S3. In sommige gevallen, bijvoorbeeld wanneer er een netwerkstoring optreedt, kan er een onvolledige meerdelige upload achterblijven in Amazon S3. Om te voorkomen dat er opslagkosten in rekening worden gebracht, raden we u aan om de S3 bucket-beleid aan de levenscyclusregels van de S3-bucket. Dit beleid verwijdert onvolledige meerdelige uploads die mogelijk zijn opgeslagen in de S3-bucket. Voor meer informatie, zie Uw opslaglevenscyclus beheren.
SageMaker asynchrone gevolgtrekking
Asynchrone inferentie is een uitstekende keuze voor kostengevoelige workloads met grote payloads en burst-verkeer. Het kan tot 1 uur duren voordat aanvragen zijn verwerkt en de payload kan oplopen tot 1 GB, dus het is meer geschikt voor workloads met minder latentievereisten.
Het aanroepen van asynchrone eindpunten verschilt van real-time eindpunten. In plaats van een verzoek-payload synchroon met het verzoek door te geven, uploadt u de payload naar Amazon S3 en geeft u een S3-URI door als onderdeel van het verzoek. Intern houdt SageMaker een wachtrij bij met deze verzoeken en verwerkt deze. Tijdens het maken van het eindpunt kunt u optioneel een Amazon eenvoudige meldingsservice (Amazon SNS) onderwerp om succes- of foutmeldingen te ontvangen. Wanneer u de melding ontvangt dat uw inferentieverzoek met succes is verwerkt, hebt u toegang tot het resultaat op de Amazon S3-uitvoerlocatie.
De kosten voor asynchrone inferentie zijn gebaseerd op het verbruik per instantie-uur voor elke instantie terwijl het eindpunt actief is, de kosten van GB-maanden van ingerichte opslag, evenals GB-gegevens die in en uit de eindpuntinstantie zijn verwerkt, zoals beschreven in Amazon SageMaker-prijzen. In Cost Explorer kunt u asynchrone inferentiekosten filteren door een filter toe te passen op het gebruikstype. De naam van dit gebruikstype is gestructureerd als REGION-AsyncInf:instanceType
(bijvoorbeeld, USE1-AsyncInf:ml.c5.9xlarge
). Houd er rekening mee dat GB-volume en verwerkte gegevens in GB hetzelfde zijn als real-time eindpunten, zoals eerder in dit bericht vermeld.
Zoals te zien is in de volgende schermafbeelding, filteren op gebruikstype AsyncInf:
in Cost Explorer wordt een uitsplitsing van de kosten weergegeven op basis van asynchrone eindpuntgebruikstypen.
Om de uitsplitsing van de kosten en het gebruik per instantie-uren te zien, moet u alle deselecteren REGION-Host:VolumeUsage.gp2
gebruikstypen voordat u het gebruikstypefilter toepast. U kunt ook aanvullende filters toepassen. Informatie op resourceniveau, zoals endpoint-ARN, endpoint-instantietypes, instantietarief per uur en dagelijkse gebruiksuren kan worden verkregen van AWS CUR. Het volgende is een voorbeeld van een AWS CUR-query om het gebruik van asynchrone hostingbronnen voor de afgelopen 3 maanden te verkrijgen:
De volgende schermafbeelding toont de resultaten die zijn verkregen door de AWS CUR-query uit te voeren met behulp van Athena.
Het resultaat van de query toont dat eindpunt sagemaker-abc-model-5
met ml.m5.xlarge rapporteert de instantie 24 uur runtime gedurende meerdere opeenvolgende dagen. Het instantietarief is $ 0.23/uur en de dagelijkse kosten voor 24 uur draaien zijn $ 5.52.
Zoals eerder vermeld, kunnen AWS CUR-resultaten u helpen bij het identificeren van patronen van eindpunten die gedurende opeenvolgende dagen worden uitgevoerd, evenals eindpunten met de hoogste maandelijkse kosten. Dit kan u ook helpen beslissen of de eindpunten in niet-productieaccounts kunnen worden verwijderd om kosten te besparen.
Optimaliseer de kosten voor asynchrone inferentie
Net als de real-time eindpunten, zijn de kosten voor asynchrone eindpunten gebaseerd op het gebruik van het instantietype. Daarom is het belangrijk om onderbenutte instanties te identificeren en de grootte ervan aan te passen op basis van de werklastvereisten. Om asynchrone eindpunten te monitoren, maakt SageMaker verschillende statistieken zoals ApproximateBacklogSize
, HasBacklogWithoutCapacity
, en meer beschikbaar in CloudWatch. Deze statistieken kunnen aanvragen in de wachtrij voor een instantie weergeven en kunnen worden gebruikt voor het automatisch schalen van een eindpunt. Asynchrone inferentie van SageMaker omvat ook statistieken op hostniveau. Zie voor informatie over statistieken op hostniveau SageMaker-taken en eindpuntstatistieken. Deze metrische gegevens kunnen het gebruik van resources laten zien waarmee u de instantie op de juiste maat kunt krijgen.
SageMaker ondersteunt automatisch schalen voor asynchrone eindpunten. In tegenstelling tot real-time gehoste eindpunten, ondersteunen asynchrone inferentie-eindpunten het verkleinen van instanties naar nul door de minimale capaciteit in te stellen op nul. Voor asynchrone eindpunten raadt SageMaker u ten zeerste aan om een โโbeleidsconfiguratie te maken voor het volgen van doelen voor een geรฏmplementeerd model (variant). U moet het schaalbeleid definiรซren dat is geschaald op de ApproximateBacklogPerInstance
aangepaste metriek en stel de MinCapacity
waarde op nul.
Met asynchrone inferentie kunt u kosten besparen door het aantal instanties automatisch naar nul te schalen wanneer er geen verzoeken zijn om te verwerken, zodat u alleen betaalt wanneer uw eindpunt verzoeken verwerkt. Verzoeken die worden ontvangen wanneer er nul exemplaren zijn, worden in de wachtrij geplaatst voor verwerking nadat het eindpunt is opgeschaald. Daarom kunt u voor use-cases die een koude start-penalty van enkele minuten kunnen tolereren, optioneel het aantal endpoint-exemplaren terugschalen naar nul wanneer er geen openstaande verzoeken zijn en weer opschalen wanneer er nieuwe verzoeken binnenkomen. De koude starttijd is afhankelijk van de tijd die nodig is om een โโnieuw eindpunt vanaf nul te lanceren. Ook als het model zelf groot is, kan de tijd langer zijn. Als uw taak naar verwachting langer zal duren dan de verwerkingstijd van 1 uur, kunt u SageMaker-batchtransformatie overwegen.
Daarnaast kunt u ook rekening houden met de wachtrijtijd van uw verzoek in combinatie met de verwerkingstijd om het instantietype te kiezen. Als uw use case bijvoorbeeld urenlange wachttijd aankan, kunt u een kleinere instantie kiezen om kosten te besparen.
Raadpleeg voor meer informatie over de juiste grootte van instanties en automatisch schalen voor SageMaker-eindpunten Zorg voor efficiรซnte rekenbronnen op Amazon SageMaker.
Serverloze gevolgtrekking
Met serverloze inferentie kunt u ML-modellen voor inferentie implementeren zonder dat u de onderliggende infrastructuur hoeft te configureren of te beheren. Op basis van het aantal inferentieverzoeken dat uw model ontvangt, voorziet SageMaker serverloze inferentie automatisch in, schaalt en schakelt rekencapaciteit uit. Als gevolg hiervan betaalt u alleen voor de rekentijd om uw inferentiecode uit te voeren en de hoeveelheid verwerkte gegevens, niet voor inactieve tijd. Voor serverloze eindpunten is het inrichten van instanties niet nodig. U dient de geheugengrootte en maximale gelijktijdigheid. Omdat serverloze eindpunten op aanvraag rekenresources inrichten, kan uw eindpunt een paar seconden extra latentie (koude start) ervaren voor de eerste aanroep na een periode van inactiviteit. U betaalt voor de rekencapaciteit die wordt gebruikt om deductieverzoeken te verwerken, gefactureerd per milliseconde, GB-maand van ingerichte opslag en de hoeveelheid verwerkte gegevens. De rekenkosten zijn afhankelijk van de geheugenconfiguratie die u kiest.
In Cost Explorer kunt u serverloze eindpuntkosten filteren door een filter toe te passen op het gebruikstype. De naam van dit gebruikstype is gestructureerd als REGION-ServerlessInf:Mem-MemorySize
(bijvoorbeeld, USE2-ServerlessInf:Mem-4GB
). Houd er rekening mee dat GB-volume en GB-gegevensverwerkingsgebruikstypen hetzelfde zijn als real-time eindpunten.
U kunt de uitsplitsing van de kosten bekijken door aanvullende filters toe te passen, zoals rekeningnummer, instantietype, regio en meer. De volgende schermafbeelding toont de uitsplitsing van de kosten door filters toe te passen voor het serverloze inferentiegebruikstype.
Optimaliseer de kosten voor serverloze inferentie
Bij het configureren van uw serverloze eindpunt kunt u de geheugengrootte en het maximale aantal gelijktijdige aanroepen opgeven. SageMaker serverloze inferentie wijst automatisch rekenbronnen toe in verhouding tot het geheugen dat u selecteert. Als u een grotere geheugengrootte kiest, heeft uw container toegang tot meer vCPU's. Met serverloze inferentie betaalt u alleen voor de rekencapaciteit die wordt gebruikt om deductieverzoeken te verwerken, gefactureerd per milliseconde, en de hoeveelheid verwerkte gegevens. De rekenkosten zijn afhankelijk van de geheugenconfiguratie die u kiest. De geheugengroottes die u kunt kiezen zijn 1024 MB, 2048 MB, 3072 MB, 4096 MB, 5120 MB en 6144 MB. De prijs stijgt met de toename van de geheugengrootte, zoals uitgelegd in Amazon SageMaker-prijzen, dus het is belangrijk om de juiste geheugengrootte te selecteren. Als algemene regel geldt dat de geheugengrootte minstens zo groot moet zijn als de grootte van uw model. Het is echter een goede gewoonte om te verwijzen naar het geheugengebruik bij het bepalen van de geheugengrootte van het eindpunt, naast de modelgrootte zelf.
Algemene best practices voor het optimaliseren van SageMaker-inferentiekosten
Het optimaliseren van de hostingkosten is geen eenmalige gebeurtenis. Het is een continu proces van het monitoren van de ingezette infrastructuur, gebruikspatronen en prestaties, en ook het scherp in de gaten houden van nieuwe innovatieve oplossingen die AWS uitbrengt en die van invloed kunnen zijn op de kosten. Houd rekening met de volgende best practices:
- Kies een geschikt instantietype โ SageMaker ondersteunt meerdere instantietypen, elk met verschillende combinaties van CPU, GPU, geheugen en opslagcapaciteit. Kies op basis van de resourcevereisten van uw model een instantietype dat de benodigde resources biedt zonder overmatige inrichting. Raadpleeg voor informatie over beschikbare SageMaker-instantietypen, hun specificaties en hulp bij het selecteren van de juiste instantie Zorg voor efficiรซnte rekenbronnen op Amazon SageMaker.
- Test met lokale modus โ Om fouten te detecteren en sneller te debuggen, wordt aanbevolen om de code en container (in het geval van BYOC) te testen in lokale modus voordat u de gevolgtrekkingsbelasting op de externe SageMaker-instantie uitvoert. Lokale modus is een geweldige manier om uw scripts te testen voordat u ze uitvoert in een door SageMaker beheerde hostingomgeving.
- Optimaliseer modellen om beter te presteren โ Niet-geoptimaliseerde modellen kunnen leiden tot langere looptijden en meer bronnen gebruiken. U kunt ervoor kiezen om meer of grotere instanties te gebruiken om de prestaties te verbeteren; dit leidt echter tot hogere kosten. Door uw modellen te optimaliseren zodat ze beter presteren, kunt u mogelijk de kosten verlagen door minder of kleinere instanties te gebruiken terwijl u dezelfde of betere prestatiekenmerken behoudt. Je kunt gebruiken Amazon SageMaker Neo met SageMaker-inferentie om modellen automatisch te optimaliseren. Voor meer details en voorbeelden, zie Optimaliseer de modelprestaties met Neo.
- Gebruik tags en tools voor kostenbeheer โ Om inzicht te houden in uw inferentieworkloads, wordt het aanbevolen om zowel tags als AWS-tools voor kostenbeheer te gebruiken, zoals AWS-budgetten AWS-factureringsconsole, en de prognosefunctie van Cost Explorer. U kunt SageMaker-spaarplannen ook verkennen als een flexibel prijsmodel. Voor meer informatie over deze opties, zie Deel 1 van deze serie.
Conclusie
In dit bericht hebben we advies gegeven over kostenanalyse en best practices bij het gebruik van SageMaker-inferentie-opties. Naarmate machine learning zich in alle sectoren als een krachtige tool vestigt, moet training en het uitvoeren van ML-modellen kosteneffectief blijven. SageMaker biedt een brede en diepe functieset om elke stap in de ML-pijplijn te vergemakkelijken en biedt mogelijkheden voor kostenoptimalisatie zonder de prestaties of flexibiliteit te beรฏnvloeden. Neem contact op met uw AWS-team voor kostenadvies voor uw SageMaker-workloads.
Over de auteurs
Deepali Rajale is een Senior AI/ML-specialist bij AWS. Ze werkt samen met zakelijke klanten en biedt technische begeleiding met best practices voor het implementeren en onderhouden van AI/ML-oplossingen in het AWS-ecosysteem. Ze heeft met een breed scala aan organisaties gewerkt aan verschillende use-cases voor deep learning met NLP en computervisie. Ze is gepassioneerd over het versterken van organisaties om generatieve AI te gebruiken om hun gebruikservaring te verbeteren. In haar vrije tijd houdt ze van films, muziek en literatuur.
Uri Rosenberg is de AI & ML Specialist Technical Manager voor Europa, het Midden-Oosten en Afrika. Uri is gevestigd in Israรซl en werkt om zakelijke klanten in staat te stellen alles wat met ML te maken heeft, te ontwerpen, bouwen en op schaal te gebruiken. In zijn vrije tijd houdt hij van fietsen, wandelen en klimmen.
- Door SEO aangedreven content en PR-distributie. Word vandaag nog versterkt.
- PlatoAiStream. Web3 gegevensintelligentie. Kennis versterkt. Toegang hier.
- De toekomst slaan met Adryenn Ashley. Toegang hier.
- Koop en verkoop aandelen in PRE-IPO-bedrijven met PREIPOยฎ. Toegang hier.
- Bron: https://aws.amazon.com/blogs/machine-learning/part-5-analyze-amazon-sagemaker-spend-and-determine-cost-optimization-opportunities-based-on-usage-part-5-hosting/
- : heeft
- :is
- :niet
- :waar
- $UP
- 000
- 1
- 100
- 2021
- 24
- 30
- 40
- 500
- 7
- 8
- a
- in staat
- Over
- versnellers
- toegang
- Account
- accounts
- Bereiken
- bereikt
- over
- Actie
- acties
- toevoegen
- toevoeging
- Extra
- Afrika
- Na
- AI
- AI / ML
- algoritmen
- Alles
- toewijzing
- toestaat
- al
- ook
- Amazone
- Amazon EC2
- Amazon Sage Maker
- Amazon Web Services
- bedragen
- an
- analyse
- analyseren
- en
- Nog een
- elke
- meer
- api
- toegepast
- Solliciteer
- Het toepassen van
- passend
- ongeveer
- ZIJN
- kunstmatig
- kunstmatige intelligentie
- Kunstmatige intelligentie (AI)
- AS
- geassocieerd
- At
- hechten
- gepoogd
- auto
- webmaster.
- Beschikbaar
- vermijd
- AWS
- terug
- gebaseerde
- BE
- omdat
- geweest
- vaardigheden
- onder
- heilzaam
- voordeel
- betekent
- BEST
- 'best practices'
- Betere
- Groot
- groter
- factuuradres
- Blok
- Storing
- brengen
- bouw
- ingebouwd
- maar
- by
- CAN
- kandidaat
- kandidaten
- capaciteiten
- Inhoud
- geval
- gevallen
- zeker
- Wijzigingen
- kenmerken
- lading
- opgeladen
- lasten
- keuze
- Kies
- het kiezen van
- klassiek
- Beklimming
- TROS
- code
- koud
- combinaties
- combineren
- gecombineerde
- hoe
- komt
- Gemeen
- algemeen
- compleet
- bestanddeel
- componenten
- Berekenen
- computer
- Computer visie
- gelijktijdig
- Configuratie
- opeenvolgend
- Overwegen
- overwegingen
- consolideren
- Consolideert
- geconsumeerd
- consumptie
- Containers
- containers
- bevat
- doorlopend
- Kern
- te corrigeren
- Kosten
- Kostenbeheer
- kostenefficient
- Kosten
- kon
- en je merk te creรซren
- het aanmaken
- Op dit moment
- gewoonte
- Klanten
- dagelijks
- gegevens
- datasets
- dagen
- beslissen
- Beslissen
- deep
- diepgaand leren
- Standaard
- Vraag
- afhankelijk
- implementeren
- ingezet
- het inzetten
- inzet
- ontplooit
- Design
- ontworpen
- gewenste
- detail
- gegevens
- Bepalen
- anders
- bespreken
- Display
- displays
- verdelen
- do
- Nee
- gedaan
- Dont
- verdubbelen
- beneden
- Download
- twee
- gedurende
- elk
- Vroeger
- gemakkelijk
- oosten
- ecosysteem
- doeltreffend
- beide
- machtigen
- empowering
- in staat stellen
- maakt
- Endpoint
- energie-niveau
- verhogen
- verzekeren
- Enterprise
- Milieu
- omgevingen
- gelijk
- Gelijkwaardig
- fout
- fouten
- vestigt
- schatting
- Europa
- schatten
- Event
- voorbeeld
- overtreffen
- uitwisseling
- verwacht
- ervaring
- experiment
- uitgelegd
- Verken
- ontdekkingsreiziger
- uitgebreid
- extra
- oog
- faciliterende
- FAIL
- Mislukt
- familie
- sneller
- Kenmerk
- weinig
- minder
- Dien in
- Bestanden
- filter
- filtering
- filters
- Voornaam*
- geschikt
- flexibel
- Focus
- volgend
- volgt
- Voor
- gevonden
- vier
- oppompen van
- vol
- functies
- Bovendien
- Krijgen
- Algemeen
- het genereren van
- generatief
- generatieve AI
- krijgen
- gegeven
- goed
- GPU
- grafieken
- groot
- meer
- Groep
- leiding
- Handvaten
- Hebben
- met
- he
- hulp
- geholpen
- haar
- Hoge
- hoger
- hoogst
- zijn
- Horizontaal
- gehost
- Hosting
- hosting kosten
- hosts
- uur
- HOURS
- Hoe
- How To
- Echter
- HTML
- http
- HTTPS
- Honderden
- i
- ideaal
- identificeren
- Idle
- if
- Impact
- impact
- belangrijk
- verbeteren
- in
- omvatten
- omvat
- Inclusief
- Verhoogt
- geeft aan
- individueel
- industrieรซn
- informatie
- Infrastructuur
- innovatieve
- invoer
- inzichten
- instantie
- instructies
- Intelligentie
- wisselwerking
- inwendig
- in
- Introductie
- waarbij
- Israรซl
- IT
- HAAR
- zelf
- Jobomschrijving:
- Vacatures
- jpg
- Keen
- houden
- sleutel
- taal
- Groot
- groter
- Achternaam*
- Wachttijd
- lancering
- gelanceerd
- leiden
- Leads
- geleerd
- leren
- minst
- Lessen
- Lessons Learned
- Niveau
- Hefboomwerking
- levenscyclus van uw product
- als
- Lijn
- gekoppeld
- Lijst
- literatuur
- laden
- lokaal
- plaats
- lang
- langer
- Kijk
- Laag
- te verlagen
- Het verlagen van
- machine
- machine learning
- onderhouden
- Het handhaven
- onderhoudt
- maken
- MERKEN
- beheer
- beheerd
- management
- management tools
- manager
- handmatig
- Maps
- gemarkeerd
- Match
- maximaal
- Mei..
- middel
- Maak kennis met
- Geheugen
- vermeld
- metriek
- Metriek
- Midden
- Midden-Oosten
- macht
- minimum
- minuten
- ML
- Mode
- model
- modellen
- monitor
- bewaakt
- Grensverkeer
- Maand
- maandelijks
- maanden
- meer
- Films
- Eindpunt voor meerdere modellen
- meervoudig
- Muziek
- Dan moet je
- naam
- namen
- noodzakelijk
- Noodzaak
- nodig
- behoeften
- netwerk
- NETWERKONDERBREKING
- New
- nlp
- geen
- notificatie
- meldingen
- aantal
- objecten
- verkrijgen
- verkregen
- of
- korting
- Aanbod
- offline
- on
- EEN
- online.
- Slechts
- besturen
- Kansen
- optimale
- optimalisatie
- Optimaliseer
- optimaliseren
- Keuze
- Opties
- or
- bestellen
- organisaties
- Overige
- uit
- storing
- geschetst
- uitgang
- uitstekend
- over
- het te bezitten.
- Parallel
- parameter
- parameters
- deel
- passeren
- Voorbijgaand
- hartstochtelijk
- verleden
- Patronen
- patronen
- Betaal
- percentage
- prestatie
- periode
- periodiek
- perspectief
- kiezen
- pijpleiding
- plan
- plannen
- Plato
- Plato gegevensintelligentie
- PlatoData
- beleidsmaatregelen
- mogelijk
- Post
- Berichten
- krachtige
- praktijk
- praktijken
- Voorspellingen
- prijs
- prijsstelling
- prijs model
- Proactieve
- Verwerkt
- processen
- verwerking
- processors
- productie
- Het bevorderen van
- zorgen voor
- mits
- biedt
- het verstrekken van
- voorziening
- doeleinden
- Putting
- queries
- reeks
- tarief
- liever
- bereiken
- lezing
- vast
- real-time
- ontvangen
- ontvangen
- ontvangt
- adviseren
- aanbevelingen
- aanbevolen
- beveelt
- record
- archief
- verminderen
- regio
- Releases
- blijven
- vanop
- verwijderd
- verslag
- Rapportage
- Rapporten
- te vragen
- verzoeken
- nodig
- Voorwaarden
- hulpbron
- Resources
- antwoord
- REST
- resultaat
- Resultaten
- Retourneren
- rechts
- rots
- Rollen
- wegen
- Regel
- reglement
- lopen
- lopend
- sagemaker
- SageMaker Inferentie
- dezelfde
- Bespaar
- Bespaar geld
- Scale
- balans
- scaling
- scenario's
- gepland
- krassen
- scripts
- seconden
- secties
- zien
- gekozen
- selecteren
- senior
- verzonden
- apart
- -Series
- Serverless
- service
- Diensten
- serveer-
- reeks
- het instellen van
- verscheidene
- Shadow
- Delen
- ze
- moet
- tonen
- vertoonde
- getoond
- Shows
- evenzo
- Eenvoudig
- sinds
- single
- Maat
- maten
- Plak
- Klein
- kleinere
- So
- Oplossingen
- sommige
- bron
- specialist
- specifiek
- specificaties
- besteden
- spleet
- stack
- standaard
- begin
- gestart
- Stap voor
- mediaopslag
- opgeslagen
- sterk
- gestructureerde
- succes
- geslaagd
- Met goed gevolg
- dergelijk
- voldoende
- geschikt
- ondersteuning
- proactief ondersteunen
- ondersteunde
- steunen
- system
- TAG
- Nemen
- neemt
- taken
- team
- Technisch
- proef
- Testen
- testen
- neem contact
- dat
- De
- hun
- Ze
- harte
- Er.
- daarbij
- daarom
- Deze
- spullen
- dit
- die
- Door
- doorvoer
- niet de tijd of
- keer
- naar
- tools
- tools
- onderwerp
- Totaal
- verkeer
- Trainingen
- Transformeren
- transformers
- Trends
- waar
- wordt
- type dan:
- types
- die ten grondslag liggen
- anders
- onvoorspelbaar
- geรผpload
- Gebruik
- .
- use case
- gebruikt
- toepassingen
- gebruik
- doorgaans
- Gebruik makend
- BEVESTIG
- waarde
- Values
- Variant
- divers
- Bekijk
- zichtbaarheid
- visie
- visualisatie
- volume
- volumes
- wachten
- willen
- Manier..
- we
- web
- webservices
- GOED
- Wat
- wanneer
- of
- welke
- en
- breed
- Grote range
- wil
- Met
- binnen
- zonder
- werkte
- werker
- werknemers
- Bedrijven
- het schrijven van
- geschreven
- You
- Your
- zephyrnet
- nul