Llama2.c : code d’inférence de Llama 2 écrit en pur C
(github.com/karpathy)- Cet article est une description générée automatiquement à l’aide de GPT-4 et peut contenir des erreurs. :smile:
- Si vous repérez une erreur, merci de la signaler dans les commentaires ! :bowing_man:
Introduction
Llama2.c est une implémentation d’inférence de Llama 2 en pur C, développée par Andrej Karpathy. Ce projet est une bibliothèque légère pour l’inférence de modèles de machine learning, écrite en langage C, ce qui permet de l’utiliser sur diverses plateformes. Cette bibliothèque est notamment conçue pour fonctionner rapidement sur CPU avec de petits modèles.
Résumé
Cette bibliothèque est une bibliothèque légère pour l’inférence de modèles de machine learning, écrite en langage C, ce qui permet de l’utiliser sur diverses plateformes. Elle est notamment conçue pour fonctionner rapidement sur CPU avec de petits modèles. Elle est notamment conçue pour fonctionner rapidement sur CPU avec de petits modèles.
Ce projet propose différentes options d’optimisation, qui permettent aux utilisateurs d’exécuter le code plus rapidement selon leur système. Par exemple, il est possible d’utiliser des options de compilation comme -O3, -Ofast, -ffast-math, -funsafe-math-optimizations, -march=native. Ces options incluent des optimisations telles que la vectorisation, le déroulage de boucle et la prédiction de branchement, et certaines peuvent même enfreindre les spécifications C/IEEE.
Le projet est encore en cours de développement et plusieurs problèmes restent à résoudre. Par exemple, la raison de l’espace initial lors de l’exécution de ./run dans le code d’échantillonnage C, la prise en charge des requêtes multiples pour les petits modèles, ou encore le support de l’inférence au-delà de la longueur maximale de séquence.
Références
- Options d’optimisation GCC : permet d’en savoir plus sur les différentes options d’optimisation de GCC.
- Mathématiques en virgule flottante dans GCC : fournit des informations détaillées sur les options
-ffast-mathet-funsafe-math-optimizations. - GitHub d’Andrej Karpathy : permet de consulter les autres projets d’Andrej Karpathy.
- Licence de Llama2.c : permet de consulter la licence MIT de ce projet.
- Liste des contributeurs de Llama2.c : permet de voir les personnes ayant contribué à ce projet.
1 commentaires
Pour aller plus loin