Inférence en temps réel - Amazon SageMaker

Inférence en temps réel

L'inférence en temps réel est idéale pour les charges de travail d'inférence où vous avez des exigences en temps réel, interactives et à faible latence. Vous pouvez déployer votre modèle sur les services d'hébergement SageMaker et obtenir un point de terminaison qui peut être utilisé pour l'inférence. Ces points de terminaison sont entièrement gérés, prennent en charge la scalabilité automatique (voir Scalabilité automatique des modèles Amazon SageMaker) et peuvent être déployés dans plusieurs Zones de disponibilité.

Déployer votre modèle

Le processus de déploiement d'un modèle à l'aide des services d'hébergement SageMaker comporte trois étapes :

  1. Création d'un modèle dans SageMaker : en créant un modèle, vous indiquez à SageMaker où en trouver les composantes. Cela inclut le chemin d'accès S3 où les artefacts du modèle sont stockés, ainsi que le chemin de registre Docker pour l'image qui contient le code d'inférence. Dans les étapes de déploiement suivantes, vous spécifiez le modèle par son nom. Pour de plus amples informations, veuillez consulter l'API CreateModel.

    Note

    Le compartiment S3 où les artefacts de modèle sont stockés doit se trouver dans la même région que le modèle qui vous êtes en train de créer.

  2. Création d'une configuration de point de terminaison pour un point de terminaison HTTPS : spécifiez le nom d'un ou plusieurs modèles dans des variantes de production et les instances de calcul ML que SageMaker doit lancer pour héberger chaque variante de production.

    Note

    SageMaker prend en charge l'exécution (a) de plusieurs modèles, (b) de plusieurs variantes d'un modèle ou (c) de combinaisons de modèles et de variantes sur le même point de terminaison. Les variantes de modèle peuvent faire référence au même conteneur d'inférence de modèle (c'est-à-dire exécuter le même algorithme), mais utiliser des artefacts de modèle différents (par exemple, des valeurs de poids de modèle différentes basées sur d'autres configurations d'hyperparamètres). En revanche, deux modèles différents peuvent utiliser le même algorithme, mais se concentrer sur des problèmes métiers ou des objectifs sous-jacents différents et peuvent fonctionner sur des jeux de données différents.

    Lorsque vous hébergez des modèles en production, vous pouvez configurer le point de terminaison pour mettre à l'échelle de manière élastique les instances de calcul ML déployées. Pour chaque variante de production, spécifiez le nombre souhaité d'instances de calcul ML à déployer. Lorsque vous spécifiez deux instances ou plus, SageMaker les lance dans plusieurs zones de disponibilité. Cela garantit une disponibilité continue. SageMaker gère le déploiement des instances. Pour de plus amples informations, veuillez consulter l'API CreateEndpointConfig.

  3. Création d'un point de terminaison HTTPS : fournissez la configuration du point de terminaison à SageMaker. Le service lance les instances de calcul ML et déploie le ou les modèles tel que spécifié dans la configuration. Pour de plus amples informations, veuillez consulter l'API CreateEndpoint. Pour obtenir des inférences à partir du modèle, les applications client envoient des demandes au point de terminaison HTTPS du Runtime SageMaker. Pour de plus amples informations, veuillez consulter l'API InvokeEndpoint.

    Note

    Les points de terminaison sont étendus à un compte individuel AWS et ne sont pas publics. L'URL ne contient pas l'ID de compte, mais SageMaker détermine l'ID de compte à partir du jeton d'authentification fourni par l'appelant.

    Pour obtenir un exemple d'utilisation d'Amazon API Gateway et d'AWS Lambda pour configurer et déployer un service web que vous pouvez appeler à partir d'une application client qui n'entre pas dans la portée de votre compte, veuillez consulter Call a SageMaker model endpoint using Amazon API Gateway and AWS Lambda (Appeler un point de terminaison de modèle à l'aide d'Amazon API Gateway et d'Amazon Lambda) dans le AWS Machine Learning Blog (Blog du Machine Learning).

Note

Lorsque vous créez un point de terminaison, SageMaker attache un volume de stockage Amazon EBS à chaque instance de calcul ML qui héberge le point de terminaison. La taille du volume de stockage dépend du type d'instance. Pour obtenir la liste des types d'instances pris en charge par le service d'hébergement SageMaker, veuillez consulter Limites de service AWS. Pour obtenir la liste des tailles des volumes de stockage que SageMaker attache à chaque instance, veuillez consulter Hébergement de volumes de stockage d'instance.

Pour augmenter la précision d'un modèle, vous pouvez choisir d'enregistrer les données d'entrée de l'utilisateur et la réalité du terrain, si disponible, dans le cadre des données d'entraînement. Vous pouvez ensuite réentraîner le modèle régulièrement avec un ensemble de données d'entraînement plus important et de meilleure qualité.