Amazon SageMaker
AI/ML Cloud Practitioner Solutions Architect Associate Machine Learning Specialty

Amazon SageMaker

Amazon SageMaker

Kompletna platforma ML od eksperymentu do produkcji. Buduj, trenuj i wdrażaj modele machine learning na skalę - z kodem lub bez kodu.

Amazon SageMaker to w pełni zarządzana platforma machine learning, która pokrywa cały cykl życia modelu ML: od przygotowania danych, przez trening i optymalizację, po wdrożenie na produkcję i monitoring. Zamiast składać pipeline z wielu narzędzi, masz wszystko w jednym miejscu.

SageMaker oferuje narzędzia dla każdego poziomu zaawansowania. SageMaker Canvas pozwala tworzyć modele ML bez pisania kodu (no-code). Autopilot automatycznie buduje i optymalizuje modele (AutoML). A dla doświadczonych data scientistów jest SageMaker Studio - zintegrowane środowisko z notebookami Jupyter, eksperymentami, pipeline i debugowaniem.

Czy wiesz, ze...

SageMaker Canvas pozwala osobom bez wiedzy programistycznej budować modele ML. Wystarczy załadować plik CSV, wskazać kolumnę docelową, a Canvas automatycznie wytrenuje model i wygeneruje predykcje. Pod spodem wykorzystuje Autopilot, ale cały interfejs to drag-and-drop.

Pro Tip

Używaj SageMaker Managed Spot Training do trenowania modeli - oszczędzasz do 90% kosztów za instancje treningowe. Spot Instances mogą zostać przerwane, ale SageMaker automatycznie tworzy checkpointy i wznawia trening. Dla długich zadań treningowych to ogromna oszczędność.

SageMaker to kompleksowa platforma ML, ktora obsluguje caly cykl zycia modelu: od przygotowania danych, przez trening i tuning, po hosting i monitoring w produkcji. Eliminuje potrzebe zarzadzania infrastruktura ML - instancje GPU sa provisionowane na czas treningu i automatycznie zwalniane po zakonczeniu.

1

SageMaker Studio lub Notebook Instance

Studio to zintegrowane IDE dla ML z JupyterLab, terminalem, debuggerem i wbudowanymi narzedziami do eksperymentowania. Notebook Instance to prostsza opcja - pojedyncza instancja EC2 z Jupyter. Studio oferuje wiecej: SageMaker Experiments (sledzenie eksperymentow), Data Wrangler (wizualna transformacja danych), Feature Store i wspoldzielone przestrzenie. Dla nowych projektow zawsze wybieraj Studio.

2

Przygotowanie danych (Data Preparation)

SageMaker Data Wrangler pozwala wizualnie transformowac dane (filtrowanie, joinowanie, encoding, normalizacja) bez pisania kodu. SageMaker Processing uruchamia skrypty przetwarzania danych (Spark, scikit-learn) na dedykowanych instancjach - platisz za sekundy uzycia. Feature Store przechowuje przetworzone cechy (features) w centralnym repozytorium z wersjonowaniem, online (latency ponizej 10ms) i offline (S3 Parquet).

3

Training Job - trening modelu

Training Job uruchamia skrypt treningowy na wybranej instancji (np. ml.p3.2xlarge z GPU V100 lub ml.p4d.24xlarge z 8x A100). Dane treningowe sa kopiowane z S3 do instancji, model jest trenowany, artefakty zapisywane z powrotem do S3. Mozesz uzyc: built-in algorytmow AWS (XGBoost, Linear Learner, Image Classification), frameworkow (TensorFlow, PyTorch, HuggingFace) lub wlasnych kontenerow Docker.

4

Hyperparameter Tuning

Automatic Model Tuning uruchamia wiele Training Jobow z roznymi hiperparametrami (np. learning rate, batch size, depth) i wybiera najlepszy model wedlug zdefiniowanej metryki. Strategie: Bayesian (inteligentne przeszukiwanie, wymaga mniej iteracji), Random (proste, dobre dla duzej przestrzeni), Grid (wyczerpujace przeszukiwanie), Hyperband (early stopping slabych konfiguracji). Mozesz uruchomic do 500 jobow w jednym tuningu.

5

Model Hosting (Endpoint)

SageMaker Endpoint hostuje model za REST API. Konfiguracja: typ instancji (np. ml.m5.xlarge dla CPU, ml.g4dn.xlarge dla GPU inference), liczba instancji, auto-scaling (na podstawie InvocationsPerInstance). Opcje: real-time endpoint (latency ponizej 100ms), serverless endpoint (cold start, ale zero kosztow przy braku ruchu), async endpoint (dla dlugich inferencji do 15 minut), batch transform (offline scoring).

6

Model Monitor - monitoring produkcyjny

Model Monitor automatycznie wykrywa drift danych i degradacje jakosci modelu w produkcji. Typy monitoringu: Data Quality (porownuje rozklad cech z baseline), Model Quality (porownuje predykcje z ground truth), Bias Drift (wykrywa zmiane biasu), Feature Attribution Drift (zmiana waznosci cech). Monitor uruchamia sie cyklicznie (np. co godzine) i generuje raporty w S3. Alarmy CloudWatch powiadamiaja o wykrytym drifcie.

Praktyczne wskazowki z produkcyjnego uzycia SageMaker - od optymalizacji kosztow treningu po strategie MLOps i skalowania endpointow.

SageMaker Studio vs Notebook Instances

Studio: wspoldzielone srodowisko z SSO, presistent storage (EFS), wbudowane narzedzia (Experiments, Data Wrangler, Pipelines), automatyczne zamykanie nieuzywanych instancji. Notebook Instance: prostsza konfiguracja, lifecycle scripts, lepsze dla izolowanych eksperymentow. Studio jest wyborem domyslnym - ma nizsze koszty dzieki auto-shutdown i lepszy workflow zespolowy. Konfiguruj Studio Domain z VPC-only mode dla bezpieczenstwa.

Poczatkujacy

Spot Training - oszczednosc do 90%

Managed Spot Training uzywa instancji Spot EC2 do treningu - oszczednosc 60-90% vs On-Demand. SageMaker automatycznie obsluguje przerwania: checkpointuje model do S3 i wznawia trening na nowej instancji. Konfiguruj: MaxWaitTimeInSeconds (max czas oczekiwania na instancje) i checkpoint_s3_uri. Spot jest idealny dla dlugotrwalych treningow (godziny/dni). Unikaj Spot dla krotkich jobow ponizej 30 minut.

Zaawansowany

Multi-Model Endpoints - wiele modeli na jednej instancji

Multi-Model Endpoint (MME) hostuje tysiace modeli na jednej instancji. Modele sa ladowane do pamieci on-demand i usuwane gdy nie sa uzywane (LRU eviction). Idealny dla multi-tenant SaaS z osobnym modelem per klient. Koszt: 1 instancja zamiast tysieca. Ograniczenia: cold start przy ladowaniu modelu (sekundy), wymaga uniform frameworka (np. wszystkie modele XGBoost). Dla GPU uzyj multi-model z Triton Inference Server.

Zaawansowany

SageMaker Pipelines dla MLOps

Pipelines to CI/CD dla ML: definiujesz kroki (processing, training, evaluation, registration, deployment) jako DAG w Pythonie. Pipeline uruchamia sie automatycznie (np. co tydzien lub po pojawieniu sie nowych danych). Kazdy krok jest logowany w SageMaker Experiments, artefakty wersjonowane, metryki porownywane. Model Registry przechowuje wersje modeli z approval workflow (Pending -> Approved -> Deployed).

Zaawansowany

Built-in algorytmy - nie pisz od zera

SageMaker oferuje 17+ zoptymalizowanych algorytmow: XGBoost (tabular data, do 10x szybszy niz open-source wersja), BlazingText (NLP, word embeddings), Image Classification (ResNet-based), Object Detection, Semantic Segmentation, DeepAR (time series forecasting). Built-in algorytmy sa zoptymalizowane pod GPU/CPU i distributed training. Uzyj ich jako baseline przed pisaniem custom modelu.

Poczatkujacy

Auto-scaling endpointow inference

Konfiguruj Application Auto Scaling na endpoincie: metryka InvocationsPerInstance (np. target 1000/min), min/max instancji. Dla predictable traffic dodaj scheduled scaling (np. scale up o 8:00, scale down o 20:00). Cool-down: 300s scale-out, 600s scale-in. Monitoruj metryki: ModelLatency (czas inference), OverheadLatency (narzut SageMaker), Invocations (ilosc request). Serverless endpoint to alternatywa dla traffic ponizej 1 request/s.

Poczatkujacy

Screenshoty z AWS Console

Wkrotce pojawia sie tu zrzuty ekranu pokazujace jak korzystac z Amazon SageMaker bezposrednio w konsoli AWS.

Do czego sluzy Amazon SageMaker?

01

Trening modeli ML na dużą skalę

Trenuj modele na instancjach GPU/CPU bez zarządzania infrastrukturą. SageMaker automatycznie provisionuje klaster treningowy, trenuje model i zwalnia zasoby.

02

ML bez kodu z SageMaker Canvas

Analitycy biznesowi tworzą modele ML za pomocą interfejsu drag-and-drop. Bez pisania kodu - wystarczy załadować dane CSV i wybrać kolumnę docelową.

03

Wdrożenie modelu na produkcję

SageMaker Endpoints hostują model jako REST API z auto-scalingiem. Real-time inference, batch transform lub asynchronous inference - w zależności od potrzeb.

04

MLOps i CI/CD dla modeli

Model Registry, SageMaker Pipelines i automatyczny monitoring driftu modelu. Kompletny MLOps pipeline od eksperymentu do produkcji z wersjonowaniem i audytem.

Co musisz wiedziec?

SageMaker Studio

Zintegrowane środowisko IDE dla ML. Notebooki Jupyter, eksperymenty, debugowanie, pipeline - wszystko w jednym interfejsie webowym. Każdy użytkownik ma osobny profil i zasoby.

Training Jobs

Zarządzane zadania treningowe. Wybierasz typ instancji (CPU/GPU), podajesz dane z S3 i algorytm - SageMaker uruchamia klaster, trenuje model i zapisuje artefakty w S3.

Endpoints (Inference)

Hostowany model jako REST API. Real-time endpoints dla odpowiedzi w milisekundach, serverless endpoints dla rzadkich zapytań, batch transform dla przetwarzania dużych zbiorów.

Autopilot

AutoML - automatycznie eksploruje dane, wybiera algorytmy, tunuje hiperparametry i generuje notebook z pełnym wyjaśnieniem. Ty podajesz tylko dane i kolumnę docelową.

Feature Store

Centralne repozytorium cech (features) ML. Przechowuje, wersjonuje i udostępnia cechy dla treningu (offline store w S3) i inferencji (online store z niskim latency).

Ground Truth

Serwis do etykietowania (labelowania) danych. Automatyzuje proces z użyciem ludzkich annotatorów (Mechanical Turk lub prywatnych zespołów) i active learning do redukcji kosztów.

Architektura: End-to-end ML Pipeline z SageMaker

Kompletny pipeline ML od danych treningowych w S3 przez trening modelu, rejestracje w Model Registry, az po endpoint produkcyjny z monitoringiem. SageMaker Pipelines orkiestruje caly proces w powtarzalny, zautomatyzowany workflow.

S3 (Dane treningowe)
S3 (Dane treningowe) Dane treningowe, walidacyjne i testowe w formatach CSV/Parquet/RecordIO
Dane z S3 -> trening
SageMaker Training Job
SageMaker Training Job Trening na ml.p3/p4d (GPU) lub ml.m5 (CPU), Spot dla oszczednosci do 90%
Rejestracja artefaktow
Model Registry Wersjonowanie modeli, metryki, approval workflow (Pending/Approved)
Deploy modelu
SageMaker Endpoint
SageMaker Endpoint REST API, auto-scaling, A/B testing (traffic routing), multi-model
Inference request
Aplikacja / API Gateway
Aplikacja / API Gateway Aplikacja wywoluje endpoint przez InvokeEndpoint API lub API Gateway
Monitoring + alarmy
CloudWatch + Model Monitor
CloudWatch + Model Monitor Latency, invocations, data drift, model quality - alarmy przy degradacji
Uzywaj Managed Spot Training dla dlugotrwalych jobow treningowych - oszczednosc 60-90%. Konfiguruj checkpointing do S3, aby trening mogl byc wznowiony po przerwaniu instancji Spot.
Model Registry z approval workflow zapewnia, ze tylko zwalidowane modele trafiaja na produkcje. Integruj z SageMaker Pipelines dla automatycznej ewaluacji i promowania modeli.
Konfiguruj auto-scaling endpointu z cool-down period (300s out, 600s in) i monitoruj InvocationsPerInstance - zbyt niski target powoduje nadmierne skalowanie i koszty.

Ile kosztuje Amazon SageMaker?

Studio Notebooks

Opłata za czas działania instancji notebookowej. Różne typy od małych CPU po duże GPU.

ml.t3.medium: $0.05/godz., ml.g4dn.xlarge (GPU): $0.74/godz.

Training Jobs

Opłata za czas treningu na wybranych instancjach. Płacisz tylko za czas treningu, nie za idle.

ml.m5.xlarge: $0.23/godz., ml.p3.2xlarge (GPU): $3.83/godz.

Real-time Endpoints

Opłata za czas działania endpointu. Instancja działa 24/7 czekając na requesty.

ml.m5.large: $0.12/godz. (~$86/mies.)

Serverless Inference

Płacisz za czas przetwarzania requestów i provisionowaną pamięć. Zero kosztów gdy brak ruchu.

$0.0001/s przetwarzania + $0.0000015/GB-s pamięci

Przyklady AWS CLI

Uruchom training job

Startuje zadanie treningowe z wbudowanym algorytmem XGBoost

aws sagemaker create-training-job \
 --training-job-name moj-model-xgboost \
 --algorithm-specification TrainingImage=683313688378.dkr.ecr.eu-central-1.amazonaws.com/sagemaker-xgboost:1.7-1,TrainingInputMode=File \
 --role-arn arn:aws:iam::123456789012:role/SageMakerRole \
 --input-data-config "[{\"ChannelName\":\"train\",\"DataSource\":{\"S3DataSource\":{\"S3Uri\":\"s3://moje-dane/train/\",\"S3DataType\":\"S3Prefix\"}}}]" \
 --output-data-config S3OutputPath=s3://moje-modele/output/ \
 --resource-config InstanceType=ml.m5.xlarge,InstanceCount=1,VolumeSizeInGB=10

Utwórz endpoint

Wdraża wytrenowany model jako REST API endpoint

aws sagemaker create-endpoint \
 --endpoint-name moj-endpoint-prod \
 --endpoint-config-name moj-endpoint-config

Wywołaj predykcję

Wysyła dane do endpointu i otrzymuje predykcję modelu

aws sagemaker-runtime invoke-endpoint \
 --endpoint-name moj-endpoint-prod \
 --content-type text/csv \
 --body "25,1,3,50000,0,1" \
  /dev/stdout

Sprawdź status treningu

Wyświetla szczegóły i status zadania treningowego

aws sagemaker describe-training-job \
 --training-job-name moj-model-xgboost \
 --query "{Status: TrainingJobStatus, Duration: TrainingTimeInSeconds, BillableTime: BillableTimeInSeconds}"

Quiz: Amazon SageMaker

Sprawdz czy dobrze rozumiesz podstawy. Kliknij odpowiedz — feedback pojawi sie od razu.

Twoj wynik: 0 / 4

1. Co robi SageMaker Autopilot?

2. Czym jest SageMaker Feature Store?

3. Który typ inference jest najtańszy dla rzadko używanego modelu?

4. Do czego służy SageMaker Ground Truth?

Chcesz poznac Amazon SageMaker w praktyce?

Darmowy kurs "AWS od podstaw" pokazuje jak uzywac Amazon SageMaker krok po kroku. Teoria + praktyka od zera.

Zacznij darmowy kurs Wszystkie serwisy