lora instruct
1.0.0
Ce référentiel contient du code permettant d'affiner les LLM open source permissifs à l'aide d'une adaptation de bas rang (LoRA).
Le code est testé à l’aide de l’ensemble de données Stanford Alpaca.
Inspiré par Alpaca-LoRA
Modèle | Fonctionne | Temps de formation | Lien |
---|---|---|---|
LLaMA 3B | ⬜ | ||
LLaMA 7B | ⬜ | ||
RougePyjama 3B | ✅ | 1:44:14 | |
RougePyjama 7B | ✅ | 3:09:58 | |
MPT 3B | ⬜ | ||
MPT7B | ⬜ | ||
Faucon 7B | ✅ |
Ubuntu 20.04.1 LTS (WSL2)
Driver Version: 531.41
CUDA Version: 12.1
cuDNN version: 8.5.0
Installer les dépendances
poetry install
Pour affiner l'utilisation du GPU NVidia série 2000 ou version antérieure, veuillez commenter cette ligne dans finetune.py
model = prepare_model_for_int8_training ( model )
finetune.py
)Ce fichier contient une application simple de PEFT/LoRA au modèle de décodeur uniquement, ainsi que du code lié à la construction d'invites et à la tokenisation.
Exemple d'utilisation :
python finetune.py
--base_model ' togethercomputer/RedPajama-INCITE-Base-7B-v0.1 '
--output_dir ' ./lora-redpajama '
Nous utilisons la bibliothèque accelerate
de HuggingFace pour la formation distribuée. Voici un exemple de formation distribuée avec deux GPU.
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 '