Déploiement de modèles de fondation accessibles au public à l’aide de la classe JumpStartModel - Amazon SageMaker AI

Déploiement de modèles de fondation accessibles au public à l’aide de la classe JumpStartModel

Vous pouvez optimiser un algorithme intégré ou un modèle pré-entraîné vers un point de terminaison SageMaker AI en quelques lignes de code à l’aide du kit SageMaker Python SDK.

  1. Commencez par rechercher l’ID de modèle de votre choix dans le tableau des algorithmes intégrés aux modèles pré-entraînés.

  2. À l’aide de cet ID, définissez votre modèle en tant que modèle JumpStart.

    from sagemaker.jumpstart.model import JumpStartModel model_id = "huggingface-text2text-flan-t5-xl" my_model = JumpStartModel(model_id=model_id)
  3. Utilisez la méthode deploy pour déployer automatiquement votre modèle à des fins d’inférence. Dans cet exemple, nous utilisons le modèle Hugging Face FLAN-T5 XL.

    predictor = my_model.deploy()
  4. Vous pouvez ensuite exécuter l’inférence avec le modèle déployé, à l’aide de la méthode predict.

    question = "What is Southern California often abbreviated as?" response = predictor.predict(question) print(response)
Note

Cet exemple utilise le modèle de fondation FLAN-T5 XL, qui convient à un large éventail de cas d’utilisation de génération de texte, notamment les réponses à des questions, la synthèse, la création de chatbot, etc. Pour plus d’informations sur les cas d’utilisation d’un modèle, consultez Modèles de fondation disponibles.

Pour plus d’informations sur la classe JumpStartModel et ses paramètres, consultez JumpStartModel.

Vérification de types d’instance par défaut

Vous pouvez éventuellement inclure des versions de modèle ou des types d’instances spécifiques lorsque vous déployez un modèle pré-entraîné à l’aide de la classe JumpStartModel. Tous les modèles JumpStart possèdent un type d’instance par défaut. Extrayez le type d’instance de déploiement par défaut à l’aide du code suivant :

from sagemaker import instance_types instance_type = instance_types.retrieve_default( model_id=model_id, model_version=model_version, scope="inference") print(instance_type)

À l’aide de la méthode instance_types.retrieve(), découvrez tous les types d’instances pris en charge pour un modèle JumpStart donné.

Utilisation de composants d’inférence pour déployer plusieurs modèles vers un point de terminaison partagé

Un composant d’inférence est un objet d’hébergement SageMaker AI que vous pouvez utiliser pour déployer un modèle ou plusieurs modèles vers un point de terminaison afin d’améliorer la flexibilité et la capacité de mise à l’échelle. Vous devez modifier le endpoint_type pour que votre modèle JumpStart soit basé sur des composants d’inférence plutôt que sur le point de terminaison basé sur le modèle par défaut.

predictor = my_model.deploy( endpoint_name = 'jumpstart-model-id-123456789012', endpoint_type = EndpointType.INFERENCE_COMPONENT_BASED )

Pour plus d’informations sur la création de points de terminaison avec des composants d’inférence, et le déploiement de modèles SageMaker AI, consultez Utilisation partagée des ressources avec plusieurs modèles.

Vérification des formats d’inférence d’entrée et de sortie valides

Pour vérifier les formats d’entrée et de sortie de données valides à des fins d’inférence, vous pouvez utiliser la méthode retrieve_options() des classes Serializers et Deserializers.

print(sagemaker.serializers.retrieve_options(model_id=model_id, model_version=model_version)) print(sagemaker.deserializers.retrieve_options(model_id=model_id, model_version=model_version))

Vérification du contenu pris en charge et des types d’acceptations

De même, vous pouvez utiliser la méthode retrieve_options() pour vérifier le contenu pris en charge et les types d’acceptations pour un modèle.

print(sagemaker.content_types.retrieve_options(model_id=model_id, model_version=model_version)) print(sagemaker.accept_types.retrieve_options(model_id=model_id, model_version=model_version))

Pour plus d’informations sur les utilitaires, consultez API d’utilitaire.