gpt4all: an ecosystem of open-source chatbots trained on a massive collections of clean assistant data including code, stories and dialogue
Go to file
2023-03-28 12:35:39 -04:00
configs feat: lora config 2023-03-27 17:33:13 +00:00
figs feat: training log 2023-03-28 02:49:03 +00:00
peft@098962fa65 feat: peft submodule 2023-03-25 16:23:14 +00:00
transformers@cae78c46d6 feat: transformers submodule, gitignore 2023-03-25 16:16:11 +00:00
.gitignore chore: gitignore 2023-03-27 16:33:00 +00:00
.gitmodules feat: peft submodule 2023-03-25 16:23:14 +00:00
clean.py fix: naming 2023-03-27 17:30:33 +00:00
data.py fix: just read from watermark file 2023-03-27 17:30:44 +00:00
env.yaml feat: env for conda, pip 2023-03-25 16:16:40 +00:00
generate.py fix: don't print token ids of output 2023-03-25 17:18:07 +00:00
read.py feat: train and clean data 2023-03-25 16:17:48 +00:00
README.md Updated README.md 2023-03-28 12:35:39 -04:00
requirements.txt feat: env for conda, pip 2023-03-25 16:16:40 +00:00
train.py fix: append first_epoch 2023-03-27 17:30:24 +00:00
TRAINING_LOG.md feat: training log 2023-03-28 02:49:03 +00:00

GPT4All

Demo, data and code to train an assistant-style large language model

Try it yourself

-- TODO LLAMA C++ code

Reproducibility

You can find trained LoRa model weights at:

We are not distributing LLaMa 7B checkpoint they need to be used in association with.

To reproduce our LoRA training run, do the following:

Setup

Clone the repo

git clone --recurse-submodules git@github.com:nomic-ai/gpt4all.git

git submodule configure && git submodule update

Setup the environment

python -m pip install -r requirements.txt

cd transformers
pip install -e . 

cd ../peft
pip install -e .

Generate

python generate.py --config configs/generate/generate.yaml --prompt "Write a script to reverse a string in Python

Train

accelerate launch --dynamo_backend=inductor --num_processes=8 --num_machines=1 --machine_rank=0 --deepspeed_multinode_launcher standard --mixed_precision=bf16 --use_deepspeed --deepspeed_config_file=configs/deepspeed/ds_config.json train.py --config configs/train/finetune-7b.yaml

If you utilize this reposistory, models or data in a downstream project, please consider citing it with:

@misc{gpt4all,
  author = {Yuvanesh Anand and Zachary Nussbaum and Brandon Duderstadt and Benjamin Schmidt and Andriy Mulyar},
  title = {GPT4All: Training an Assistant-style Chatbot with Large Scale Data Distillation from GPT-3.5-Turbo},
  year = {2023},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/nomic-ai/gpt4all}},
}