1 points par GN⁺ 2023-07-24 | 1 commentaires | Partager sur WhatsApp
  • Il est possible d’exécuter l’inférence d’un petit modèle Llama 2 en pur C.
  • Ce code permet d’entraîner l’architecture LLM de Llama 2 dans PyTorch et d’enregistrer les poids dans un fichier binaire brut.
  • Les poids peuvent ensuite être chargés dans un fichier C.
  • Le fichier C peut exécuter des modèles de taille significative à très grande vitesse.
  • Ce projet a été réalisé comme un projet de week-end et n’est pas une bibliothèque de production.
  • Vous pouvez télécharger un modèle pré-entraîné et l’exécuter en C.
  • Le code C diffuse des tokens bruts en flux, qui peuvent être convertis en texte à l’aide d’un simple wrapper.
  • Le code C s’exécute à environ 100 tokens/s sur un MacBook Air M1.
  • La sortie du code C est un texte généré à partir du modèle.
  • Ce projet se concentre sur une application spécifique et entraîne la même architecture depuis zéro.
  • Vous pouvez télécharger le jeu de données source, le pré-tokeniser, puis entraîner le modèle.
  • Il est possible d’ajuster les hyperparamètres pour obtenir un meilleur modèle.
  • Vous pouvez également exécuter le script d’inférence PyTorch à des fins de comparaison.
  • Vous pouvez effectuer des tests détaillés à l’aide du script de test fourni.
  • Ce projet nécessite les fichiers model.bin et model.ckpt issus de l’entraînement PyTorch.
  • Le texte mentionne quelques tâches à faire et des questions.
  • Ce projet est proposé sous licence MIT.

1 commentaires

 
GN⁺ 2023-07-24
Commentaires sur Hacker News
  • Andrej est rémunéré par OpenAI tout en aidant Apple, Facebook et le mouvement open source.
  • Le checkpoint d’origine fonctionne plus vite que prévu sur un MacBook Air M1.
  • Un nouveau modèle 44M est en cours d’entraînement.
  • Les modèles Llama s’exécutent dans le navigateur via Emscripten.
  • Les LLM locaux sont une technologie intéressante pour créer des applications web de raisonnement local.
  • Le code se compile proprement avec le WASI SDK et s’exécute dans un runtime Wasm.
  • Plus de détails sont disponibles sur le Twitter d’Andrej.
  • Les besoins en mémoire nécessaires à l’exécution du réseau de neurones sont discutés.
  • Il est indiqué que Llama-2 ne peut pas être utilisé pour des tâches créatives.
  • L’industrie pourrait évoluer vers un code source distinct pour chaque modèle publié.
  • L’attrait du « tout dans un seul fichier » ou du « header-only » a été discuté.
  • Un commentaire humoristique évoque la création de meilleurs tests pour réduire le côté yolo.