Modèles hôtes ainsi que la logique de prétraitement en tant que pipeline d'inférence série derrière un point de terminaison - Amazon SageMaker

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.

Modèles hôtes ainsi que la logique de prétraitement en tant que pipeline d'inférence série derrière un point de terminaison

Un pipeline d'inférence est un modèle Amazon SageMaker composé d'une séquence linéaire de deux à quinze conteneurs qui traitent les demandes d'inférence sur des données. Vous utilisez un pipeline d'inférence pour définir et déployer une combinaison d'algorithmes intégrés SageMaker pré-entraînés et de vos propres algorithmes packagés dans des conteneurs Docker. Vous pouvez utiliser un pipeline d'inférence pour combiner les tâches de science des données de prétraitement, prédictions et post-traitement. Les pipelines d'inférence sont entièrement gérés.

Vous pouvez ajouter des conteneurs SageMaker Spark ML Serving et Scikit-learn qui réutilisent les transformateurs de données développés pour les modèles d'entraînement. Le pipeline d'inférence assemblé peut être considéré globalement comme un modèle SageMaker utilisable pour réaliser des prédictions en temps réel ou traiter des transformations par lots directement, sans prétraitement externe.

Dans un modèle de pipeline d'inférence, SageMaker gère les appels sous la forme d'une séquence de demandes HTTP. Le premier conteneur du pipeline gère la demande initiale. La réponse intermédiaire est ensuite envoyée en tant que demande au deuxième conteneur, et ainsi de suite pour chaque conteneur du pipeline. SageMaker renvoie la réponse finale au client.

Lorsque vous déployez le modèle de pipeline, SageMaker installe et exécute tous les conteneurs sur chaque instance Amazon Elastic Compute Cloud (Amazon EC2) dans le point de terminaison ou la tâche de transformation. Le traitement de fonctionnalité et les inférences s'exécutent avec une faible latence, car les conteneurs sont colocalisés sur les mêmes instances EC2. Vous définissez les conteneurs pour un modèle de pipeline à l'aide de l'opération CreateModel ou à partir de la console. Au lieu de définir un PrimaryContainer, vous utilisez le paramètre Containers pour définir les conteneurs qui constituent le pipeline. Vous spécifiez également l'ordre dans lequel les conteneurs sont exécutés.

Un modèle de pipeline est immuable, mais vous pouvez mettre à jour un pipeline d'inférence en en déployant un nouveau à l'aide de l'opération UpdateEndpoint. Cette modularité prend en charge une plus grande flexibilité dans le cadre de l'expérimentation.

Pour en savoir plus sur la création d'un pipeline d'inférence avec le registre de modèles SageMaker, veuillez consulter Enregistrer et déployer des modèles avec Model Registry.

Cette fonctionnalité est disponible sans coûts supplémentaires. Vous payez uniquement pour les instances qui s'exécutent sur un point de terminaison.

Exemples de blocs-notes pour les pipelines d'inférence

Pour obtenir un exemple illustrant comment créer et déployer des pipelines d'inférence, consultez l'exemple de bloc-notes Pipeline d'inférence avec Scikit-learn et Linear Learner (langue française non garantie). Pour obtenir des instructions relatives à la création d'instances de blocs-notes Jupyter et leur utilisation pour exécuter l'exemple dans SageMaker, veuillez consulter Instances Amazon SageMaker Notebook.

Pour consulter une liste de tous les exemples SageMaker, après avoir créé et ouvert une instance de bloc-notes, choisissez l'onglet SageMaker Examples (Exemples SageMaker). Il existe trois blocs-notes de pipelines d'inférence. Les deux premiers blocs-notes de pipelines d'inférence sont situés dans le dossier advanced_functionality et le troisième dans le dossier sagemaker-python-sdk. Pour ouvrir un bloc-notes, choisissez l'onglet Use (Utiliser) correspondant, puis Create copy (Créer une copie).