Expansion du contexte de Llama-3 à plus d'1 million de jetons : impact sur les performances
Élargissement du contexte de Llama-3 à plus d'un million de jetons : exploration de l'impact sur les performances. Cet article de blog examine les capacités du modèle Llama-3 amélioré avec une fenêtre de contexte d'un million de jetons, en analysant ses performances sur des tâches telles que la recherche d'informations, le raisonnement et l'assistance à la programmation.
21 février 2025

Débloquez la puissance du contexte étendu avec la dernière version de Llama-3, désormais capable de gérer jusqu'à 1 million de jetons. Découvrez comment cette avancée impacte les performances et explorez son potentiel en tant qu'assistant de codage polyvalent et outil de recherche d'informations.
Avantages de l'extension de Llama-3 à plus de 1 million de jetons
Comprendre le test de l'aiguille dans une botte de foin
Entraîner le modèle Llama-3 de plus de 1 million de jetons
Exécuter localement le modèle Llama-3 de plus de 1 million de jetons
Évaluer les performances du modèle sur différents invites
Limites de la version quantifiée à 4 bits
Llama-3 en tant qu'assistant de codage
Conclusion
Avantages de l'extension de Llama-3 à plus de 1 million de jetons
Avantages de l'extension de Llama-3 à plus de 1 million de jetons
La version étendue de Llama-3 avec une fenêtre de contexte pouvant aller jusqu'à 1 million de jetons présente plusieurs avantages :
-
Amélioration de la recherche d'informations : la fenêtre de contexte plus large permet au modèle de mieux récupérer les informations pertinentes à partir d'une entrée donnée, comme le démontrent les résultats impressionnants sur le test de la "aiguille dans la botte de foin".
-
Capacités de raisonnement améliorées : bien que les résultats pour la récupération de plusieurs faits n'aient pas été inclus, les bonnes performances du modèle sur la récupération d'un seul fait suggèrent des améliorations potentielles de ses capacités de raisonnement par rapport aux modèles avec des fenêtres de contexte plus petites.
-
Formation efficace : le processus de formation du modèle Llama-3 étendu a été relativement rapide, ne nécessitant que 1,4 milliard de jetons, soit moins de 0,1 % des données de formation d'origine de Llama-3. Cette approche de formation efficace témoigne de l'efficacité de la technique d'optimisation Rope Theta.
-
Réduction des besoins en mémoire : la version quantifiée à 4 bits du modèle Llama-3 étendu peut être exécutée sur des systèmes avec aussi peu que 64 Go de VRAM, la rendant accessible à un plus grand nombre d'utilisateurs et de chercheurs.
-
Potentiel d'amélioration des performances : le modèle Llama-3 étendu a le potentiel de surpasser le modèle original de 8 milliards de paramètres sur les tâches nécessitant la récupération et le raisonnement d'informations à partir de contenus longs, comme l'assistance au codage et l'extraction d'informations.
Dans l'ensemble, le modèle Llama-3 étendu avec sa fenêtre de contexte élargie représente une avancée significative dans le développement des modèles de langage à grande échelle, montrant les avantages des efforts open-source pour repousser les limites de ce qui est possible.
Comprendre le test de l'aiguille dans une botte de foin
Comprendre le test de l'aiguille dans une botte de foin
Le test de la "aiguille dans une botte de foin" est un moyen d'évaluer les capacités de raisonnement et de récupération des modèles de langage à grande échelle (LLM) comme Lama 3. Dans ce test, un fait ou une déclaration aléatoire est placé au milieu d'un contexte plus large (la "botte de foin"), et le modèle doit récupérer cette déclaration.
Le test implique d'itérer sur différentes profondeurs de document et longueurs de contexte pour mesurer les performances du modèle. Les principales conclusions de ce test sont :
-
Taille de la fenêtre de contexte : des fenêtres de contexte plus larges (par exemple, 128 000 jetons pour GPT-4) permettent au modèle de mieux récupérer un seul fait, quel que soit son emplacement dans le contexte. Cependant, à mesure que la taille de la fenêtre de contexte augmente, la précision du modèle pour récupérer plusieurs faits dans le contexte commence à diminuer.
-
Récupération vs raisonnement : le test de la "aiguille dans une botte de foin" met en évidence le compromis entre les capacités de récupération d'un modèle (trouver un seul fait) et ses capacités de raisonnement (comprendre et récupérer plusieurs faits). Des fenêtres de contexte plus larges améliorent la récupération, mais peuvent avoir un impact négatif sur les performances de raisonnement du modèle.
-
Performances de Lama 3 : la version étendue de Lama 3 avec une fenêtre de contexte de 1 million de jetons se comporte bien sur la tâche de récupération d'un seul fait, mais les auteurs n'ont pas inclus les résultats pour la récupération de plusieurs faits. Ces informations seraient précieuses pour comprendre pleinement les capacités du modèle.
Entraîner le modèle Llama-3 de plus de 1 million de jetons
Entraîner le modèle Llama-3 de plus de 1 million de jetons
Le modèle Llama-3 avec une fenêtre de contexte de 1 million de jetons a été développé grâce à des efforts open-source. Le modèle Llama-3 d'origine avait une fenêtre de contexte beaucoup plus petite de 8 000 jetons, ce qui est nettement inférieur à d'autres modèles de langage à grande échelle (LLM) comme Mistral 7B Instruct, qui a une fenêtre de contexte de 32 000 jetons.
Les chercheurs ont pu étendre la fenêtre de contexte de Llama-3 à 1 million de jetons en utilisant une technique appelée optimisation Rope Theta. Cela leur a permis d'atteindre cette augmentation significative de la taille de la fenêtre de contexte avec un entraînement minimal, n'utilisant que 1,4 milliard de jetons, soit moins de 0,1 % des données d'entraînement d'origine de Llama-3.
Le processus de formation a impliqué d'augmenter progressivement la taille de la fenêtre de contexte, en partant de 65 000 jetons, puis 260 000 jetons, et enfin en atteignant 1 million de jetons. Cette approche par étapes a permis aux chercheurs de former efficacement le modèle sans ressources de calcul excessives.
Les résultats de cet effort sont impressionnants, notamment dans le test de la "aiguille dans la botte de foin", où le modèle démontre de bonnes performances pour récupérer un seul fait dans la grande fenêtre de contexte. Cependant, les chercheurs n'ont pas inclus les résultats sur la capacité du modèle à récupérer plusieurs faits, ce qui serait une information précieuse.
Exécuter localement le modèle Llama-3 de plus de 1 million de jetons
Exécuter localement le modèle Llama-3 de plus de 1 million de jetons
Pour exécuter localement la version de 1 million de jetons du modèle Llama-3, vous devrez utiliser l'implémentation Llama fournie par l'équipe d'Anthropic, connue sous le nom d'OLlama. Voici les étapes :
-
Installez OLlama sur votre système. Vous pouvez trouver les instructions dans les vidéos précédentes mentionnées dans la description.
-
Téléchargez le modèle Llama-3 Gradient de 1 million de jetons. Vous pouvez trouver le lien dans la transcription.
-
Exécutez la commande OLlama pour charger le modèle :
oma run Llama3-gradient
Cela téléchargera le modèle pour la première fois, ce qui peut prendre un certain temps.
-
Définissez la fenêtre de contexte à la taille souhaitée. Dans l'exemple, la fenêtre de contexte est définie à 256 000 jetons :
/set_parameter context_window 256000
Gardez à l'esprit que les besoins en mémoire pour exécuter le modèle de 1 million de jetons peuvent dépasser 100 Go de VRAM, assurez-vous donc que votre système dispose de ressources suffisantes.
-
Testez les capacités du modèle en essayant différentes invites, comme vérifier son comportement non censuré, ses capacités de raisonnement et son assistance au codage.
Évaluer les performances du modèle sur différents invites
Évaluer les performances du modèle sur différents invites
Les performances du modèle ont été testées sur une variété d'invites pour évaluer ses capacités :
-
Invites non censurées : le modèle était relativement non censuré par rapport aux versions précédentes, refusant de donner des instructions pour des activités illégales comme le cambriolage d'une voiture. Cependant, il était prêt à fournir des informations sur la façon de tuer un processus Linux, démontrant sa capacité à fournir des informations techniques.
-
Capacités de raisonnement : le modèle s'est bien comporté sur les tâches de raisonnement, identifiant correctement qu'il n'y a pas de "Sally" dans le problème donné et déterminant le nombre de frères. Il a également été capable de générer une blague simple, montrant ses capacités créatives.
-
Récupération d'informations : le modèle s'est bien comporté sur les tâches de récupération de contexte court, répondant avec précision aux questions basées sur les informations fournies. Cependant, lorsqu'il a été testé sur un document plus long de 27 pages avec une déclaration hors contexte, le modèle n'a pas réussi à récupérer les informations non pertinentes, générant à la place des réponses hallucinées.
-
Assistance au codage : le modèle a été en mesure d'identifier et de corriger les erreurs dans un simple programme Python, démontrant son potentiel en tant qu'assistant de codage.
Limites de la version quantifiée à 4 bits
Limites de la version quantifiée à 4 bits
Les tests de la version quantifiée à 4 bits du modèle Llama 3 avec une fenêtre de contexte de 1 million de jetons ont révélé plusieurs limites :
-
Hallucination et récupération inexacte : lorsqu'il est confronté à un grand contexte de 27 pages, le modèle a du mal à récupérer des informations spécifiques avec précision. Au lieu de cela, il hallucine souvent des détails non pertinents ou génère du texte qui n'a pas de sens.
-
Artefacts de quantification : la forte quantification du modèle à 4 bits semble avoir eu un impact négatif sur ses capacités de raisonnement et de récupération, en particulier lors du traitement de contenus longs. Cela est probablement dû à la perte de précision pendant le processus de quantification.
-
Problèmes potentiels avec l'implémentation AMA : l'auteur soupçonne que l'implémentation AMA ne gère peut-être pas correctement le jeton de fin de séquence, ce qui pourrait contribuer à la tendance du modèle à générer des boucles infinies de texte dénuées de cohérence.
-
Contraintes de ressources : l'exécution de la version de 1 million de jetons du modèle Llama 3 nécessite une quantité importante de mémoire GPU, la version quantifiée à 4 bits nécessitant au moins 64 Go de VRAM pour une fenêtre de contexte de 256 000 jetons. Cette forte exigence en ressources peut limiter l'utilisation pratique de ce modèle pour de nombreux utilisateurs.
Llama-3 en tant qu'assistant de codage
Llama-3 en tant qu'assistant de codage
Le modèle Llama-3 avec une fenêtre de contexte étendue à 1 million de jetons montre des capacités prometteuses en tant qu'assistant de codage. Lorsqu'on lui a fourni un simple programme Python contenant quelques erreurs, le modèle a été en mesure d'identifier et de corriger les problèmes dans les fonctions add
, subtract
et divide
.
Le modèle a démontré sa capacité à comprendre la structure et la logique du code, et à fournir des commentaires précis sur les problèmes identifiés. Cela suggère que Llama-3 peut être un outil précieux pour les développeurs, les aidant à détecter et à corriger les bogues dans leur code de manière plus efficace.
Bien que les performances du modèle sur les tâches de récupération d'informations dans de grands contextes aient été mitigées, ses capacités d'assistance au codage sont un fort indicateur de son utilité potentielle dans les workflows de développement logiciel. À mesure que la communauté open-source continuera à affiner et à optimiser ces modèles de langage à grande échelle, nous pouvons nous attendre à voir d'autres améliorations de leur capacité à aider les développeurs avec une large gamme de tâches de programmation.
Conclusion
Conclusion
La version de Lama 3 avec une fenêtre de contexte étendue montre des résultats prometteurs, notamment dans le test de l'aiguille dans la botte de foin et les tâches d'assistance au codage. Cependant, les performances du modèle sur les tâches de récupération de grands contextes semblent limitées, potentiellement en raison des effets de la quantification ou de problèmes avec l'implémentation AMA.
Bien que les efforts de la communauté open-source pour repousser les limites des modèles de langage soient louables, la version actuelle de Lama 3 avec une fenêtre de contexte de 1 million de jetons a encore des progrès à faire. Le manque de résultats de référence complets et la tendance du modèle à halluciner des informations dans de grands contextes sont des domaines qui nécessitent une investigation et un raffinement plus poussés.
Néanmoins, les progrès réalisés dans l'expansion de la fenêtre de contexte des modèles de langage sont une étape importante en avant, et il sera intéressant de voir comment ces techniques évolueront et mûriront au fil du temps. Avec la disponibilité de ressources matérielles plus puissantes, les versions futures de Lama 3 et de modèles similaires pourront peut-être surmonter les limites actuelles et offrir des performances encore plus robustes et fiables dans une large gamme de tâches.
FAQ
FAQ

