Rumah  >  Artikel  >  Peranti teknologi  >  Dengan pantas memperoleh 2,500 bintang, Andrej Karpathy menulis semula perpustakaan minGPT

Dengan pantas memperoleh 2,500 bintang, Andrej Karpathy menulis semula perpustakaan minGPT

WBOY
WBOYke hadapan
2023-04-13 14:01:061119semak imbas

Sebagai karya perwakilan "estetika ganas" dalam bidang kecerdasan buatan, GPT boleh dikatakan telah mencuri tumpuan Daripada 117 juta parameter GPT pada awal kelahirannya, ia telah melonjak semua jalan ke 175 bilion parameter GPT-3. Dengan keluaran GPT-3, OpenAI telah membuka API komersialnya kepada komuniti, menggalakkan semua orang mencuba lebih banyak percubaan menggunakan GPT-3. Walau bagaimanapun, penggunaan API memerlukan aplikasi dan aplikasi anda mungkin akan menjadi sia-sia.

Untuk membolehkan penyelidik yang mempunyai sumber terhad mengalami keseronokan bermain dengan model besar, bekas ketua AI Tesla Andrej Karpathy menulisnya berdasarkan PyTorch dengan hanya kira-kira 300 baris kod A perpustakaan latihan GPT kecil telah dibangunkan dan dinamakan minGPT. MinGPT ini boleh melakukan operasi penambahan dan pemodelan bahasa peringkat aksara, dan ketepatannya tidaklah buruk.

Selepas dua tahun, minGPT telah dikemas kini, dan Karpathy telah melancarkan versi baharu bernama NanoGPT Pustaka ini digunakan untuk melatih dan memperhalusi GPT bersaiz sederhana. Hanya dalam beberapa hari sejak ia dilancarkan, ia telah mengumpul 2.5K bintang.

Dengan pantas memperoleh 2,500 bintang, Andrej Karpathy menulis semula perpustakaan minGPT


Alamat projek: https://github.com/karpathy/nanoGPT

Dalam pengenalan projek, Karpathy menulis: "NanoGPT ialah perpustakaan paling mudah dan terpantas untuk latihan dan penalaan halus GPT skala sederhana. Ia adalah penulisan semula minGPT, kerana minGPT Ia begitu kompleks yang saya tidak mahu menggunakannya lagi NanoGPT masih dalam pembangunan, sedang berusaha untuk menghasilkan semula GPT-2 pada dataset OpenWebText

Matlamat reka bentuk kod NanoGPT ia mudah dan mudah dibaca, di mana melatih .py ialah kod kira-kira 300 baris; model.py ialah definisi model GPT kira-kira 300 baris, yang boleh memuatkan pemberat GPT-2 daripada OpenAI 》

Dengan pantas memperoleh 2,500 bintang, Andrej Karpathy menulis semula perpustakaan minGPT

Untuk membentangkan set data, pengguna terlebih dahulu perlu tokenize beberapa dokumen ke dalam tatasusunan diindeks 1D yang mudah.

$ cd data/openwebtext
$ python prepare.py
Ini akan menjana dua fail: train.bin dan val.bin, setiap satu mengandungi jujukan mentah uint16 bait yang mewakili id ​​token GPT-2 BPE. Skrip latihan ini cuba untuk meniru versi terkecil GPT-2 yang disediakan oleh OpenAI, iaitu versi 124M.

$ python train.py
Jika anda ingin menggunakan PyTorch distributed data parallelism (DDP) untuk latihan, sila gunakan torchrun untuk menjalankan skrip.

$ torchrun --standalone --nproc_per_node=4 train.py
Untuk menjadikan kod lebih cekap, pengguna juga boleh mencuba daripada model:

$ python sample.py
Karpathy berkata projek The kehilangan latihan semasa untuk satu malam pada 1 A100 40GB GPU ialah kira-kira 3.74, dan kerugian latihan pada 4 GPU ialah kira-kira 3.60. Latihan menurun kepada 3.1 atm dengan 400,000 lelaran (~1 hari) pada 8 x A100 40GB nod.

Mengenai cara memperhalusi GPT pada teks baharu, pengguna boleh melawati data/shakespeare dan melihat prepare.py. Tidak seperti OpenWebText, ini akan berjalan dalam beberapa saat. Penalaan halus mengambil masa yang sangat singkat, mis. hanya beberapa minit pada satu GPU. Berikut ialah contoh menjalankan penalaan halus

$ python train.py config/finetune_shakespeare.py
Sebaik sahaja projek itu masuk dalam talian, seseorang telah mula mencubanya:

Dengan pantas memperoleh 2,500 bintang, Andrej Karpathy menulis semula perpustakaan minGPT

Bagi yang ingin mencuba, boleh rujuk projek asal untuk menjalankannya.

Atas ialah kandungan terperinci Dengan pantas memperoleh 2,500 bintang, Andrej Karpathy menulis semula perpustakaan minGPT. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam