En résumé
SageMaker AI v3 remplace plusieurs classes par ModelTrainer et ModelBuilder.
SourceCode synchronise le code local dans le conteneur au lancement du job.
Les exemples couvrent un modèle scikit-learn et Stable Diffusion 3.5.
Le signal : Amazon SageMaker AI v3 injecte le code local dans le conteneur avec SourceCode, tandis que ModelTrainer et ModelBuilder unifient les workflows.
Vous appréciez ce genre d'analyse ?
Chaque mardi et vendredi, l'essentiel en business & IA décryptées en 5 minutes. Gratuit, sans engagement.
+11 000 fondateurs abonnés
AWS unifie Amazon SageMaker AI v3 remplace les classes d’estimateurs propres à chaque cadre logiciel par deux composants communs. ModelTrainer configure et lance les tâches d’entraînement. ModelBuilder prépare et déploie les modèles. Cette version synchronise aussi un répertoire de code local dans la tâche grâce à l’objet SourceCode. Le code est exécuté dans l’image du conteneur sans y être intégré. AWS présente cette approche dans deux exemples de bout en bout. Le premier entraîne une forêt aléatoire scikit-learn sur le jeu de données diabetes. Le second affine Stable Diffusion 3.5 avec LoRA et Hugging Face Accelerate pour un entraînement distribué sur plusieurs GPU. Lire l’article AWS
Le code se sépare Le conteneur fournit l’environnement d’exécution, tandis que le répertoire source contient l’algorithme et ses fichiers associés. SourceCode accepte un chemin local et une commande pour l’entraînement. Pour l’inférence, il accepte ce chemin et un entry_script. SageMaker synchronise ensuite le répertoire dans le conteneur au lancement du job. Une modification du script peut donc être suivie d’un nouvel entraînement sans reconstruire l’image. L’image peut être construite par l’équipe, provenir d’un conteneur AWS Deep Learning ou être fournie par un tiers. Cette conception conserve aussi le contrôle des paquets système et des bibliothèques CUDA installés dans l’image. Les dépendances Python peuvent rester dans requirements.txt.
La forêt s’exécute L’exemple scikit-learn utilise une image construite puis poussée vers Amazon Elastic Container Registry. ModelTrainer reçoit cette image, le SourceCode, un rôle IAM, une sortie Amazon S3 et une configuration de calcul. La tâche emploie une instance ml.m5.2xlarge, une seule instance et un volume de 30 Go. Sa durée maximale est fixée à 3 600 secondes. Le paramètre keep_alive_period_in_seconds maintient l’instance chaude pendant une heure pour les relances. Le script reçoit notamment quatre paramètres pour les arbres, la profondeur et le suivi MLflow. Les artefacts enregistrés dans /opt/ml/model sont ensuite empaquetés en model.tar.gz dans Amazon S3.
Le déploiement assemble ModelBuilder récupère l’artefact final dans Amazon S3 et reçoit un second SourceCode pour l’inférence. Celui-ci pointe vers un répertoire local contenant inference.py. L’exemple utilise DJL Serving dans un conteneur AWS Deep Learning. La méthode build assemble le gestionnaire d’inférence et l’artefact du modèle, puis enregistre un modèle SageMaker. Elle ne lance pas encore l’infrastructure. La méthode deploy crée ensuite un point de terminaison temps réel avec une instance initiale. Le gestionnaire implémente une fonction handle(inputs), appelée par DJL Serving pour chaque requête. Le SDK peut également sélectionner un conteneur, capturer des dépendances et générer du code de sérialisation.
Le SDK élargit Le même modèle d’interface couvre scikit-learn, PyTorch, Stable Diffusion et un binaire d’inférence C++ personnalisé. Le deuxième exemple applique LoRA à Stable Diffusion 3.5 et utilise Hugging Face Accelerate pour un entraînement distribué sur plusieurs GPU. SageMaker Python SDK v3 doit être installé avec pip install sagemaker>=3.0. L’exécution nécessite aussi un compte AWS, un rôle IAM avec des permissions SageMaker AI et Amazon S3, une image d’entraînement dans Amazon ECR, ainsi qu’un compartiment S3 pour les données et les artefacts. Le suivi des expériences avec MLflow sur SageMaker AI est présenté comme une option. Voir les exemples GitHub
La migration change Dans le SDK v2, SKLearn, PyTorch et XGBoost utilisaient des estimateurs distincts. Le déploiement reposait sur le couple Model et Predictor. Le SDK v3 remplace ces schémas par ModelTrainer pour l’entraînement et ModelBuilder pour le déploiement. Le conteneur n’est plus limité à une image de cadre gérée par AWS. La configuration SourceCode remplace aussi le couple entry_point et source_dir propre aux cadres. Pour exécuter les exemples depuis un espace JupyterLab dans SageMaker Studio, Docker doit être activé au niveau du domaine. La documentation SageMaker présente les capacités de ModelBuilder, tandis que le dépôt GitHub rassemble le code complet. Consulter la documentation
Gardez un coup d'avance en IA et tech.
Chaque mardi et vendredi, l'essentiel en business & IA décryptées en 5 minutes. Zéro spam.
+11 000 fondateurs abonnés