gpt2-tensorflow / README.md
rasbt's picture
Mirror the four original OpenAI GPT-2 TensorFlow checkpoints
bdb1e76 verified
|
Raw History Blame Contribute Delete
1.56 kB
---
license: other
license_name: openai-gpt-2-modified-mit
license_link: LICENSE
language:
- en
tags:
- gpt-2
- tensorflow
pipeline_tag: text-generation
---
# GPT-2 TensorFlow checkpoints
This repository mirrors OpenAI's original GPT-2 checkpoints for the weight-loading example in [Chapter 5 of Build a Large Language Model (From Scratch)](https://github.com/rasbt/LLMs-from-scratch/tree/main/ch05/01_main-chapter-code).
The four folders, `124M`, `355M`, `774M`, and `1558M`, follow OpenAI's directory layout. Each contains the TensorFlow checkpoint, its hyperparameters (`hparams.json`), and the GPT-2 tokenizer files (`encoder.json` and `vocab.bpe`).
## Loading a checkpoint
The following example uses the Chapter 5 downloader with the `source` argument to load the 124M checkpoint directly from Hugging Face.
```python
from gpt_download import download_and_load_gpt2
settings, params = download_and_load_gpt2("124M", models_dir="gpt2", source="hf")
```
The function saves the seven files in `gpt2/124M/` and returns the settings and NumPy arrays used in the chapter. Change `"124M"` to load one of the larger models. You can also download the seven files directly from a [model folder on the Hub](https://huggingface.co/rasbt/gpt2-tensorflow/tree/main/124M).
OpenAI released the weights under its [modified MIT license](https://github.com/openai/gpt-2/blob/master/LICENSE). For the same weights converted to PyTorch state dictionaries and safetensors, see [rasbt/gpt2-from-scratch-pytorch](https://huggingface.co/rasbt/gpt2-from-scratch-pytorch).