- In reinem C kann ein kleines Llama-2-Modell inferiert werden.
- Dieser Code ermöglicht es, die Llama-2-LLM-Architektur in PyTorch zu trainieren und die Gewichte als rohe Binärdatei zu speichern.
- Anschließend können die Gewichte in eine C-Datei geladen werden.
- Die C-Datei kann Modelle beachtlicher Größe mit sehr hoher Geschwindigkeit ausführen.
- Dieses Projekt wurde als Wochenendprojekt erstellt und ist keine produktionsreife Bibliothek.
- Vortrainierte Modelle können heruntergeladen und in C ausgeführt werden.
- Der C-Code streamt rohe Tokens, die mit einem einfachen Wrapper in Text umgewandelt werden können.
- Der C-Code läuft auf einem M1 MacBook Air mit etwa 100 Tokens pro Sekunde.
- Die Ausgabe des C-Codes ist auf Basis des Modells generierter Text.
- Dieses Projekt fokussiert sich auf eine bestimmte Anwendung und trainiert dieselbe Architektur von Grund auf.
- Der Quelldatensatz kann heruntergeladen, vorab tokenisiert und anschließend zum Trainieren des Modells verwendet werden.
- Durch Anpassen der Hyperparameter lässt sich ein besseres Modell erstellen.
- Zum Vergleich kann auch das PyTorch-Inferenzskript ausgeführt werden.
- Mit dem bereitgestellten Testskript können ausführliche Tests durchgeführt werden.
- Für dieses Projekt werden aus dem PyTorch-Training die Dateien
model.bin und model.ckpt benötigt.
- Im Text werden einige To-dos und Fragen erwähnt.
- Dieses Projekt wird unter der MIT-Lizenz bereitgestellt.
1 Kommentare
Hacker-News-Kommentare