Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker

Omdat bedrijven en IT-leiders de acceptatie van machine learning (ML) willen versnellen, is er een groeiende behoefte om inzicht te krijgen in de toewijzing van uitgaven en kosten voor uw ML-omgeving om aan de bedrijfsvereisten te voldoen. Zonder goed kostenbeheer en beheer kunnen uw ML-uitgaven leiden tot verrassingen in uw maandelijkse AWS-factuur. Amazon Sage Maker is een volledig beheerd ML-platform in de cloud dat onze zakelijke klanten voorziet van tools en middelen om maatregelen voor kostentoewijzing vast te stellen en het inzicht in gedetailleerde kosten en gebruik door uw teams, bedrijfseenheden, producten en meer te verbeteren.

In dit bericht delen we tips en best practices met betrekking tot kostentoewijzing voor uw SageMaker-omgeving en workloads. Voor bijna alle AWS-services, inclusief SageMaker, is het toepassen van tags op resources een standaardmanier om kosten bij te houden. Met deze tags kunt u uw ML-uitgaven volgen, rapporteren en bewaken via kant-en-klare oplossingen zoals: AWS-kostenverkenner en AWS-budgetten, evenals op maat gemaakte oplossingen gebaseerd op de gegevens van AWS kosten- en gebruiksrapporten (CUR's).

Tagging van kostentoewijzing

Kostentoewijzing op AWS is een proces in drie stappen:

  1. hechten kostentoewijzingstags aan uw middelen.
  2. Activeer je tags in de Kostentoewijzingstags gedeelte van de AWS-factureringsconsole.
  3. Gebruik de tags om rapportage over kostentoewijzing te volgen en te filteren.

Nadat u tags hebt gemaakt en aan resources hebt toegevoegd, verschijnen ze in de AWS-factureringsconsole Kostentoewijzingstags afdeling onder Door de gebruiker gedefinieerde tags voor kostentoewijzing. Het kan tot 24 uur duren voordat tags worden weergegeven nadat ze zijn gemaakt. Vervolgens moet u deze tags voor AWS activeren om ze voor uw bronnen te kunnen volgen. Nadat een tag is geactiveerd, duurt het doorgaans ongeveer 24-48 uur voordat de tags worden weergegeven in Cost Explorer. De eenvoudigste manier om te controleren of uw tags werken, is door naar uw nieuwe tag te zoeken in het tagsfilter in Cost Explorer. Als het er is, bent u klaar om de tags te gebruiken voor uw kostentoewijzingsrapportage. U kunt er vervolgens voor kiezen om uw resultaten te groeperen op tagsleutels of te filteren op tagwaarden, zoals weergegeven in de volgende schermafbeelding.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Een ding om op te merken: als je gebruikt AWS-organisaties en gekoppelde AWS-accounts hebben, kunnen tags alleen worden geactiveerd in het primaire betaleraccount. Optioneel kunt u ook CUR's activeren voor de AWS-accounts die kostentoewijzingsrapporten mogelijk maken als een CSV-bestand met uw gebruik en kosten gegroepeerd op uw actieve tags. Dit geeft u meer gedetailleerde tracking van uw kosten en maakt het gemakkelijker om uw eigen aangepaste rapportage-oplossingen op te zetten.

Taggen in SageMaker

Op een hoog niveau kan het taggen van SageMaker-bronnen worden gegroepeerd in twee buckets:

  • De SageMaker-notebookomgeving taggen, ofwel Amazon SageMaker Studio domeinen en domeingebruikers, of SageMaker-notebookinstanties
  • Tagging van door SageMaker beheerde taken (labeling, verwerking, training, afstemming van hyperparameters, batchtransformatie en meer) en bronnen (zoals modellen, werkteams, eindpuntconfiguraties en eindpunten)

We behandelen deze in meer detail in dit bericht en bieden enkele oplossingen voor het toepassen van governancecontrole om een โ€‹โ€‹goede hygiรซne bij het taggen te garanderen.

SageMaker Studio-domeinen en gebruikers taggen

Studio is een webgebaseerde, geรฏntegreerde ontwikkelomgeving (IDE) voor ML waarmee u uw ML-modellen kunt bouwen, trainen, debuggen, implementeren en bewaken. U kunt Studio-notebooks snel starten en dynamisch de onderliggende computerbronnen in- of uitbellen zonder uw werk te onderbreken.

Om deze dynamische bronnen automatisch te taggen, moet u tags toewijzen aan het SageMaker-domein en domeingebruikers die toegang hebben tot die bronnen. U kunt deze tags specificeren in de tags parameter van maak-domein or gebruikersprofiel aanmaken tijdens het aanmaken van een profiel of domein, of u kunt ze later toevoegen met de tags toevoegen API. Studio kopieert en wijst deze tags automatisch toe aan de Studio-notebooks die in het domein of door de specifieke gebruikers zijn gemaakt. U kunt ook tags toevoegen aan SageMaker-domeinen door de domeininstellingen in het Studio-configuratiescherm te bewerken.

Het volgende is een voorbeeld van het toewijzen van tags aan het profiel tijdens het maken.

aws sagemaker create-user-profile --domain-id  --user-profile-name data-scientist-full --tags Key=studiouserid,Value= --user-settings ExecutionRole=arn:aws:iam:::role/SageMakerStudioExecutionRole_datascientist-full

Om bestaande domeinen en gebruikers te taggen, gebruikt u de add-tags API. De tags worden vervolgens toegepast op nieuwe notebooks. Om deze tags toe te passen op uw bestaande notebooks, moet u de Studio-app (Kernel Gateway en Jupyter Server) die bij dat gebruikersprofiel hoort opnieuw opstarten. Dit veroorzaakt geen verlies van notebookgegevens. Raadpleeg dit SageMaker Studio- en Studio-apps afsluiten en bijwerken voor meer informatie over het verwijderen en herstarten van uw Studio-apps.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

SageMaker-notebookinstanties taggen

In het geval van een SageMaker-notebookinstantie wordt tagging toegepast op de instantie zelf. De tags worden toegewezen aan alle resources die in hetzelfde exemplaar worden uitgevoerd. U kunt tags programmatisch specificeren met behulp van de tags-parameter in de maak-notebook-exemplaar API of voeg ze toe via de SageMaker-console tijdens het maken van instanties. U kunt ook op elk moment tags toevoegen of bijwerken met behulp van de tags toevoegen API of via de SageMaker-console.

Houd er rekening mee dat dit exclusief door SageMaker beheerde taken en bronnen, zoals trainings- en verwerkingstaken, is omdat ze zich in de serviceomgeving bevinden in plaats van op de instantie. In het volgende gedeelte gaan we dieper in op het toepassen van tagging op deze bronnen.

Door SageMaker beheerde taken en bronnen taggen

Voor door SageMaker beheerde taken en resources moet tagging worden toegepast op de tags attribuut als onderdeel van elk API-verzoek. Een SKLearnProcessor voorbeeld wordt geรฏllustreerd in de volgende code. U kunt meer voorbeelden vinden van het toewijzen van tags aan andere door SageMaker beheerde taken en bronnen op de: GitHub repo.

from sagemaker import get_execution_role
from sagemaker.sklearn.processing import SKLearnProcessor

processing_tags = [{' Key':"cost-center','Value':'TF2WorkflowProcessing'}]
sklearn_processorl = SKLearnProcessor(framework_version='0.23-1' ,
									 role=get_execution_role(),
									 instance_type='ml.m5.xlarge',
									 instance_count=2,
									 tags=processing_tags)

SageMaker-pijplijnen taggen

In het geval van SageMaker-pijplijnen kunt u de hele pijplijn als geheel taggen in plaats van elke afzonderlijke stap. De SageMaker-pijplijn verspreidt automatisch de tags naar elke pijplijnstap. U heeft nog steeds de mogelijkheid om indien nodig aanvullende, afzonderlijke tags aan afzonderlijke stappen toe te voegen. In de gebruikersinterface van Studio worden de pijplijntags weergegeven in de sectie metagegevens.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Gebruik de SageMaker Python SDK om tags toe te passen op een pijplijn:

pipeline_tags = [ {'Key': 'pipeline-type', 'Value': 'TF2WorkflowPipeline'}]
pipeline.upsert(role_arn=role, tags=pipeline_tags)
execution = pipeline.start()

Taggen afdwingen met IAM-beleid

Hoewel tagging een effectief mechanisme is voor het implementeren van cloudbeheer- en governancestrategieรซn, kan het afdwingen van het juiste tagginggedrag een uitdaging zijn als u het aan de eindgebruikers overlaat. Hoe voorkom je het aanmaken van ML-resources als een specifieke tag ontbreekt, hoe zorg je ervoor dat de juiste tags worden toegepast en hoe voorkom je dat gebruikers bestaande tags verwijderen?

U kunt dit bereiken met behulp van AWS Identiteits- en toegangsbeheer (IAM) beleid. De volgende code is een voorbeeld van een beleid dat acties van SageMaker, zoals: CreateDomain or CreateNotebookInstance als de aanvraag de omgevingssleutel en een van de lijstwaarden niet bevat. De ForAllValues modifier met de aws:TagKeys conditietoets geeft aan dat alleen de toets environment is toegestaan โ€‹โ€‹in de aanvraag. Dit voorkomt dat gebruikers andere sleutels opnemen, zoals het per ongeluk gebruiken van Environment in plaats van environment.

"sagemaker:CreateTrainingJob"
      ],
      "{
      "Sid": "SageMakerEnforceEnvtOnCreate",
      "Action": [
        "sagemaker:CreateDomain",
        "sagemaker:CreateEndpoint",
        "sagemaker:CreateNotebookInstance",
        Effect": "Allow",
      "Resource": "*",
  "Condition": {
            "StringEquals": {
                "aws:RequestTag/environment": [
                    "dev","staging","production"
                ]
            },
            "ForAllValues:StringEquals": {"aws:TagKeys": "environment"}
        }
      }

Tagbeleid en servicebeheerbeleid (SCP's) kunnen ook een goede manier zijn om het maken en labelen van uw ML-resources te standaardiseren. Voor meer informatie over het implementeren van een taggingstrategie die tagging op organisatieniveau afdwingt en valideert, raadpleegt u: Blogreeks over kostentoewijzing #3: AWS-resourcetags afdwingen en valideren.

Rapportage kostentoewijzing

U kunt de tags bekijken door de weergaven in Cost Explorer te filteren, door a maandelijks kostentoewijzingsrapport, of door de CUR te onderzoeken.

Tags visualiseren in Kostenverkenner

Cost Explorer is een tool waarmee u uw kosten en verbruik kunt bekijken en analyseren. U kunt uw gebruik en kosten onderzoeken met behulp van de hoofdgrafiek: de kosten- en gebruiksrapporten van Cost Explorer. Voor een korte video over het gebruik van Cost Explorer, ga naar Hoe kan ik Cost Explorer gebruiken om mijn uitgaven en gebruik te analyseren?

Met Cost Explorer kunt u op tags filteren hoe u uw AWS-kosten bekijkt. Groeperen op stelt ons in staat om resultaten te filteren op tagsleutels zoals Environment, Deploymentof Cost Center. Het tagfilter helpt ons de gewenste waarde te selecteren, ongeacht de sleutel. Voorbeelden zijn onder meer: Production en Staging. Houd er rekening mee dat u de bronnen moet uitvoeren na het toevoegen en activeren van tags; anders heeft Cost Explorer geen gebruiksgegevens en wordt de tagwaarde niet weergegeven als een filter of groep op optie.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

De volgende schermafbeelding is een voorbeeld van filteren op alle waarden van de BusinessUnit label.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Tags onderzoeken in de CUR

Het rapport Kosten en gebruik bevat de meest uitgebreide set beschikbare gegevens over kosten en gebruik. Het rapport bevat regelitems voor elke unieke combinatie van AWS-product, gebruikstype en bewerking die uw AWS-account gebruikt. U kunt de CUR aanpassen om de informatie per uur of per dag samen te voegen. Een maandelijks kostentoewijzingsrapport is een manier om kostentoewijzingsrapportage in te stellen. U kunt een maandelijks kostentoewijzingsrapport dat het AWS-gebruik voor uw account per productcategorie en gekoppelde accountgebruiker weergeeft. Het rapport bevat dezelfde regelitems als de gedetailleerd factureringsrapport en extra kolommen voor uw tagsleutels. U kunt het instellen en uw rapport downloaden door de stappen te volgen in Maandelijks kostentoewijzingsrapport.

De volgende schermafbeelding laat zien hoe door de gebruiker gedefinieerde tagsleutels worden weergegeven in de CUR. Door de gebruiker gedefinieerde tagsleutels hebben het voorvoegsel user, zoals user:Department en user:CostCenter. Door AWS gegenereerde tagsleutels hebben het voorvoegsel aws.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Visualiseer de CUR met Amazon Athena en Amazon QuickSight

Amazone Athene is een interactieve query-service die het gemakkelijk maakt om gegevens in Amazon S3 te analyseren met behulp van standaard SQL. Athena is serverloos, dus er is geen infrastructuur om te beheren en u betaalt alleen voor de query's die u uitvoert. Raadpleeg voor het integreren van Athena met CUR's: Kosten- en gebruiksrapporten opvragen met Amazon Athena. U kunt vervolgens aangepaste query's maken om CUR-gegevens op te vragen met behulp van standaard SQL. De volgende schermafbeelding is een voorbeeld van een query om alle bronnen te filteren die de waarde TF2WorkflowTraining hebben voor de cost-center label.

select * from {$table_name} where resource_tags_user_cost-center= 'TF2WorkflowTraining'

In het volgende voorbeeld proberen we erachter te komen welke bronnen waarden missen onder de cost-center label.

SELECT
 bill_payer_account_id, line_item_usage_account_id, DATE_FORMAT((line_item_usage_start_date), '%Y-%m-%d') AS day_line_item_usage_start_date, line_item_resource_id, line_item_usage_type, resource_tags_user_cost-center
FROM
{$table_name} 
WHERE
 resource_tags_user_cost-center IS NULL
AND line_item_product_code = 'AmazonSageMaker'

Meer informatie en voorbeeldvragen vindt u in de AWS CUR-querybibliotheek.

U kunt ook CUR-gegevens invoeren in: Amazon QuickSight, waar u het op elke gewenste manier kunt snijden en in blokjes snijden voor rapportage- of visualisatiedoeleinden. Voor instructies over het opnemen van CUR-gegevens in QuickSight, zie Hoe kan ik het AWS Cost and Usage Report (CUR) opnemen en visualiseren in Amazon QuickSight.

Budgetbewaking met behulp van tags

AWS Budgets is een uitstekende manier om vroegtijdig te waarschuwen als de uitgaven onverwacht stijgen. U kunt aangepaste budgetten maken die u waarschuwen wanneer uw ML-kosten en -gebruik uw door de gebruiker gedefinieerde drempels overschrijden (of naar verwachting zullen overschrijden). Met AWS Budgets kunt u uw totale maandelijkse ML-kosten bijhouden of uw budgetten filteren om de kosten bij te houden die verband houden met specifieke gebruiksdimensies. U kunt bijvoorbeeld het budgetbereik instellen om SageMaker-resourcekosten op te nemen die zijn gelabeld als cost-center: ML-Marketing, zoals weergegeven in de volgende schermafbeelding. Raadpleeg voor aanvullende afmetingen en gedetailleerde instructies over het instellen van AWS-budgetten: hier.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

met budgetmeldingen, kunt u meldingen verzenden wanneer uw budgetlimieten worden (of worden) overschreden. Deze waarschuwingen kunnen ook worden gepost op een Amazon eenvoudige meldingsservice (Amazon SNS) onderwerp. Een AWS Lambda functie die zich abonneert op het SNS-onderwerp wordt vervolgens aangeroepen en alle programmatisch implementeerbare acties kunnen worden ondernomen.

Met AWS Budgets kunt u ook configureren budgetacties, dit zijn stappen die u kunt nemen wanneer een budgetdrempel wordt overschreden (werkelijke of voorspelde bedragen). Met dit controleniveau kunt u onbedoelde te hoge uitgaven in uw account verminderen. U kunt specifieke reacties op kosten en gebruik configureren in uw account die automatisch of via een workflow-goedkeuringsproces worden toegepast wanneer een budgetdoel is overschreden. Dit is een zeer krachtige oplossing om ervoor te zorgen dat uw ML-uitgaven consistent zijn met de doelstellingen van het bedrijf. U kunt selecteren welk type actie u wilt ondernemen. Wanneer bijvoorbeeld een budgetdrempel wordt overschreden, kunt u specifieke IAM-gebruikers verplaatsen van beheerdersrechten naar alleen-lezen. Voor klanten die organisaties gebruiken, kunt u acties toepassen op een hele organisatie-eenheid door deze van beheerder naar alleen-lezen te verplaatsen. Raadpleeg voor meer informatie over het beheren van kosten met behulp van budgetacties: Hoe u kostenoverschrijdingen in uw AWS-omgeving met meerdere accounts beheert - Deel 1.

U kunt ook een rapport opstellen om de prestaties van uw bestaande budgetten dagelijks, wekelijks of maandelijks te bewaken en dat rapport naar maximaal 50 e-mailadressen te sturen. Met AWS Budgets-rapportenkunt u alle SageMaker-gerelateerde budgetten in รฉรฉn rapport combineren. Met deze functie kunt u uw SageMaker-voetafdruk vanaf รฉรฉn locatie volgen, zoals weergegeven in de volgende schermafbeelding. U kunt ervoor kiezen om deze rapporten te ontvangen op een dagelijkse, wekelijkse of maandelijkse cadans (ik heb gekozen wekelijks voor dit voorbeeld), en kies de dag van de week waarop u ze wilt ontvangen.

Deze functie is handig om uw belanghebbenden op de hoogte te houden van uw SageMaker-kosten en -gebruik, en om hen te helpen zien wanneer de uitgaven niet trending zijn zoals verwacht.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Nadat u deze configuratie heeft ingesteld, zou u een e-mail moeten ontvangen die er ongeveer als volgt uitziet.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Conclusie

In dit bericht hebben we laten zien hoe u tagging voor kostentoewijzing voor SageMaker kunt instellen en hebben we tips gedeeld over het taggen van best practices voor uw SageMaker-omgeving en workloads. Vervolgens hebben we verschillende rapportageopties besproken, zoals Cost Explorer en de CUR, om u te helpen de zichtbaarheid van uw ML-uitgaven te verbeteren. Ten slotte hebben we AWS Budgets en het budgetoverzichtsrapport gedemonstreerd om u te helpen de ML-uitgaven van uw organisatie te controleren.

Voor meer informatie over het toepassen en activeren van kostentoewijzingstags, zie Door de gebruiker gedefinieerde kostentoewijzingstags.


Over de auteurs

Sean MorganSean Morgan is een AI/ML Solutions Architect bij AWS. Hij heeft ervaring op het gebied van halfgeleiders en academisch onderzoek en gebruikt zijn ervaring om klanten te helpen hun doelen op AWS te bereiken. In zijn vrije tijd is Sean een actieve open-source bijdrager en onderhouder, en is hij de leider van de speciale belangengroep voor TensorFlow Add-ons.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.Brent Rabowsky richt zich op data science bij AWS en zet zijn expertise in om AWS-klanten te helpen met hun eigen data science-projecten.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.Nilesh Shetty is als Senior Technical Account Manager bij AWS, waar hij enterprise support-klanten helpt bij het stroomlijnen van hun cloudactiviteiten op AWS. Hij is gepassioneerd door machine learning en heeft ervaring als consultant, architect en ontwikkelaar. Naast zijn werk luistert hij graag naar muziek en kijkt hij graag naar sport.

Stel kostentoewijzing op ondernemingsniveau in voor ML-omgevingen en workloads met behulp van resourcetagging in Amazon SageMaker PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.James Wu is Senior AI/ML Specialist Solution Architect bij AWS. klanten helpen bij het ontwerpen en bouwen van AI/ML-oplossingen. James' werk omvat een breed scala aan ML-gebruikscasussen, met een primaire interesse in computervisie, deep learning en het opschalen van ML in de hele onderneming. Voordat hij bij AWS kwam, was James meer dan 10 jaar architect, ontwikkelaar en technologieleider, waarvan 6 jaar in engineering en 4 jaar in marketing- en reclamesectoren.

Tijdstempel:

Meer van AWS-machine learning