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

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

Aujourd'hui, nous sommes ravis d'annoncer que les modèles de fondation Llama 2 développés par Meta sont disponibles pour les clients via Amazon SageMaker JumpStart. La famille Llama 2 de grands modèles de langage (LLM) est une collection de modèles de texte génératif pré-entraînés et affinés dont l'échelle varie de 7 milliards à 70 milliards de paramètres. Les LLM affinés, appelés Llama-2-chat, sont optimisés pour les cas d'utilisation de dialogue. Vous pouvez facilement essayer ces modèles et les utiliser avec SageMaker JumpStart, qui est un hub d'apprentissage automatique (ML) qui donne accès à des algorithmes, des modèles et des solutions ML afin que vous puissiez rapidement démarrer avec ML.

Dans cet article, nous expliquons comment utiliser les modèles Llama 2 via SageMaker JumpStart.

Qu'est-ce que le lama 2

Llama 2 est un modèle de langage auto-régressif qui utilise une architecture de transformateur optimisée. Llama 2 est destiné à un usage commercial et de recherche en anglais. Il est disponible dans une gamme de tailles de paramètres - 7 milliards, 13 milliards et 70 milliards - ainsi que des variations pré-formées et affinées. Selon Meta, les versions optimisées utilisent un réglage fin supervisé (SFT) et un apprentissage par renforcement avec rétroaction humaine (RLHF) pour s'aligner sur les préférences humaines en matière d'utilité et de sécurité. Llama 2 a été pré-formé sur 2 billions de jetons de données provenant de sources accessibles au public. Les modèles optimisés sont destinés au chat de type assistant, tandis que les modèles pré-formés peuvent être adaptés à une variété de tâches de génération de langage naturel. Quelle que soit la version du modèle utilisée par un développeur, la guide d'utilisation responsable de Meta peut aider à guider les ajustements supplémentaires qui peuvent être nécessaires pour personnaliser et optimiser les modèles avec des mesures d'atténuation de sécurité appropriées.

Qu'est-ce que SageMaker JumpStart

Avec SageMaker JumpStart, les praticiens du ML peuvent choisir parmi une large sélection de modèles de base open source. Les praticiens du ML peuvent déployer des modèles de base sur des Amazon Sage Maker instances à partir d'un environnement isolé du réseau et personnalisez les modèles à l'aide de SageMaker pour la formation et le déploiement des modèles.

Vous pouvez maintenant découvrir et déployer Llama 2 en quelques clics dans 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 Amazon SageMaker, Débogueur Amazon SageMaker, ou journaux de conteneur. Le modèle est déployé dans un environnement sécurisé AWS et sous les contrôles de votre VPC, ce qui contribue à garantir la sécurité des données. Les modèles Llama 2 sont disponibles aujourd'hui dans Amazon SageMaker Studio, initialement en us-east 1 ainsi que us-west 2 les régions.

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.

Une fois que vous êtes sur SageMaker Studio, vous pouvez accéder à SageMaker JumpStart, qui contient des modèles, des blocs-notes et des solutions prédéfinis pré-formés, sous Solutions prédéfinies et automatisées.

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

À partir de la page d'accueil SageMaker JumpStart, vous pouvez rechercher des solutions, des modèles, des blocs-notes et d'autres ressources. Vous pouvez trouver deux modèles phares de Llama 2 dans le Modèles de fondation : Génération de texte carrousel. Si vous ne voyez pas les modèles Llama 2, mettez à jour votre version de SageMaker Studio en fermant et en redémarrant. Pour plus d'informations sur les mises à jour de version, reportez-vous à Arrêter et mettre à jour les applications Studio.

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

Vous pouvez également trouver quatre autres variantes de modèle en choisissant Explorer tous les modèles de génération de texte ou à la recherche de llama dans la boîte de recherche.

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

Vous pouvez choisir la carte de modèle pour afficher des détails sur le modèle, tels que la licence, les données utilisées pour l'entraînement et la manière de l'utiliser. Vous pouvez également trouver deux boutons, Déployer ainsi que Cahier ouvert, qui vous aident à utiliser le modèle.

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

Lorsque vous choisissez l'un ou l'autre des boutons, une fenêtre contextuelle affiche le contrat de licence de l'utilisateur final et la politique d'utilisation acceptable que vous devez accepter.

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

Après confirmation, vous passerez à l'étape suivante pour utiliser le modèle.

Déployer un modèle

Quand vous choisissez Déployer et acceptez les termes, le déploiement du modèle commencera. Alternativement, vous pouvez déployer via l'exemple de bloc-notes qui s'affiche en choisissant Cahier ouvert. 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 d'un notebook, nous commençons 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
my_model = JumpStartModel(model_id = "meta-textgeneration-llama-2-70b-f")
predictor = my_model.deploy()

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 Modèle JumpStart. Une fois déployé, vous pouvez exécuter une inférence sur le point de terminaison déployé via le prédicteur SageMaker :

payload = { “inputs”: [ [ {"role": "system", "content": "Always answer with Haiku"}, {"role": "user", "content": "I am going to Paris, what should I see?"}, ] ], "parameters":{"max_new_tokens":256, "top_p":0.9, "temperature":0.6}
}

Des modèles de chat affinés (Llama-2-7b-chat, Llama-2-13b-chat, Llama-2-70b-chat) acceptent un historique de chat entre l'utilisateur et l'assistant de chat, et génèrent le chat suivant. Les modèles pré-formés (Llama-2-7b, Llama-2-13b, Llama-2-70b) nécessitent une invite de chaîne et effectuent la complétion du texte à l'invite fournie. Voir le code suivant :

predictor.predict(payload, custom_attributes="accept_eula=true")

Notez que par défaut, accept_eula est défini sur faux. Vous devez définir accept_eula=true pour appeler le point de terminaison avec succès. Ce faisant, vous acceptez le contrat de licence utilisateur et la politique d'utilisation acceptable comme mentionné précédemment. Vous pouvez aussi download le contrat de licence.

Custom_attributes utilisés pour passer le CLUF sont des paires clé/valeur. La clé et la valeur sont séparées par = et les paires sont séparées par ;. Si l'utilisateur passe plusieurs fois la même clé, la dernière valeur est conservée et transmise au gestionnaire de script (c'est-à-dire, dans ce cas, utilisée pour la logique conditionnelle). Par exemple, si accept_eula=false; accept_eula=true est transmis au serveur, puis  accept_eula=true est conservé et transmis au gestionnaire de script.

Les paramètres d'inférence contrôlent le processus de génération de texte au point de terminaison. Le contrôle du nombre maximal de nouveaux jetons fait référence à la taille de la sortie générée par le modèle. Notez que ce n'est pas le même 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 peut ne pas être un mot de la langue anglaise. La 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.

Le tableau suivant répertorie tous les modèles de lama disponibles dans SageMaker JumpStart ainsi que les model_ids, les types d'instance par défaut et le nombre maximal 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
Lama-2-7b méta-textgénération-llama-2-7b 4096 ml.g5.2xlarge
Lama-2-7b-chat méta-textgénération-llama-2-7b-f 4096 ml.g5.2xlarge
Lama-2-13b méta-textgénération-llama-2-13b 4096 ml.g5.12xlarge
Lama-2-13b-chat méta-textgénération-llama-2-13b-f 4096 ml.g5.12xlarge
Lama-2-70b méta-textgénération-llama-2-70b 4096 ml.g5.48xlarge
Lama-2-70b-chat méta-textgénération-llama-2-70b-f 4096 ml.g5.48xlarge

Notez que les points de terminaison SageMaker ont un délai d'expiration de 60 secondes. Ainsi, même si le modèle peut être capable de générer 4096 jetons, si la génération de texte prend plus de 60 secondes, la requête échouera. Pour les modèles 7B, 13B et 70B, nous recommandons de régler max_new_tokens pas plus de 1500, 1000 et 500 respectivement, tout en gardant le nombre total de jetons inférieur à 4K.

Inférence et exemples d'invites pour Llama-2-70b

Vous pouvez utiliser des modèles Llama pour la complétion de texte pour n'importe quel morceau de texte. Grâce à la génération de texte, vous pouvez effectuer diverses tâches, telles que répondre à des questions, traduire une langue, analyser des sentiments et bien d'autres. La charge utile d'entrée au 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":256, "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 in uniform motion relative to one another, and 2) the speed of light is the same for all observers, regardless of their relative motion or of the motion of the source of the light.
In the late 1800s, scientists believed that light travelled through a medium they called the luminiferous ether. But in 1887, Albert Michelson and Edward Morley designed an experiment to measure the speed of light in the ether, and found that the speed of light was the same no matter how they oriented their equipment. This result seemed to contradict the idea of the ether, and Michelson and Morley’s experiment became one of the most famous failed experiments in history.
In 1905, Albert Einstein published a paper that used the results of the Michelson-Morley experiment to develop the theory of special relativity. In 1915, Einstein published a paper on general relativity, which is a theory of gravitation.
In physics, the speed of light is considered to be a constant, and its value is 299,792,458 metres Input: I believe the meaning of life is Output: to be happy, to find joy in life, to love and be loved. To have the courage to be yourself and to be kind to others. To be able to express yourself, to create and to be inspired. To be able to give and receive. To be able to learn and grow. To be able to find beauty in the world and to be able to appreciate it. To be able to find peace and contentment. To be able to find meaning and purpose. To be able to make a difference in the world. To be able to find joy in the simple things. To be able to find joy in the difficult things. To be able to find joy in the journey. To be able to find joy in the destination. To be able to find joy in the present moment. To be able to find joy in the future. To be able to find joy in the past. To be able to find joy in the present. To be able to find joy in the future. To be able to find joy in the past. To be able to find joy in the present. To be able to find joy in the future. To be able to find joy in the past. To be able to find joy in the present. To be able to find joy Input: A brief message congratulating the team on the launch: Hi everyone, I just Output: wanted to send a quick note to congratulate everyone on the launch of our new website. I know it’s been a long time coming and I’m sure we’re all relieved that it’s finally out there. Thanks to everyone for their hard work and dedication over the last few months. I know it wasn’t always easy, but I think we can all be proud of the final product. I’m looking forward to seeing how our users respond to the new site and I’m confident that it will be a success. Thanks again, and enjoy the rest of your day! Best, [Your Name] [Your Title] [Your Company] [Your Email] [Your Phone Number] [Your Website] [Your Social Media Handles] [Your Address] [Your City, State, Zip Code] [Your Country] [Your Postal Code] [Your Website] [

Dans l'exemple suivant, nous montrons comment utiliser des modèles Llama avec un apprentissage en contexte à quelques coups, où nous fournissons des échantillons de formation disponibles pour le modèle. Notez que nous ne faisons que des inférences sur le modèle déployé et pendant ce processus, les poids du modèle ne changent pas.

Input: Translate English to French: sea otter => loutre de mer peppermint => menthe poivrée plush girafe => girafe peluche cheese => Output: fromage chocolate => chocolat car => voiture hamster => hamster beer => bière bicycle => bicyclette banana => banane strawberry => fraise pizza => pizza cheeseburger => cheeseburger pineapple => ananas carrot => carotte watermelon => pastèque whale => baleine eggplant => aubergine cat => chat penguin => manchot lion => lion elephant => éléphant panda => panda tiger => tigre salmon => saumon squirrel => écureuil kangaroo => kangourou turtle => tortue octopus => poulpe frog => grenouille pig => cochon goldfish => poisson rouge tiger shark => requin tigre gorilla => gorille dol

Inférence et exemples d'invites pour Llama-2-70b-chat

Avec les modèles Llama-2-Chat, qui sont optimisés pour les cas d'utilisation de dialogue, l'entrée aux points de terminaison du modèle de chat est l'historique précédent entre l'assistant de chat 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, comme les personas qui définissent le comportement de l'assistant de chat. La charge utile d'entrée au point de terminaison ressemble au code suivant :

payload = { “inputs”: [ [ (optional){"role": "system", "content": str}, (repeated k times) {"role": "user", "content": str}, {"role": "assistant", "content": str}, {"role": "user", "content": 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 les paramètres d'inférence {"max_new_tokens": 512, "top_p": 0.9, "temperature": 0.6}.

Input:
User: what is the recipe of mayonnaise? Output:
Assistant: Sure, I can help you with that! Mayonnaise is a thick, creamy condiment made from a mixture of egg yolks, oil, vinegar or lemon juice, and seasonings. Here's a basic recipe for homemade mayonnaise: Ingredients: * 2 egg yolks
* 1/2 cup (120 ml) neutral-tasting oil, such as canola or grapeseed
* 1 tablespoon (15 ml) vinegar or lemon juice
* 1/2 teaspoon salt
* 1/4 teaspoon black pepper Instructions: 1. In a medium-sized bowl, whisk together the egg yolks, salt, and black pepper until well combined.
2. Slowly pour the oil into the bowl while continuously whisking the mixture. It's important to add the oil very slowly, otherwise the mixture can break and you'll end up with a separated, curdled mess.
3. Continue whisking until the mixture thickens and emulsifies, which should take about 5-7 minutes. You'll know it's ready when the mixture has doubled in volume and has a thick, creamy consistency.
4. Add the vinegar or lemon juice and continue whisking for another minute or two, until the flavors are fully incorporated.
5. Taste the mayonnaise and adjust the seasoning as needed. You can add more salt, pepper, or acid if desired.
6. Cover the bowl with plastic wrap and refrigerate the mayonnaise for at least 30 minutes before serving. This will allow the flavors to meld together and the mayonnaise to thicken further. That's it! This recipe makes about 1 1/2 cups (360 ml) of mayonnaise, which should be enough for a small to medium-sized batch of sandwiches or salads. You can also customize the recipe by adding different flavorings, such as garlic, mustard, or herbs, to create a unique taste. Enjoy!

Dans l'exemple suivant, l'utilisateur a eu une conversation avec l'assistant sur les sites touristiques de Paris. Ensuite, l'utilisateur se renseigne sur la première option recommandée par l'assistant de chat.

Input:
User: I am going to Paris, what should I see?
Assistant: Paris, 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: 1. The Eiffel Tower: The iconic Eiffel Tower is one of the most recognizable landmarks in the world and offers breathtaking views of the city.
2. 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.
3. 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. These 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.
User: What is so great about #1? Output:
Assistant: The Eiffel Tower is a world-renowned iconic landmark that symbolizes Paris and France. It was built for the World's Fair in 1889 and was initially intended to be a temporary structure, but it has become a permanent part of the Parisian skyline. Here are some reasons why the Eiffel Tower is so great: 1. Engineering marvel: The Eiffel Tower was a groundbreaking feat of engineering at the time of its construction. It stands at 324 meters (1,063 feet) tall and was the tallest structure in the world for over 40 years.
2. Iconic design: The Eiffel Tower's distinctive shape and design make it instantly recognizable. It has been the subject of countless works of art, photographs, and films, and has become a symbol of Paris and France.
3. Panoramic views: The Eiffel Tower offers breathtaking views of the city from its observation decks. Visitors can enjoy a 360-degree view of Paris, including famous landmarks such as the Seine River, the Arc de Triomphe, and the Montmartre neighborhood.
4. Historical significance: The Eiffel Tower has played a significant role in Paris's history, having been the site of numerous important events, including the famous "Battle of the Eiffel Tower" during World War II.
5. Cultural impact: The Eiffel Tower has had a significant impact on popular culture, inspiring countless works of art, literature, and music. It has also been the subject of numerous documentaries and films, including the classic movie "An American in Paris."
6. Romantic setting: The Eiffel Tower is known for its romantic atmosphere, making it a popular destination for couples and newlyweds. It has been the site of countless marriage proposals and has been featured in numerous romantic films and literature.
7. Accessibility: The Eiffel Tower is easily accessible by public transportation, making it a convenient destination for visitors. It is also wheelchair-friendly, with elevators and ramps providing access to all levels. Overall, the Eiffel Tower is a must-see destination for anyone visiting Paris, offering a unique and unforgettable experience that combines history, culture, engineering, and rom

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

Input:
System: Always answer with Haiku
User: I am going to Paris, what should I see? Output:
Assistant: Eiffel Tower high
Art in the Louvre Museum
River Seine flows Input:
System: Always answer with emojis
User: How to go from Beijing to NY? Output:
Assistant: Here are the emojis that represent the steps to go from Beijing to New York: 🇨🇳🛫🛬🇺🇸🗽🏙️🚕💨🛩️🛬🛫😴💤🛩️🛬🛫😍

Nettoyer

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

predictor.delete_model()
predictor.delete_endpoint()

Conclusion

Dans cet article, nous vous avons montré comment démarrer avec les modèles Llama 2 dans SageMaker Studio. Avec cela, vous avez accès à six modèles de fondation Llama 2 qui contiennent des milliards de paramètres. Étant donné que les modèles de base sont pré-formés, ils peuvent également aider à réduire les coûts de formation et d'infrastructure et permettre la personnalisation pour votre cas d'utilisation. Pour démarrer avec SageMaker JumpStart, consultez les ressources suivantes :


À propos des auteurs

Les modèles de fondation Llama 2 de Meta sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Juin gagné est chef de produit chez SageMaker JumpStart. Il se concentre sur la création de modèles de base facilement détectables et utilisables pour aider les clients à créer des applications d'IA génératives. Son expérience chez Amazon comprend également l'application d'achat mobile et la livraison du dernier kilomètre.

Vivek Madan Dr Vivek Madan est un scientifique appliqué au sein de l'équipe Amazon SageMaker JumpStart. Il a obtenu son doctorat à l'Université de l'Illinois à Urbana-Champaign et a été chercheur postdoctoral à Georgia Tech. Il est un chercheur actif en apprentissage automatique et en conception d'algorithmes et a publié des articles dans les conférences EMNLP, ICLR, COLT, FOCS et SODA. Les modèles de fondation Llama 2 de Meta sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï. Dr Kyle Ulrich est un scientifique appliqué au sein de l'équipe Amazon SageMaker JumpStart. Ses intérêts de recherche comprennent les algorithmes d'apprentissage automatique évolutifs, la vision par ordinateur, les séries chronologiques, les processus bayésiens non paramétriques et gaussiens. Son doctorat est de l'Université Duke et il a publié des articles dans NeurIPS, Cell et Neuron. Les modèles de fondation Llama 2 de Meta sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï. Dr Ashish Khetan est un scientifique appliqué senior chez Amazon SageMaker JumpStart et aide à développer des algorithmes d'apprentissage automatique. Il a obtenu son doctorat à l'Université de l'Illinois à Urbana-Champaign. Il est un chercheur actif en apprentissage automatique et en inférence statistique, et a publié de nombreux articles dans les conférences NeurIPS, ICML, ICLR, JMLR, ACL et EMNLP. Les modèles de fondation Llama 2 de Meta sont désormais disponibles dans Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Recherche verticale. Aï. Sundar Ranganathan est le responsable mondial des spécialistes GenAI/Frameworks GTM chez AWS. Il se concentre sur le développement d'une stratégie GTM pour les grands modèles de langage, GenAI et les charges de travail ML à grande échelle sur les services AWS comme Amazon EC2, EKS, EFA, AWS Batch et Amazon SageMaker. Son expérience comprend des rôles de direction dans la gestion et le développement de produits chez NetApp, Micron Technology, Qualcomm et Mentor Graphics.

Horodatage:

Plus de Apprentissage automatique AWS