Déploiement de modèles pour l'inférence - Amazon SageMaker AI

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Déploiement de modèles pour l'inférence

Avec Amazon SageMaker AI, vous pouvez commencer à obtenir des prédictions, ou des inférences, à partir de vos modèles d'apprentissage automatique entraînés. SageMaker L'IA propose une large sélection d'options de déploiement d'infrastructures et de modèles de machine learning pour répondre à tous vos besoins en matière d'inférence de machine learning. Avec SageMaker AI Inference, vous pouvez étendre le déploiement de vos modèles, gérer les modèles plus efficacement en production et réduire la charge opérationnelle. SageMaker L'IA vous propose diverses options d'inférence, telles que des points de terminaison en temps réel pour obtenir une inférence à faible latence, des points de terminaison sans serveur pour une infrastructure entièrement gérée et un dimensionnement automatique, et des points de terminaison asynchrones pour des lots de demandes. En tirant parti de l'option d'inférence adaptée à votre cas d'utilisation, vous pouvez garantir un déploiement et une inférence efficaces et modélisés.

Choix d'une fonctionnalité

Il existe plusieurs cas d'utilisation pour déployer des modèles de machine learning avec SageMaker l'IA. Cette section décrit ces cas d'utilisation, ainsi que la fonctionnalité d' SageMaker intelligence artificielle que nous recommandons pour chaque cas d'utilisation.

Cas d’utilisation

Voici les principaux cas d'utilisation du déploiement de modèles de machine learning avec l' SageMaker IA.

  • Cas d'utilisation 1 : Déployer un modèle d'apprentissage automatique dans un environnement à code faible ou nul. Pour les débutants ou les novices en SageMaker matière d'IA, vous pouvez déployer des modèles préentraînés à l'aide d'Amazon SageMaker JumpStart via l'interface Amazon SageMaker Studio, sans avoir besoin de configurations complexes.

  • Cas d'utilisation 2 : utilisez du code pour déployer des modèles de machine learning avec plus de flexibilité et de contrôle. Les praticiens du ML expérimentés peuvent déployer leurs propres modèles avec des paramètres personnalisés adaptés aux besoins de leurs applications à l'aide de la ModelBuilder classe du SDK SageMaker AI Python, qui fournit un contrôle précis sur divers paramètres, tels que les types d'instances, l'isolation du réseau et l'allocation des ressources.

  • Cas d'utilisation 3 : Déployez des modèles de machine learning à grande échelle. Pour les utilisateurs avancés et les organisations qui souhaitent gérer des modèles à grande échelle en production, utilisez les AWS SDK for Python (Boto3) outils Infrastructure as Code (IaC) et CI/CD souhaités pour provisionner les ressources et automatiser la gestion des ressources. AWS CloudFormation

Le tableau suivant décrit les principales considérations et les compromis relatifs aux fonctionnalités d' SageMaker IA correspondant à chaque cas d'utilisation.

Cas d'utilisation 1 Cas d'utilisation 2 Cas d'utilisation 3
SageMaker Fonctionnalité d'IA Utilisez-le JumpStart dans Studio pour accélérer le déploiement de votre modèle de base. Déployez des modèles ModelBuilder à l'aide du SDK SageMaker Python. Déployez et gérez des modèles à grande échelle avec AWS CloudFormation.
Description Utilisez l'interface utilisateur de Studio pour déployer des modèles préentraînés à partir d'un catalogue vers des points de terminaison d'inférence préconfigurés. Cette option est idéale pour les data scientists citoyens ou pour tous ceux qui souhaitent déployer un modèle sans configurer de paramètres complexes. Utilisez la ModelBuilder classe du SDK Amazon SageMaker AI Python pour déployer votre propre modèle et configurer les paramètres de déploiement. Cette option est idéale pour les data scientists expérimentés ou pour tous ceux qui ont leur propre modèle à déployer et qui ont besoin d'un contrôle précis. Utilisation de AWS CloudFormation l'infrastructure en tant que code (IaC) pour le contrôle programmatique et l'automatisation du déploiement et de la gestion de modèles d' SageMaker IA. Cette option est idéale pour les utilisateurs expérimentés qui ont besoin de déploiements cohérents et reproductibles.
Optimisé pour Déploiements rapides et rationalisés de modèles open source populaires Déploiement de vos propres modèles Gestion continue des modèles en production
Considérations Manque de personnalisation des paramètres du conteneur et des besoins spécifiques des applications Aucune interface utilisateur, vous devez être à l'aise avec le développement et la maintenance du code Python Nécessite une gestion de l'infrastructure et des ressources organisationnelles, ainsi qu'une connaissance du AWS SDK for Python (Boto3) ou des AWS CloudFormation modèles.
Environnement recommandé Un domaine d' SageMaker IA Un environnement de développement Python configuré avec vos AWS informations d'identification et le SDK SageMaker Python installé, ou un IDE SageMaker AI tel que SageMaker JupyterLab Le AWS CLI, un environnement de développement local et des outils d'infrastructure en tant que code (IaC) et de CI/CD

Options supplémentaires

SageMaker L'IA propose différentes options pour vos cas d'utilisation d'inférence, vous permettant ainsi de choisir l'étendue technique et la profondeur de vos déploiements :

  • Déploiement d'un modèle sur un point de terminaison. Lors du déploiement de votre modèle, considérez les options suivantes :

    • Inférence en temps réel. L'inférence en temps réel est idéale pour les charges de travail d'inférence nécessitant une faible latence en termes d'interaction.

    • Déployez des modèles avec Amazon SageMaker Serverless Inference. Utilisez Serverless Inference pour déployer des modèles sans configurer ni gérer aucune infrastructure sous-jacente. Cette option est idéale pour les charges de travail soumises à des périodes d'inactivité entre les pics de trafic et qui peuvent tolérer les démarrages à froid.

    • Inférence asynchrone. met en file d'attente les demandes entrantes et les traite de manière asynchrone. Cette option est idéale pour les demandes comportant une charge utile importante (jusqu'à 1 Go), des délais de traitement longs (jusqu'à une heure d'inférence asynchrone) et des exigences de latence en temps quasi réel

  • Optimisation des coûts. Pour optimiser vos coûts d'inférence, considérez les options suivantes :

    • Optimisation des performances des modèles avec SageMaker Neo. Utilisez SageMaker Neo pour optimiser et exécuter vos modèles d'apprentissage automatique avec de meilleures performances et une meilleure efficacité, ce qui vous aide à minimiser les coûts de calcul en optimisant automatiquement les modèles pour qu'ils s'exécutent dans des environnements tels que les puces AWS Inferentia.

    • Mise à l'échelle automatique des modèles Amazon SageMaker AI. Utilisez l'autoscaling pour ajuster dynamiquement les ressources de calcul de vos terminaux en fonction des modèles de trafic entrant, ce qui vous permet d'optimiser les coûts en ne payant que pour les ressources que vous utilisez à un moment donné.