Modèles et plateformes d’IA
Tout ce que vous devez savoir sur Llama 3 | Le modèle open-source le plus puissant à ce jour | Concepts à l’utilisation
Meta a récemment publié Llama 3, la prochaine génération de son modèle de langage grand et ouvert (LLM). En s’appuyant sur les fondations posées par son prédécesseur, Llama 3 vise à améliorer les capacités qui ont positionné Llama 2 comme un concurrent open-source important à ChatGPT, comme indiqué dans l’examen complet de l’article Llama 2: Un examen approfondi du challenger open-source à ChatGPT.
Dans cet article, nous allons discuter des concepts fondamentaux derrière Llama 3, explorer son architecture innovante et son processus de formation, et fournir des conseils pratiques sur la façon d’accéder, d’utiliser et de déployer ce modèle révolutionnaire de manière responsable. Que vous soyez un chercheur, un développeur ou un enthousiaste de l’IA, cet article vous équipera des connaissances et des ressources nécessaires pour exploiter le pouvoir de Llama 3 pour vos projets et applications.
L’évolution de Llama: De Llama 2 à Llama 3
Le PDG de Meta, Mark Zuckerberg, a annoncé le lancement de Llama 3, le dernier modèle d’IA développé par Meta AI. Ce modèle d’IA de pointe, désormais open-source, est destiné à améliorer les divers produits de Meta, notamment Messenger et Instagram. Zuckerberg a souligné que Llama 3 positionne Meta AI comme l’assistant d’IA le plus avancé disponible gratuitement.
Avant de parler des spécificités de Llama 3, revenons brièvement sur son prédécesseur, Llama 2. Introduit en 2022, Llama 2 était un jalon important dans le paysage des LLM open-source, offrant un modèle puissant et efficace qui pouvait être exécuté sur du matériel grand public.
Cependant, bien que Llama 2 ait été une réalisation notable, il avait ses limites. Les utilisateurs ont signalé des problèmes de refus faux (le modèle refusant de répondre à des invites bénignes), une utilité limitée et une marge de progression dans des domaines tels que le raisonnement et la génération de code.
Entrez Llama 3: la réponse de Meta à ces défis et aux commentaires de la communauté. Avec Llama 3, Meta s’est efforcé de construire les meilleurs modèles open-source à la hauteur des meilleurs modèles propriétaires disponibles aujourd’hui, tout en donnant la priorité aux pratiques de développement et de déploiement responsables.
Llama 3: Architecture et formation
L’une des innovations clés de Llama 3 est son tokeniseur, qui présente un vocabulaire significativement élargi de 128 256 jetons (contre 32 000 dans Llama 2). Ce vocabulaire plus large permet une codification du texte plus efficace, à la fois pour l’entrée et la sortie, ce qui pourrait conduire à une multilinguisme et à des améliorations globales des performances.
Llama 3 intègre également Grouped-Query Attention (GQA), une technique de représentation efficace qui améliore la scalabilité et aide le modèle à gérer des contextes plus longs de manière plus efficace. La version 8B de Llama 3 utilise GQA, tandis que les versions 8B et 70B peuvent traiter des séquences allant jusqu’à 8 192 jetons.
Données de formation et mise à l’échelle
Les données de formation utilisées pour Llama 3 sont un facteur crucial dans ses performances améliorées. Meta a créé un ensemble de données massif de plus de 15 billions de jetons à partir de sources en ligne accessibles au public, sept fois plus grand que l’ensemble de données utilisé pour Llama 2. Cet ensemble de données comprend également une portion importante (plus de 5 %) de données de haute qualité non anglaises, couvrant plus de 30 langues, en prévision d’applications multilingues futures.
Pour assurer la qualité des données, Meta a employé des techniques de filtrage avancées, notamment des filtres heuristiques, des filtres NSFW, une déduplication sémantique et des classificateurs de texte formés sur Llama 2 pour prédire la qualité des données. L’équipe a également mené des expériences approfondies pour déterminer le mélange optimal de sources de données pour la préformation, garantissant que Llama 3 se comporte bien sur une large gamme de cas d’utilisation, notamment les questions de trivia, les STEM, la programmation et les connaissances historiques.
La mise à l’échelle de la préformation était un autre aspect critique du développement de Llama 3. Meta a élaboré des lois de mise à l’échelle qui lui ont permis de prédire les performances de ses plus grands modèles sur des tâches clés, telles que la génération de code, avant même de les former. Cela a éclairé les décisions concernant le mélange de données et l’allocation de calcul, conduisant finalement à une formation plus efficace et efficiente.
Les plus grands modèles de Llama 3 ont été formés sur deux grappes de 24 000 GPU personnalisées, en utilisant une combinaison de parallélisation de données, de parallélisation de modèles et de parallélisation de pipeline. La pile de formation avancée de Meta a automatisé la détection, la gestion et la maintenance des erreurs, maximisant le temps d’utilisation du GPU et augmentant l’efficacité de la formation d’environ trois fois par rapport à Llama 2.
Affinage des instructions et performances
Pour débloquer tout le potentiel de Llama 3 pour les applications de chat et de dialogue, Meta a innové dans son approche de l’affinage des instructions. Sa méthode combine l’affinage supervisé (SFT), l’échantillonnage de rejet, l’optimisation de la politique proximale (PPO) et l’optimisation des préférences directes (DPO).
La qualité des invites utilisées dans SFT et les classements de préférences utilisés dans PPO et DPO ont joué un rôle crucial dans les performances des modèles alignés. L’équipe de Meta a soigneusement sélectionné ces données et effectué plusieurs cycles d’assurance qualité sur les annotations fournies par des annotateurs humains.
La formation sur les classements de préférences via PPO et DPO a également considérablement amélioré les performances de Llama 3 sur les tâches de raisonnement et de programmation. Meta a constaté que même lorsque le modèle a du mal à répondre directement à une question de raisonnement, il peut toujours produire la trace de raisonnement correcte. La formation sur les classements de préférences a permis au modèle d’apprendre à sélectionner la bonne réponse à partir de ces traces.
Les résultats parlent d’eux-mêmes: Llama 3 surpasse de nombreux modèles de chat open-source disponibles sur les benchmarks de l’industrie, établissant de nouvelles performances de pointe pour les LLM aux échelles de paramètres 8B et 70B.
Développement responsable et considérations de sécurité
Alors que Meta poursuit des performances de pointe, l’entreprise donne également la priorité au développement et au déploiement responsables de Llama 3. L’entreprise a adopté une approche au niveau du système, imaginant les modèles Llama 3 comme faisant partie d’un écosystème plus large qui place les développeurs aux commandes, leur permettant de concevoir et de personnaliser les modèles pour leurs cas d’utilisation et exigences de sécurité spécifiques.
Meta a mené des exercices de red teaming approfondis, effectué des évaluations adverses et mis en œuvre des techniques d’atténuation de la sécurité pour réduire les risques résiduels dans ses modèles affinés par instruction. Cependant, l’entreprise reconnaît que des risques résiduels subsisteront probablement et recommande aux développeurs d’évaluer ces risques dans le contexte de leurs cas d’utilisation spécifiques.
Pour soutenir un déploiement responsable, Meta a mis à jour son Guide d’utilisation responsable, fournissant une ressource complète pour les développeurs afin d’implémenter les meilleures pratiques de sécurité au niveau du modèle et du système pour leurs applications. Le guide couvre des sujets tels que la modération de contenu, l’évaluation des risques et l’utilisation d’outils de sécurité comme Llama Guard 2 et Code Shield.
Llama Guard 2, basé sur la taxonomie MLCommons, est conçu pour classer les invites (prompts) et les réponses des LLM, détectant le contenu qui pourrait être considéré comme non sécurisé ou nuisible. CyberSecEval 2 élargit son prédécesseur en ajoutant des mesures pour prévenir les abus de l’interpréteur de code du modèle, les capacités de cybersécurité offensives et la vulnérabilité aux attaques d’injection de invites.
Code Shield, une nouvelle introduction avec Llama 3, ajoute un filtrage à l’exécution d’inference du code non sécurisé produit par les LLM, atténuant les risques associés aux suggestions de code non sécurisé, à l’abus de l’interpréteur de code et à l’exécution sécurisée de commandes.
Accéder et utiliser Llama 3
Suite au lancement de Llama 3 par Meta AI, plusieurs outils open-source ont été mis à disposition pour un déploiement local sur divers systèmes d’exploitation, notamment Mac, Windows et Linux. Cette section présente trois outils notables: Ollama, Open WebUI et LM Studio, chacun offrant des fonctionnalités uniques pour exploiter les capacités de Llama 3 sur les appareils personnels.
Ollama: Disponible pour Mac, Linux et Windows, Ollama simplifie l’exploitation de Llama 3 et d’autres grands modèles de langage sur les ordinateurs personnels, même ceux avec un matériel moins puissant. Il comprend un gestionnaire de packages pour une gestion de modèle facile et prend en charge les commandes sur toutes les plateformes pour télécharger et exécuter des modèles.
Open WebUI avec Docker: Cet outil fournit une interface utilisateur conviviale, basée sur Docker, compatible avec Mac, Linux et Windows. Il s’intègre sans effort avec les modèles du registre Ollama, permettant aux utilisateurs de déployer et d’interagir avec des modèles comme Llama 3 dans une interface Web locale.
LM Studio: Conçu pour les utilisateurs sur Mac, Linux et Windows, LM Studio prend en charge une gamme de modèles et est basé sur le projet llama.cpp. Il fournit une interface de chat et facilite l’interaction directe avec divers modèles, notamment le modèle Llama 3 8B Instruct.
Ces outils garantissent que les utilisateurs peuvent exploiter efficacement Llama 3 sur leurs appareils personnels, en tenant compte d’une gamme de compétences techniques et de besoins. Chaque plateforme propose des processus étape par étape pour la configuration et l’interaction avec les modèles, rendant l’IA avancée plus accessible aux développeurs et aux enthousiastes.















