lora instruct
1.0.0
Dieses Repository enthält Code zur Feinabstimmung freizügiger Open-Source-LLMs mithilfe der Low-Rank-Adaption (LoRA).
Der Code wird mit dem Stanford Alpaca-Datensatz getestet.
Inspiriert von Alpaka-LoRA
Modell | Läuft | Trainingszeit | Link |
---|---|---|---|
LLaMA 3B | ⬜ | ||
LLaMA 7B | ⬜ | ||
Roter Pyjama 3B | ✅ | 1:44:14 | |
Roter Pyjama 7B | ✅ | 3:09:58 | |
MPT 3B | ⬜ | ||
MPT 7B | ⬜ | ||
Falcon 7B | ✅ |
Ubuntu 20.04.1 LTS (WSL2)
Driver Version: 531.41
CUDA Version: 12.1
cuDNN version: 8.5.0
Abhängigkeiten installieren
poetry install
Um eine Feinabstimmung mit der GPU der NVidia 2000-Serie oder früher vorzunehmen, kommentieren Sie diese Zeile bitte in finetune.py
aus
model = prepare_model_for_int8_training ( model )
finetune.py
)Diese Datei enthält eine einfache Anwendung von PEFT/LoRA auf das Nur-Decoder-Modell sowie Code für die Eingabeaufforderungskonstruktion und Tokenisierung.
Beispielverwendung:
python finetune.py
--base_model ' togethercomputer/RedPajama-INCITE-Base-7B-v0.1 '
--output_dir ' ./lora-redpajama '
Wir nutzen die accelerate
von HuggingFace für verteiltes Training. Im Folgenden finden Sie ein Beispiel für verteiltes Training mit zwei GPUs.
export WORLD_SIZE=2
export CUDA_VISIBLE_DEVICES=0,1
torchrun
--nproc_per_node=2
--master_port=1234
finetune.py
--base_model ' togethercomputer/RedPajama-INCITE-Base-7B-v0.1 '
--output_dir ' ./lora-redpajama '