Les modèles Meta Llama 3 sont désormais disponibles dans Amazon SageMaker JumpStart | Services Web Amazon

Les modèles Meta Llama 3 sont désormais disponibles dans Amazon SageMaker JumpStart | Services Web Amazon

Aujourd'hui, nous sommes ravis d'annoncer que les modèles de fondation Meta Llama 3 sont disponibles via Amazon SageMaker JumpStart pour déployer et exécuter l'inférence. Les modèles Llama 3 sont une collection de modèles de texte génératifs pré-entraînés et affinés.

Dans cet article, nous expliquons comment découvrir et déployer des modèles Llama 3 via SageMaker JumpStart.

Qu'est-ce que Meta Llama 3

Llama 3 est disponible en deux tailles de paramètres — 8B et 70B avec une longueur de contexte de 8 Ko — qui peuvent prendre en charge un large éventail de cas d'utilisation avec des améliorations dans le raisonnement, la génération de code et le suivi des instructions. Llama 3 utilise une architecture de transformateur uniquement décodeur et un nouveau tokenizer qui offre des performances de modèle améliorées avec une taille de 128 Ko. De plus, Meta a amélioré les procédures post-formation qui ont considérablement réduit les taux de faux refus, amélioré l'alignement et accru la diversité des réponses des modèles. Vous pouvez désormais bénéficier des avantages combinés des performances de Llama 3 et des contrôles MLOps avec les fonctionnalités Amazon SageMaker telles que SageMaker Pipelines, SageMaker Debugger ou les journaux de conteneur. De plus, le modèle sera déployé dans un environnement sécurisé AWS sous les contrôles de votre VPC, contribuant ainsi à assurer la sécurité des données.

Qu'est-ce que SageMaker JumpStart

Avec SageMaker JumpStart, vous pouvez choisir parmi une large sélection de modèles de fondation accessibles au public. Les praticiens du ML peuvent déployer des modèles de base sur des instances SageMaker dédiées à partir d'un environnement réseau isolé et personnaliser les modèles à l'aide de SageMaker pour la formation et le déploiement de modèles. Vous pouvez désormais découvrir et déployer les modèles Llama 3 en quelques clics Amazon SageMakerStudio ou par programmation via le SDK SageMaker Python, vous permettant de dériver les performances du modèle et les contrôles MLOps avec des fonctionnalités SageMaker telles que Pipelines SageMaker, Débogueur SageMakerou les journaux de conteneur. Le modèle est déployé dans un environnement sécurisé AWS et sous les contrôles de votre VPC, contribuant ainsi à assurer la sécurité des données. Les modèles Llama 3 sont disponibles aujourd'hui pour le déploiement et l'inférence dans Amazon SageMaker Studio en us-east-1 (Virginie du Nord), us-east-2 (Ohio), us-west-2 (Oregon), eu-west-1 (Irlande) et ap-northeast-1 (Tokyo) Régions AWS.

Découvrez les modèles

Vous pouvez accéder aux modèles de base via SageMaker JumpStart dans l'interface utilisateur SageMaker Studio et le SDK Python SageMaker. Dans cette section, nous allons voir comment découvrir les modèles dans SageMaker Studio.

SageMaker Studio est un environnement de développement intégré (IDE) qui fournit une interface visuelle Web unique où vous pouvez accéder à des outils spécialement conçus pour effectuer toutes les étapes de développement ML, de la préparation des données à la création, la formation et le déploiement de vos modèles ML. Pour plus de détails sur la façon de démarrer et de configurer SageMaker Studio, reportez-vous à Amazon SageMakerStudio.

Dans SageMaker Studio, vous pouvez accéder à SageMaker JumpStart, qui contient des modèles, des blocs-notes et des solutions prédéfinis, sous Solutions prédéfinies et automatisées.

Les modèles Meta Llama 3 sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

À partir de la page de destination de SageMaker JumpStart, vous pouvez facilement découvrir différents modèles en parcourant différents hubs nommés d'après les fournisseurs de modèles. Vous pouvez trouver des modèles Llama 3 dans le hub Meta. Si vous ne voyez pas les modèles Llama 3, veuillez mettre à jour votre version de SageMaker Studio en arrêtant et en redémarrant. Pour plus d'informations, reportez-vous à Arrêter et mettre à jour les applications Studio Classic.

Les modèles Meta Llama 3 sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez trouver des modèles Llama 3 en recherchant « Meta-llama-3 » dans le champ de recherche situé en haut à gauche.

Les modèles Meta Llama 3 sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez découvrir tous les modèles Meta disponibles dans SageMaker JumpStart en cliquant sur Meta hub.

Les modèles Meta Llama 3 sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Cliquer sur une fiche de modèle ouvre la page de détails du modèle correspondante, à partir de laquelle vous pouvez facilement déployer le modèle.

Les modèles Meta Llama 3 sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Déployer un modèle

Quand vous choisissez Déployer et reconnaissez les termes du CLUF, le déploiement commencera.

Les modèles Meta Llama 3 sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez suivre la progression du déploiement sur la page qui s'affiche après avoir cliqué sur le bouton Déployer.

Les modèles Meta Llama 3 sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Alternativement, vous pouvez choisir Cahier ouvert à déployer via l'exemple de notebook. L'exemple de bloc-notes fournit des conseils de bout en bout sur la manière de déployer le modèle pour l'inférence et de nettoyer les ressources.

Pour déployer à l'aide du notebook, vous commencez par sélectionner un modèle approprié, spécifié par le model_id. Vous pouvez déployer n'importe lequel des modèles sélectionnés sur SageMaker avec le code suivant.

from sagemaker.jumpstart.model import JumpStartModel

model = JumpStartModel(model_id = "meta-textgeneration-llama-3-70b-instruct")
predictor = model.deploy(accept_eula=False)

Par défaut accept_eula est fixé à False. Vous devez accepter manuellement le CLUF pour déployer le point de terminaison avec succès. Ce faisant, vous acceptez le contrat de licence utilisateur et la politique d'utilisation acceptable. Vous pouvez également trouver le contrat de licence Site Web de Lama. Cela déploie le modèle sur SageMaker avec les configurations par défaut, y compris le type d'instance par défaut et les configurations VPC par défaut. Vous pouvez modifier ces configurations en spécifiant des valeurs autres que celles par défaut dans JumpStartModel. Pour en savoir plus, veuillez vous référer à ce qui suit Documentation.

Le tableau suivant répertorie tous les modèles Llama 3 disponibles dans SageMaker JumpStart ainsi que les model_ids, types d'instances par défaut et nombre maximum de jetons totaux (somme du nombre de jetons d'entrée et du nombre de jetons générés) pris en charge pour chacun de ces modèles.

Nom du modèle ID du modèle Total maximum de jetons Type d'instance par défaut
Méta-Lama-3-8B méta-textgénération-llama-3-8B 8192 ml.g5.12xlarge
Meta-Llama-3-8B-Instruct méta-textgénération-llama-3-8B-instruct 8192 ml.g5.12xlarge
Méta-Lama-3-70B méta-textgénération-llama-3-70b 8192 ml.p4d.24xlarge
Meta-Llama-3-70B-Instruct méta-textgénération-llama-3-70b-instruct 8192 ml.p4d.24xlarge

Exécuter l'inférence

Après avoir déployé le modèle, vous pouvez exécuter une inférence sur le point de terminaison déployé via le prédicteur SageMaker. Les modèles d'instructions affinés (Llama 3 : 8B Instruct et 70B Instruct) acceptent un historique des discussions entre l'utilisateur et l'assistant de discussion et génèrent la discussion ultérieure. Les modèles pré-entraînés (Llama 3 : 8B et 70B) nécessitent une invite de chaîne et effectuent la complétion du texte à l'invite fournie.

predictor.predict(payload)

Les paramètres d'inférence contrôlent le processus de génération de texte au point final. Les nouveaux jetons Max contrôlent la taille de la sortie générée par le modèle. Ce n'est pas la même chose que le nombre de mots car le vocabulaire du modèle n'est pas le même que le vocabulaire de la langue anglaise, et chaque jeton ne peut pas être un mot de la langue anglaise. Le paramètre de température contrôle le caractère aléatoire de la sortie. Une température plus élevée entraîne des sorties plus créatives et hallucinées. Tous les paramètres d'inférence sont facultatifs.

Exemples d'invites pour le modèle 70B

Vous pouvez utiliser les modèles Llama 3 pour compléter le texte de n'importe quel morceau de texte. Grâce à la génération de texte, vous pouvez effectuer diverses tâches telles que la réponse aux questions, la traduction linguistique et l'analyse des sentiments, et bien plus encore. La charge utile d'entrée sur le point de terminaison ressemble au code suivant :

payload = {
    “inputs”: str,
   (optional)"parameters":{"max_new_tokens":int, "top_p":float, "temperature":float}
}

Voici quelques exemples d'invites et le texte généré par le modèle. Toutes les sorties sont générées avec des paramètres d'inférence {"max_new_tokens":64, "top_p":0.9, "temperature":0.6}.

Input: Simply put, the theory of relativity states that
Output: 1) the laws of physics are the same for all observers, and 2) the speed of light is constant for all observers. The first part of the theory is known as the special theory of relativity, and the second part is known as the general theory of relativity.nThe special theory of relativity states

Input: I believe the meaning of life is
Output:  to live a life of purpose, on purpose. I believe that we are all here to make a difference in the world, and that we are all here to make a difference in the lives of others. I believe that we are all here to make a difference in the world, and that we are all here to mak

Input: A brief message congratulating the team on the launch:nnHi everyone,nnI just 
Output: wanted to say congratulations on the launch of the new website! It looks great and I'm sure it will be a valuable resource for our customers. I know that a lot of hard work went into making this happen, so thank you all for your efforts.nnBest regards,nJohn Doen

Dans l'exemple suivant, nous montrons comment utiliser les modèles Llama 3 avec quelques plans d'apprentissage en contexte où nous fournissons des échantillons de formation disponibles pour le modèle. Nous effectuons uniquement l'inférence sur le modèle déployé et pendant ce processus, et les poids du modèle ne changent pas.

Input:
Translate English to French:nsea otter => loutre de mernpeppermint => menthe poivréenplush girafe => girafe peluchencheese =>
Output:  fromagenpanda => pandanpenguin => pingouinnpolar bear => ours polairenpuffin => macareuxnsloth => paresseuxnwalrus => morsenwhale => baleinenzebra => zu00e8brenTranslate English to German:n

Exemples d'invites pour le modèle 70B-Instruct

Avec les modèles d'instruction Llama 3 optimisés pour les cas d'utilisation de dialogue, l'entrée dans les points de terminaison du modèle d'instruction correspond à l'historique précédent entre l'assistant de discussion et l'utilisateur. Vous pouvez poser des questions contextuelles à la conversation qui a eu lieu jusqu'à présent. Vous pouvez également fournir la configuration du système, telle que les personnages, qui définissent le comportement de l'assistant de chat. Bien que le format de la charge utile d'entrée soit le même que celui du modèle de base pré-entraîné, le texte d'entrée doit être formaté de la manière suivante :

<|begin_of_text|><|start_header_id|>system<|end_header_id|>

[SYSTEM_TEXT]<|eot_id|><|start_header_id|>user<|end_header_id|>

[USER_TEXT]<|eot_id|><|start_header_id|>assistant<|end_header_id|>

Dans ce modèle d'instructions, vous pouvez éventuellement commencer par un system rôle et incluez autant de rôles alternés que vous le souhaitez dans l’histoire au tour par tour. Le rôle final devrait toujours être assistant et terminer par deux nouveaux sauts de ligne.

Examinons ensuite quelques exemples d’invites et de réponses du modèle. Dans l'exemple suivant, l'utilisateur pose une question simple à l'assistant.

Input: <|begin_of_text|><|start_header_id|>user<|end_header_id|>nnwhat is the recipe of mayonnaise?<|eot_id|><|start_header_id|>assistant<|end_header_id|>nn
Output: The classic condiment! Mayonnaise is a thick, creamy emulsion sauce made from a combination of oil, egg yolks, acid (such as vinegar or lemon juice), and seasonings. Here's a simple recipe to make mayonnaise at home:nn**Ingredients:**nn* 2 egg yolksn* 1 tablespoon lemon juice or vinegar (such as apple cider vinegar or white wine vinegar)n* 1/2 teaspoon Dijon mustard (optional, but recommended for flavor)n* 1/2 cup (120 ml) neutral-tasting oil, such as canola, grapeseed, or sunflower oiln* Salt, to tastenn**Instructions:**nn1. **Start with room temperature ingredients**: This is crucial for emulsification to occur.n2. **In a medium-sized bowl**, whisk together the egg yolks, lemon juice or vinegar, and Dijon mustard (if using) until well combined.n3. **Slowly add the oil**: While continuously whisking the egg yolk mixture, slowly pour in the oil in a thin, steady stream. Start with a very slow drizzle and gradually increase the flow as the mixture thickens.n4. **Whisk constantly**: Keep whisking until the mixture has doubled in volume and has a thick, creamy consistency. This should take about 5-7 minutes.n5. **Check the consistency**: Stop whisking when the mayonnaise has reached the desired consistency. It should be smooth, thick, and hold its shape when the whisk is lifted.n6. **Season with salt**: Add salt to taste, and whisk until well combined.n7. **Taste and adjust**: If the mayonnaise is too thick, add a little water. If it's not thick enough, add a little more oil.nn**Tips and Variations:**nn* Use a neutral-tasting oil to avoid flavoring the mayonnaise.n* If you're using a stand mixer, use the whisk attachment and start with a slow speed, increasing as needed.n* Add flavorings like minced garlic, chopped fresh herbs (e.g., parsley, dill, or tarragon), or grated ginger to create different flavor profiles.n* For a lighter mayonnaise, use only 1 egg yolk or add a little water to thin it out.n* If the mayonnaise breaks or separates, don't worry! Simply start again with a new egg yolk and slowly whisk in the broken mayonnaise.nn**Homemade Mayonnaise vs. Store-Bought:**nnWhile store-bought mayonnaise is convenient, homemade mayonnaise offers several advantages:nn* Freshness: Homemade mayonnaise is made to order, ensuring optimal flavor and texture.n* Customization: You can tailor the flavor to your liking with various seasonings and ingredients.n* No preservatives: Homemade mayonnaise doesn't contain added preservatives, making it a healthier option.nnEnjoy your freshly made mayonnaise!

Dans l'exemple suivant, l'utilisateur a une conversation avec l'assistant sur les sites touristiques de Paris. L'utilisateur s'enquiert ensuite de la première option recommandée par l'assistant de chat.

Input: <|begin_of_text|><|start_header_id|>user<|end_header_id|>nnI am going to Paris, what should I see?<|eot_id|><|start_header_id|>assistant<|end_header_id|>nnParis, the capital of France, is known for its stunning architecture, art museums, historical landmarks, and romantic atmosphere. Here are some of the top attractions to see in Paris:nn1. The Eiffel Tower: The iconic Eiffel Tower is one of the most recognizable landmarks in the world and offers breathtaking views of the city.n2. The Louvre Museum: The Louvre is one of the world's largest and most famous museums, housing an impressive collection of art and artifacts, including the Mona Lisa.n3. Notre-Dame Cathedral: This beautiful cathedral is one of the most famous landmarks in Paris and is known for its Gothic architecture and stunning stained glass windows.nnThese are just a few of the many attractions that Paris has to offer. With so much to see and do, it's no wonder that Paris is one of the most popular tourist destinations in the world.<|eot_id|><|start_header_id|>user<|end_header_id|>nnWhat is so great about #1?<|eot_id|><|start_header_id|>assistant<|end_header_id|>nn
Output: The Eiffel Tower! It's an iconic symbol of Paris and one of the most recognizable landmarks in the world. Here are some reasons why it's so great:nn1. **Engineering marvel**: When it was built for the 1889 World's Fair, the Eiffel Tower was a groundbreaking feat of engineering. It was the tallest structure in the world at the time, standing at 324 meters (1,063 feet).n2. **Panoramic views**: The Eiffel Tower offers breathtaking 360-degree views of the city from its observation decks. You can see many of Paris' famous landmarks, such as the Seine River, the Louvre, and Montmartre.n3. **Romantic atmosphere**: The Eiffel Tower is often associated with romance and is a popular spot for proposals, weddings, and romantic dinners. The tower's iron latticework and twinkling lights at night add to its romantic ambiance.n4. **Historical significance**: The Eiffel Tower has played a significant role in French history, serving as a communication tower during World War I and a symbol of French culture and engineering.n5. **Accessibility**: The Eiffel Tower is easily accessible by public transportation or on foot, and there are various ways to experience it, including taking the stairs, elevator, or a guided tour.n6. **Nighttime spectacle**: The Eiffel Tower is even more magical at night, when it's illuminated with thousands of twinkling lights. The light show, known as the "Eiffel Tower Sparkle," takes place every hour on the hour from dusk to midnight.n7. **Iconic status**: The Eiffel Tower has been featured in countless films, literature, and art, making it an instantly recognizable symbol of Paris and France.nnOverall, the Eiffel Tower is a must-visit attraction in Paris, offering a unique combination of history, engineering, romance, and stunning views.

Dans les exemples suivants, nous définissons la configuration du système.

Input: <|begin_of_text|><|start_header_id|>system<|end_header_id|>nnAlways answer with Haiku<|eot_id|><|start_header_id|>user<|end_header_id|>nnI am going to Paris, what should I see?<|eot_id|><|start_header_id|>assistant<|end_header_id|>nn
Output: Eiffel's iron lacenRiver Seine's gentle flow bynMontmartre's charm calls
Input: <|begin_of_text|><|start_header_id|>system<|end_header_id|>nnAlways answer with emojis<|eot_id|><|start_header_id|>user<|end_header_id|>nnHow to go from Beijing to NY?<|eot_id|><|start_header_id|>assistant<|end_header_id|>nn
Output: ✈️🛬️🇺🇸

Nettoyer

Une fois que vous avez terminé d'exécuter le bloc-notes, assurez-vous de supprimer toutes les ressources que vous avez créées au cours du processus afin que votre facturation soit arrêtée. Utilisez le code suivant :

predictor.delete_model()
predictor.delete_endpoint()

Conclusion

Dans cet article, nous vous avons montré comment démarrer avec les modèles Llama 3 dans SageMaker Studio. Vous avez désormais accès à quatre modèles de base Llama 3 contenant des milliards de paramètres. Étant donné que les modèles de base sont pré-entraînés, ils peuvent également contribuer à réduire les coûts de formation et d'infrastructure et permettre une personnalisation adaptée à votre cas d'utilisation. Vérifier SageMaker JumpStart dans SageMaker Studio maintenant pour commencer.


À propos des auteurs

Kyle Ulrich est un scientifique appliqué II chez AWS
Xin Huang est scientifique appliqué senior chez AWS
Lan Qing est ingénieur développeur de logiciels senior chez AWS
Haotian An est ingénieur développeur logiciel II chez AWS
Christophe Whitten est ingénieur en développement logiciel II chez AWS
Tyler Osterberg est ingénieur en développement logiciel I chez AWS
Manan Shah est responsable du développement logiciel chez AWS
Jonathan Guinégagne est ingénieur développeur de logiciels senior chez AWS
Adriana Simmons est responsable senior du marketing produit chez AWS
Juin gagné est chef de produit senior chez AWS
Ashish Khetan est scientifique appliqué senior chez AWS
Rachna Chadha est architecte de solutions principal – IA/ML chez AWS
Deepak Rupakula est un spécialiste principal GTM chez AWS

Horodatage:

Plus de Apprentissage automatique AWS