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

Démarrage rapide : création d'un domaine SageMaker sandbox pour lancer des EMR clusters Amazon 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 EMR clusters Amazon directement depuis Studio. Les étapes fournissent un exemple de bloc-notes que vous pouvez connecter à un EMR cluster Amazon pour commencer à fonctionner Spark charges de travail. À l'aide de ce bloc-notes, vous allez créer un système de génération augmentée par extraction (RAG) à l'aide du traitement distribué Amazon EMR Spark et de la base de données OpenSearch vectorielle.

Note

Pour commencer, connectez-vous à la console de AWS gestion à l'aide d'un compte utilisateur AWS Identity and Access Management (IAM) doté d'autorisations d'administrateur. Pour plus d'informations sur la création d'un AWS compte et la création d'un utilisateur doté d'un accès administratif, consultezCompléter les SageMaker prérequis Amazon.

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

Dans les étapes suivantes, vous allez appliquer une AWS CloudFormation pile pour créer automatiquement un nouveau SageMaker domaine. La pile crée également un profil utilisateur et configure l'environnement et les autorisations nécessaires. Le SageMaker domaine est configuré pour vous permettre de lancer directement des EMR clusters Amazon depuis Studio. Dans cet exemple, les EMR clusters Amazon sont créés dans le même AWS compte que SageMaker sans authentification. Vous pouvez trouver des AWS 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 autorise 5 domaines Studio par AWS compte et Région AWS par défaut. Assurez-vous que votre compte ne comporte pas plus de 4 domaines dans votre région avant de créer votre stack.

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

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

  3. Choisissez Créer une pile, puis 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 AWS 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 Next.

  7. À l'étape 4, cochez la case pour accuser réception de la création de ressources et choisissez Create stack. Cela crée un domaine Studio dans votre compte et dans votre région.

Étape 2 : Lancer un nouveau EMR cluster Amazon depuis l'interface utilisateur de Studio

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

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

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

  3. Lancez Studio depuis le profil utilisateurgenai-user.

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

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

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

  7. Choisissez Create resource pour lancer le nouveau EMR cluster Amazon.

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

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

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

  1. Lancement JupyterLab

    Depuis Studio, lancez l' JupyterLab application.

  2. Créez 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 l'espace et conservez-le comme privé. Conservez les valeurs par défaut de tous les autres paramètres, puis choisissez Créer un espace.

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

  3. Déployez vos modèles LLM et intégrez-les à 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 de récupérer le Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb bloc-notes dans votre répertoire local et de télécharger trois PDF fichiers dans un AWSGuides dossier local.

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

      Avertissement

      Dans la section Contrat de licence Llama 2, assurez-vous d'accepter le Llama2 EULA avant de continuer.

      Le bloc-notes déploie deux modèlesall-MiniLM-L6-v2 Models, Llama 2 et c'est parti ml.g5.2xlarge pour l'inférence.

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

  4. Ouvrez 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. Choisissez un PySpark noyau

    Ouvrez votre Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb bloc-notes et assurez-vous que vous utilisez le SparkMagic PySpark noyau. Vous pouvez changer de noyau en haut à droite de votre bloc-notes. Choisissez le nom actuel du noyau pour ouvrir un modal de sélection du noyau, puis choisissezSparkMagic PySpark.

  6. Connectez votre ordinateur portable au cluster
    1. En haut à droite de votre bloc-notes, choisissez Cluster. Cette action ouvre une fenêtre modale répertoriant tous les clusters en cours d'exécution auxquels vous êtes autorisé à accéder.

    2. Sélectionnez votre cluster, puis sélectionnez Connect. Une nouvelle fenêtre modale de sélection du type d'identifiant s'ouvre.

    3. Choisissez Aucune information d'identification, puis Connect.

      Modal montrant la sélection des informations d'EMRidentification Amazon pour les JupyterLab ordinateurs portables.
    4. Une cellule de bloc-notes se remplit et s'exécute automatiquement. La cellule du bloc-notes charge l'sagemaker_studio_analytics_extension.magicsextension, qui fournit des fonctionnalités permettant de se connecter au EMR cluster Amazon. Il utilise ensuite la commande %sm_analytics magique pour établir la connexion à votre EMR cluster Amazon et à l'application Spark.

      Note

      Assurez-vous que le type d'authentification de la chaîne de connexion à votre EMR cluster Amazon est défini surNone. Ceci est illustré par la valeur --auth-type None de 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 avec succès, le message de sortie de votre cellule de connexion doit afficher vos SparkSession informations, notamment votre identifiant de cluster, YARN l'identifiant d'application et un lien vers le Spark Interface utilisateur pour surveiller votre Spark emplois.

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

Étape 4 : Nettoyez votre AWS CloudFormation pile

Une fois que vous avez terminé, assurez-vous de résilier vos deux terminaux et de supprimer votre AWS CloudFormation pile pour éviter des frais continus. La suppression de la pile nettoie toutes les ressources mises en service par la pile.

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

  2. Sélectionnez la pile que vous souhaitez supprimer. Vous pouvez le rechercher par son nom ou le 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 soit terminée. Cela peut prendre quelques minutes. AWS 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 API points de terminaison d'un modèle
  1. Accédez à la SageMaker console : https://console.aws.amazon.com/sagemaker/.

  2. Dans le volet de navigation de gauche, choisissez Inference, puis Endpoints.

  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 terminaisonmeta-llama2-7b-chat-tg-ep.