Tiny Language Model auf Pure Node.js: Eine Implementierung ohne Magie
Ein Entwickler hat ein winziges kausales Sprachmodell in reinem JavaScript mit Node.js erstellt, ohne ML-Bibliotheken wie TensorFlow oder PyTorch. Das Modell implementiert Tokenisierung, Embeddings, kausalen Transformer, LM-Head, Softmax, Loss und Backpropagation mit skalarem Autograd. Das Training umfasst Pre-Training, überwachtes Fine-Tuning und adaptives SFT mit Wiederholung, um katastrophales Vergessen zu verhindern, und läuft in etwa vier Minuten.
Das Projekt implementiert ein winziges kausales Sprachmodell von Grund auf in reinem Node.js (>=18.19) ohne ML-Bibliotheken. Es verwendet Tokenisierung auf Wortebene (24 Tokens), zwei kausale Transformer-Blöcke, Multi-Head Self-Attention, ein FFN mit zwei versteckten Schichten und den Adam-Optimierer. Die Training-Pipeline besteht aus Pre-Training auf deklarativen Fakten, überwachter Feinabstimmung (Supervised Fine-Tuning, SFT) an 42 Frage-Antwort-Paaren und adaptivem SFT mit Wiederholung (Rehearsal), um neue Fakten ohne katastrophales Vergessen zu lernen. Das Modell hat 2.160 Parameter. Das Training erzeugt ein detailliertes ASCII-Protokoll der Matrizen und Änderungen. Der gesamte Code ist auf GitHub verfügbar.
Quelle: Habr — хаб ML —
Original
