Saltar al contenido principal

Ejemplo: SageMaker Pipeline

Pipeline completo en AWS SageMaker con model registry y aprobación manual.

Prerrequisitos

pip install godml[aws]

export AWS_DEFAULT_REGION=us-east-1
export SAGEMAKER_ROLE_ARN=arn:aws:iam::123456789012:role/SageMakerRole

# Subir dataset a S3
aws s3 cp data/churn.csv s3://mi-bucket/data/churn.csv

godml.yml

name: churn-sagemaker
version: 1.0.0
provider: sagemaker

dataset:
uri: s3://mi-bucket/data/churn.csv
target: churned

governance:
compliance: pci-dss
policy: mask_sensitive

aws:
role_arn: ${SAGEMAKER_ROLE_ARN}
region: us-east-1
s3_bucket: mi-bucket
s3_prefix: godml

compute:
preprocessing: ml.m5.large
training: ml.m5.2xlarge
evaluation: ml.m5.large

model:
type: xgboost
hyperparameters:
max_depth: 6
eta: 0.1
n_estimators: 300

metrics:
- name: auc
threshold: 0.82

registry:
model_package_group: godml-churn-models
approval: manual

Ejecutar

godml run -f godml.yml
Building SageMaker Pipeline: churn-sagemaker
Upserting pipeline definition to SageMaker...
Starting pipeline execution...

Pipeline running. ARN: arn:aws:sagemaker:us-east-1:123456789012:pipeline/churn-sagemaker/execution/abc123

Waiting for pipeline to finish...
Preprocessing: Succeeded (3m 21s)
Training: Succeeded (8m 47s)
Evaluation: Succeeded (2m 12s)
CheckMetricAndRegister: Succeeded

Pipeline completed. AUC: 0.8431 ✅
Model registered: godml-churn-models v1 (PendingManualApproval)

Aprobar el modelo en AWS Console

Una vez que el pipeline termina:

  1. Ve a SageMaker → Model Registry → godml-churn-models
  2. Busca la versión con status PendingManualApproval
  3. Click Update Status → Approved
  4. El modelo está listo para desplegarse

O con el SDK:

import boto3
sm = boto3.client("sagemaker", region_name="us-east-1")
sm.update_model_package(
ModelPackageArn="arn:aws:sagemaker:...",
ModelApprovalStatus="Approved",
)

Costos estimados

Para un dataset de ~100K filas con XGBoost:

StepInstanciaDuraciónCosto
Preprocessingml.m5.large~3 min~$0.006
Trainingml.m5.2xlarge~8 min~$0.06
Evaluationml.m5.large~2 min~$0.004
Total~13 min~$0.07

Los steps se levantan y apagan solos — solo pagas el tiempo de ejecución.


Volver a Providers: SageMaker