picoGPT
1.0.0
付随するブログ投稿: Numpy の 60 行の GPT
openai/gpt-2 を見てきました。
karpathy/minGPT を見てきました。
karpathy/nanoGPT も見たことがありますね。
しかし、picoGPTを見たことがありますか??!?
picoGPT
、プレーンな NumPy での GPT-2 の不必要に小さい最小限の実装です。転送パス コード全体は 40 行のコードです。
picoGPT の特徴:
gpt2.py
✅ gpt2_pico.py
各ファイルの簡単な内訳は次のとおりです。
encoder.py
gpt-2 リポジトリから直接取得した OpenAI の BPE Tokenizer のコードが含まれています。utils.py
には、GPT-2 モデルの重み、トークナイザー、およびハイパーパラメーターをダウンロードしてロードするためのコードが含まれています。gpt2.py
Python スクリプトとして実行できる実際の GPT モデルと生成コードが含まれています。gpt2_pico.py
はgpt2.py
と同じですが、コード行がさらに少なくなります。なぜ?なぜそうではないのでしょうか??。 pip install -r requirements.txt
Python 3.9.10
でテストされました。
python gpt2.py " Alan Turing theorized that computers would one day become "
どれが生成するか
the most powerful machines on the planet.
The computer is a machine that can perform complex calculations, and it can perform these calculations in a way that is very similar to the human brain.
生成するトークンの数、モデル サイズ ( ["124M", "355M", "774M", "1558M"]
のいずれか)、モデルを保存するディレクトリを制御することもできます。
python gpt2.py
" Alan Turing theorized that computers would one day become "
--n_tokens_to_generate 40
--model_size " 124M "
--models_dir " models "