13 Punkte von ninebow 2023-07-24 | 1 Kommentare | Auf WhatsApp teilen
  • Dieser Text ist eine automatisch mit GPT-4 erzeugte Beschreibung und kann Fehler enthalten. :smile:
  • Falls Sie Fehler entdecken, teilen Sie sie uns bitte in den Kommentaren mit! :bowing_man:

Einführung

Llama2.c ist eine von Andrej Karpathy entwickelte Llama-2-Inferenz in reinem C. Dieses Projekt ist eine leichtgewichtige Bibliothek für die Inferenz von Machine-Learning-Modellen und kann dank der Implementierung in C auf verschiedenen Plattformen eingesetzt werden. Die Bibliothek ist insbesondere darauf ausgelegt, bei kleineren Modellen schnell auf der CPU zu laufen.

Zusammenfassung

Diese Bibliothek ist eine leichtgewichtige Bibliothek für die Inferenz von Machine-Learning-Modellen und kann dank der Implementierung in C auf verschiedenen Plattformen eingesetzt werden. Die Bibliothek ist insbesondere darauf ausgelegt, bei kleineren Modellen schnell auf der CPU zu laufen. Die Bibliothek ist insbesondere darauf ausgelegt, bei kleineren Modellen schnell auf der CPU zu laufen.

Das Projekt bietet verschiedene Optimierungsoptionen, mit denen Nutzer den Code je nach System schneller ausführen können. Beispielsweise können Compiler-Optionen wie -O3, -Ofast, -ffast-math, -funsafe-math-optimizations und -march=native verwendet werden. Diese Optionen umfassen Optimierungen wie Vektorisierung, Loop-Unrolling und Branch-Prediction; einige davon können jedoch gegen die C-/IEEE-Spezifikation verstoßen.

Das Projekt befindet sich noch in Entwicklung, und es gibt mehrere offene Probleme, die gelöst werden müssen. Dazu zählen zum Beispiel der Grund für das führende Leerzeichen beim Ausführen von ./run im C-Sampling-Code, die Unterstützung von Multi-Query für kleinere Modelle und die Unterstützung für Inferenz über die maximale Sequenzlänge hinaus.

Referenzen

  1. GCC-Optimierungsoptionen: Hier finden Sie ausführliche Informationen zu den verschiedenen Optimierungsoptionen von GCC.
  2. GCC Gleitkomma-Mathematik: Hier finden Sie ausführliche Informationen zu den Optionen -ffast-math und -funsafe-math-optimizations.
  3. Andrej Karpathys GitHub: Hier können Sie sich weitere Projekte von Andrej Karpathy ansehen.
  4. Llama2.c-Lizenz: Hier können Sie die MIT-Lizenz dieses Projekts einsehen.
  5. Liste der Mitwirkenden von Llama2.c: Hier können Sie sehen, wer zu diesem Projekt beigetragen hat.

Quelle

https://github.com/karpathy/llama2.c