Démarrage rapide : création d'un domaine sandbox SageMaker AI pour lancer des clusters Amazon EMR dans Studio - 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émarrage rapide : création d'un domaine sandbox SageMaker AI pour lancer des clusters Amazon EMR dans Studio

Cette section explique comment configurer rapidement un environnement de test complet dans Amazon SageMaker Studio. Vous allez créer un nouveau domaine Studio qui permettra aux utilisateurs de lancer de nouveaux clusters Amazon EMR directement depuis Studio. Cette procédure fournit un exemple de bloc-notes que vous pouvez connecter à un cluster Amazon EMR pour commencer à exécuter des charges de travail Spark. À l'aide de ce bloc-notes, vous allez créer un système de génération augmentée (RAG) à l'aide du traitement distribué Amazon EMR Spark et de la base de données vectorielle. OpenSearch

Note

Pour commencer, connectez-vous à la console de AWS gestion à l'aide d'un compte utilisateur Gestion des identités et des accès AWS (IAM) doté d'autorisations d'administrateur. Pour en savoir plus sur la façon de s’inscrire à un compte AWS et de créer un utilisateur doté d’un accès administratif, consultez Compléter les prérequis SageMaker relatifs à Amazon AI.

Étape 1 : créer un domaine SageMaker AI pour lancer des clusters Amazon EMR dans Studio

Dans les étapes suivantes, vous appliquez une CloudFormation pile pour créer automatiquement un nouveau domaine d' SageMaker IA. La pile crée également un profil utilisateur et configure l’environnement et les autorisations nécessaires. Le domaine SageMaker AI est configuré pour vous permettre de lancer directement des clusters Amazon EMR depuis Studio. Dans cet exemple, les clusters Amazon EMR sont créés dans le même AWS compte que SageMaker AI sans authentification. Vous pouvez trouver des CloudFormation piles supplémentaires prenant en charge diverses méthodes d'authentification telles que Kerberos dans le référentiel getting_started. GitHub

Note

SageMaker L'IA autorise 5 domaines Studio par AWS compte et Région AWS par défaut. Avant de créer votre pile, assurez-vous que votre compte ne comporte pas plus de 4 domaines dans votre région.

Suivez ces étapes pour configurer un domaine SageMaker AI afin de lancer des clusters Amazon EMR depuis Studio.
  1. Téléchargez le fichier brut de ce CloudFormationmodèle depuis le sagemaker-studio-emr GitHub référentiel.

  2. Accédez à la CloudFormation console : https://console.aws.amazon.com/cloudformation

  3. Choisissez Créer une pile et sélectionnez Avec de nouvelles ressources (standard) dans le menu déroulant.

  4. À l’Étape 1 :

    1. Dans la section Préparer le modèle, sélectionnez Choisir un modèle existant.

    2. Dans la section Spécifier un modèle, sélectionnez Charger un modèle de fichier.

    3. Téléchargez le CloudFormation modèle téléchargé et choisissez Next.

  5. À l'étape 2, entrez un nom de pile SageMakerDomainName, puis choisissez Next.

  6. À l’Étape 3, conservez toutes les valeurs par défaut et choisissez Suivant.

  7. À l’Étape 4, cochez la case pour accuser réception de la création de ressources et choisissez Créer une pile. Cela crée un domaine Studio dans votre compte et dans votre région.

Étape 2 : Lancement d’un nouveau cluster Amazon EMR depuis l’interface utilisateur de Studio

Dans les étapes suivantes, vous allez créer un nouveau cluster Amazon EMR à partir de l’interface utilisateur de Studio.

  1. Accédez à la console SageMaker AI https://console.aws.amazon.com/sagemaker/et choisissez Domaines dans le menu de gauche.

  2. Cliquez sur votre nom de domaine Generative AIDomain pour ouvrir la page des détails du domaine.

  3. Lancez Studio depuis le profil utilisateur genai-user.

  4. Dans le volet de navigation de gauche, accédez à Données puis à Clusters Amazon EMR.

  5. Sur la page Clusters Amazon EMR, choisissez Créer. Sélectionnez le modèle SageMaker Studio Domain No Auth EMR créé par CloudFormation la pile, puis choisissez Next.

  6. Entrez un nom pour le nouveau cluster Amazon EMR. Mettez éventuellement à jour d’autres paramètres tels que le type d’instance des nœuds principaux, le délai d’inactivité ou le nombre de nœuds principaux.

  7. Choisissez Créer une ressource pour lancer le nouveau cluster Amazon EMR.

    Après avoir créé le cluster Amazon EMR, suivez le statut sur la page Clusters EMR. Lorsque le statut passe à Running/Waiting, votre cluster Amazon EMR est prêt à être utilisé dans Studio.

Étape 3 : Connecter un JupyterLab bloc-notes au cluster Amazon EMR

Dans les étapes suivantes, vous allez connecter un bloc-notes JupyterLab à votre cluster Amazon EMR en cours d'exécution. Dans cet exemple, vous importez un bloc-notes vous permettant de créer un système RAG (Retrieval Augmented Generation) à l'aide du traitement distribué Amazon EMR Spark et de la base de données vectorielle. OpenSearch

  1. Lancement JupyterLab

    Depuis Studio, lancez l' JupyterLab application.

  2. Création d’un espace privé

    Si vous n'avez pas créé d'espace pour votre JupyterLab application, choisissez Créer un JupyterLab espace. Entrez un nom pour cet espace et conservez l’espace comme Privé. Laissez tous les autres paramètres à leurs valeurs par défaut, puis choisissez Créer un espace.

    Sinon, exécutez votre JupyterLab espace pour lancer une JupyterLab application.

  3. Déploiement de votre LLM et de vos modèles de vectorisation à des fins d’inférence
    • Dans le menu supérieur, choisissez Fichier, Nouveau, puis Terminal.

    • Dans le terminal, exécutez la commande suivante.

      wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-00-setup/Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb mkdir AWSGuides cd AWSGuides wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/AmazonSageMakerDeveloperGuide.pdf wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/EC2DeveloperGuide.pdf wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/S3DeveloperGuide.pdf

      Cela permet d’extraire le bloc-notes Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb dans votre répertoire local et de télécharger trois fichiers PDF dans un dossier AWSGuides local.

    • Ouvrez lab-00-setup/Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb, conservez le noyau Python 3 (ipykernel) et exécutez chaque cellule.

      Avertissement

      Dans la section Contrat de licence Llama 2, veillez à accepter le CLUF Llama2 avant de continuer.

      Le bloc-notes déploie deux modèles, Llama 2 et all-MiniLM-L6-v2 Models, sur ml.g5.2xlarge pour inférence.

      Le déploiement des modèles et la création des points de terminaison peuvent prendre un certain temps.

  4. Ouverture de votre bloc-notes principal

    Dans JupyterLab, ouvrez votre terminal et exécutez la commande suivante.

    cd .. wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb

    Vous devriez voir le Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb bloc-notes supplémentaire dans le panneau de gauche de JupyterLab.

  5. Choix d’un noyau PySpark

    Ouvrez votre bloc-notes Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb et assurez-vous d’utiliser le noyau SparkMagic PySpark. Vous pouvez changer de noyau en haut à droite de votre bloc-notes. Choisissez le nom actuel du noyau pour ouvrir une fenêtre modale de sélection de noyau, puis choisissez SparkMagic PySpark.

  6. Connexion de votre bloc-notes au cluster
    1. En haut à droite de votre bloc-notes, choisissez Cluster. Cette action ouvre une fenêtre modale qui répertorie tous les clusters en cours d’exécution auxquels vous avez l’autorisation d’accéder.

    2. Sélectionnez votre cluster, puis choisissez Se connecter. Une nouvelle fenêtre modale de sélection du type d’informations d’identification s’ouvre.

    3. Choisissez Aucune information d’identification, puis Se connecter.

      Modal montrant la sélection des informations d'identification Amazon EMR pour les JupyterLab ordinateurs portables.
    4. Une cellule de bloc-notes est remplie et exécutée automatiquement. La cellule de bloc-notes charge l’extension sagemaker_studio_analytics_extension.magics, qui fournit des fonctionnalités permettant de se connecter au cluster Amazon EMR. Elle utilise ensuite la commande magique %sm_analytics pour établir la connexion à votre cluster Amazon EMR et à l’application Spark.

      Note

      Assurez-vous que le type d’authentification de la chaîne de connexion à votre cluster Amazon EMR est défini sur None. Ceci est illustré par la valeur --auth-type None dans l’exemple suivant. Vous pouvez modifier le champ, si nécessaire.

      %load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --verify-certificate False --cluster-id your-cluster-id --auth-type None --language python
    5. Une fois que vous avez établi la connexion, le message de sortie de votre cellule de connexion devrait afficher vos informations SparkSession, notamment l’identifiant de votre cluster, l’identifiant de l’application YARN et un lien vers l’interface utilisateur Spark pour surveiller vos tâches Spark.

Vous êtes prêt à utiliser le bloc-notes Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb. Cet exemple de bloc-notes exécute des PySpark charges de travail distribuées pour créer un système RAG à l'aide LangChain de et. OpenSearch

Étape 4 : Nettoyez votre CloudFormation pile

Une fois que vous avez terminé, assurez-vous de résilier vos deux points de terminaison et de supprimer votre pile CloudFormation pour éviter des frais ultérieurs. La suppression de la pile nettoie toutes les ressources provisionnées par la pile.

Pour supprimer votre CloudFormation pile lorsque vous en avez terminé
  1. Accédez à la CloudFormation console : https://console.aws.amazon.com/cloudformation

  2. Sélectionnez la pile que vous voulez supprimer. Vous pouvez la rechercher par son nom ou la trouver dans la liste des piles.

  3. Cliquez sur le bouton Supprimer pour finaliser la suppression de la pile, puis sur Supprimer à nouveau pour confirmer que toutes les ressources créées par la pile seront supprimées.

    Attendez que la suppression de la pile se termine. Cela peut prendre quelques minutes. CloudFormation nettoie automatiquement toutes les ressources définies dans le modèle de pile.

  4. Vérifiez que toutes les ressources créées par la pile ont été supprimées. Par exemple, vérifiez s’il n’y a pas de cluster Amazon EMR restant.

Pour supprimer les points de terminaison d’API d’un modèle
  1. Accédez à la console SageMaker AI : https://console.aws.amazon.com/sagemaker/.

  2. Dans le volet de navigation, choisissez Inférence, puis Points de terminaison.

  3. Sélectionnez le point de terminaison hf-allminil6v2-embedding-ep, puis choisissez Supprimer dans la liste déroulante Actions. Répétez l’étape pour le point de terminaison meta-llama2-7b-chat-tg-ep.