0Pricing
Learn AI with Python · Leçon

Déploiement cloud : AWS SageMaker

SageMaker Model, EndpointConfig, Endpoint, inférence en temps réel, transformation par lots.

Déploiement cloud : AWS SageMaker est une leçon Learn AI with Python gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Learn AI with Python, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Learn AI with Python comprend 4 leçons au total.

Pourquoi SageMaker

Amazon SageMaker est un service géré pour entraîner et déployer des modèles d'apprentissage automatique. Au lieu de provisionner vous-même les serveurs et les répartiteurs de charge, vous décrivez un modèle et SageMaker met en place en arrière-plan un point de terminaison HTTPS évolutif.

Les trois éléments nécessaires

Un déploiement SageMaker nécessite trois éléments :

  • Une image_uri de conteneur (votre image de service dans ECR ou une image de framework intégrée)
  • Les poids entraînés dans model_data, une archive tar.gz dans S3
  • Un rôle IAM accordant à SageMaker l'accès à ces ressources

Définir un modèle

L'objet sagemaker.Model associe l'image du conteneur à l'artefact du modèle dans S3.

import sagemaker
from sagemaker.model import Model

model = Model(
    image_uri="123456789012.dkr.ecr.us-east-1.amazonaws.com/my-model:latest",
    model_data="s3://my-bucket/models/model.tar.gz",
    role="arn:aws:iam::123456789012:role/SageMakerRole",
)

Contenu de model.tar.gz

SageMaker télécharge et extrait model_data dans /opt/ml/model à l'intérieur du conteneur au démarrage. Votre code de service y lit les poids. L'archive contient généralement le fichier du modèle enregistré ainsi que les ressources nécessaires au prétraitement.

# model.tar.gz contents
# model.pt
# tokenizer.json
# config.json

Déployer un point de terminaison en temps réel

model.deploy lance une ou plusieurs instances derrière un point de terminaison HTTPS persistant. Vous choisissez le instance_type et le nombre initial d'instances.

predictor = model.deploy(
    initial_instance_count=1,
    instance_type="ml.m5.xlarge",
    endpoint_name="my-model-endpoint",
)

Choisir un type d'instance

Le type d'instance détermine le coût et la latence :

  • ml.m5.* CPU polyvalent, économique pour les petits modèles
  • ml.c5.* optimisé pour le calcul
  • ml.g4dn.* / ml.g5.* GPU pour l'inférence en apprentissage profond

Adaptez l'instance au modèle : un GPU est inutile pour un petit modèle scikit-learn.

Appeler predict()

Une fois le déploiement effectué, predictor.predict() envoie une charge utile au point de terminaison et renvoie le résultat de l'inférence. SageMaker sérialise la requête et l'achemine vers une instance active.

result = predictor.predict({
    "instances": [[5.1, 3.5, 1.4, 0.2]]
})
print(result)

Nettoyer les points de terminaison

Les points de terminaison en temps réel sont facturés à la seconde pendant leur fonctionnement. Supprimez toujours ceux dont vous n'avez plus besoin, sinon des frais continueront de s'accumuler même en l'absence de trafic.

predictor.delete_endpoint()

Batch transform pour les traitements hors ligne

Pour évaluer une grande base de données une seule fois (et non fournir un service à faible latence), utilisez le traitement par lots. SageMaker démarre des instances, traite l'ensemble des données dans S3, réécrit les résultats dans S3, puis arrête les instances. Il n'y a ni point de terminaison persistant ni coût d'inactivité.

Exécuter un traitement par lots

Vous créez un transformateur à partir du modèle et le dirigez vers les données d'entrée dans S3.

transformer = model.transformer(
    instance_count=1,
    instance_type="ml.m5.xlarge",
    output_path="s3://my-bucket/predictions/",
)
transformer.transform(
    data="s3://my-bucket/input/batch.csv",
    content_type="text/csv",
)
transformer.wait()

Temps réel ou traitement par lots

Faites votre choix en fonction de la charge de travail :

  • Point de terminaison en temps réel : requêtes continues à faible latence (par exemple, une API de recommandations)
  • Traitement par lots : évaluation périodique de grands ensembles de données (par exemple, des prédictions nocturnes de désabonnement)

Le traitement par lots est bien moins coûteux lorsque vous n'avez pas besoin de réponses instantanées.

Vérification rapide

Quand devez-vous utiliser le traitement par lots de SageMaker plutôt qu'un point de terminaison en temps réel ?

Récapitulatif

Vous avez déployé un modèle sur AWS SageMaker :

  • sagemaker.Model associe une image_uri à model_data dans S3
  • model.deploy crée un point de terminaison en temps réel avec un instance_type choisi
  • predictor.predict() envoie des requêtes d'inférence
  • Le traitement par lots gère à moindre coût les grandes charges de travail hors ligne
  • Supprimez toujours les points de terminaison inactifs pour éviter les frais

Questions Fréquemment Posées

La leçon « Déploiement cloud : AWS SageMaker » est-elle gratuite ?

Oui — le texte complet de « Déploiement cloud : AWS SageMaker » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Learn AI with Python, passe à CoddyKit PRO. Le cours Learn AI with Python comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Déploiement cloud : AWS SageMaker » ?

SageMaker Model, EndpointConfig, Endpoint, inférence en temps réel, transformation par lots. Tu pratiques Learn AI with Python avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Learn AI with Python ?

Aucune expérience préalable n'est requise. Learn AI with Python sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « Déploiement cloud : AWS SageMaker » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Learn AI with Python ?

Oui. Chaque leçon Learn AI with Python inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Conteneuriser des modèles d’apprentissage automatique avec Docker
  2. Déploiement cloud : AWS SageMaker
  3. Service haute performance avec Triton Inference Server
  4. Mise à l’échelle et autoscaling des points de terminaison de modèles
← Retour à Learn AI with Python