Implementasi ulang TensorFlow.js minimal dari minGPT (Generative Pre-trained Transformer) Karpathy.
Definisi lengkap model bahasa GPT "buatan sendiri" ini (semuanya) dapat ditemukan di file model.ts tunggal ini (kurang dari 300
baris kode).
Karena model.ts ditulis dalam TypeScript, Anda dapat menggunakan taman bermain GPT buatan sendiri untuk melatihnya, bereksperimen dengan parameter, dan menghasilkan prediksi langsung di browser menggunakan GPU.
Model dan taman bermain ditulis untuk tujuan pembelajaran , untuk memahami cara kerja GPT, dan untuk menggunakan WebGPU untuk pelatihan.
Untuk memahami apa yang terjadi di file model.ts, silakan lihat kuliah langsung Andrej Karpathy yang dijelaskan dengan baik, "Mari kita buat GPT: dari awal, dalam kode, dieja" (bisa dibilang salah satu penjelasan terbaik tentang GPT yang ada).
Di dalam folder ./gpt/src/ Anda akan menemukan file berikut:
Heads
di dalam CausalSelfAttention
secara berurutan (bukan secara paralel). Hasilnya, modelnya sedikit lebih lambat namun lebih mudah dibaca. Beberapa bobot model terlatih dipublikasikan di repositori bobot buatan sendiri-gpt-js. Anda dapat menerapkannya melalui taman bermain web (bagian "Generasi") atau melalui taman bermain Node.js ( model.setWeights()
).
Untuk bereksperimen dengan parameter model, pelatihan, dan pembuatan teks, Anda dapat menggunakan taman bermain GPT JS buatan sendiri.
Taman bermain GPT JS buatan sendiri |
---|
Anda juga dapat meluncurkan taman bermain secara lokal jika Anda ingin memodifikasi dan bereksperimen dengan kode model transformator itu sendiri.
Instal dependensi:
npm i
Luncurkan taman bermain web secara lokal:
npm run playground-web
Taman bermain akan dapat diakses di http://localhost:3000/homemade-gpt-js
Jalankan perintah ini dari root proyek. Anda harus memiliki Node.js ≥ 20.0.0.
Anda juga dapat bereksperimen dengan model di lingkungan Node.js.
Instal dependensi:
npm i
Luncurkan taman bermain Node.js:
npm run playground-node
File ./playground-node/src/index.ts berisi contoh dasar pelatihan dan pembuatan teks.
Jalankan perintah ini dari root proyek. Anda harus memiliki Node.js ≥ 20.0.0.