TinyGPT
1.0.0
Implementasi inferensi kecil C++11 GPT-2 dari awal, yang sebagian besar didasarkan pada proyek picoGPT.
Entri blog yang menyertai: Tulis GPT dari awal (TinyGPT)
Tensor
: Kelas Tensor mirip dengan antarmuka numpy.Model
: Implementasi model GPT-2 dengan referensi ke gpt2_pico.py.Tokenizer
: Tokenizer BPE dengan logika yang sama persis dengan encoder.py GPT-2. git clone --recurse-submodules https://github.com/keith2018/TinyGPT.git
Situs web resmi: Perpustakaan Matematika yang Dioptimalkan Intel® untuk Komputasi Numerik pada CPU & GPU
python3 tools / download_gpt2_model . py
jika berhasil, Anda akan melihat file model_file.data
di direktori assets/gpt2
mkdir build
cmake -B ./build -DCMAKE_BUILD_TYPE=Release
cmake --build ./build --config Release
Ini akan menghasilkan file yang dapat dieksekusi dan menyalin aset ke direktori app/bin
, lalu Anda dapat menjalankan demo:
cd app/bin
./TinyGPT_demo
[DEBUG] TIMER TinyGPT::Model::loadModelGPT2: cost: 800 ms
[DEBUG] TIMER TinyGPT::Encoder::getEncoder: cost: 191 ms
INPUT:Alan Turing theorized that computers would one day become
GPT:the most powerful machines on the planet.
INPUT:exit
intel-mkl
https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl.htmljson11
https://github.com/dropbox/json11re2
https://github.com/google/re2abseil-cpp
https://github.com/abseil/abseil-cpp Kode ini dilisensikan di bawah Lisensi MIT (lihat LISENSI).