Uma versão atualizada pode ser encontrada em um novo repositório
https://github.com/gmongaras/wizard_qlora_finetuning
Um exemplo de funcionamento de um modelo de 4 bits qlora falcon/llama2 usando huggingface
Para começar a Finetuning, editar e executar main.py
Depois que o Finetuning estiver concluído, você deve ter pontos de verificação em ./outputs . Antes de executar a inferência, podemos combinar os pesos da Lora com os pesos originais para inferência mais rápida e menores requisitos de GPU durante a inferência. Para fazer isso, execute o script merge_weights.py com seus caminhos.
Por fim, você pode executar generate.py , por exemplo, geração, dado o modelo mesclado.
Os requisitos do Python para executar o script estão localizados em requisitos.txt
Você também deve baixar os pesos do Falcon do modelo 7B aqui https://huggingface.co/tiiuae/falcon-7b e colocar os arquivos em um diretório ./tiiuae/falcon-7b ou baixar os pesos llama-2 aqui https://huggingface.co/meta-llama/Llama-2-7b-hf ./llama-2 2
Este script não suporta multi-GPUs no Finetuning de 4 bits. Se eu encontrar uma maneira de fazer isso, atualizarei o script.
python -m pip uninstall bitsandbytes transformers accelerate peft -y
python -m pip install git+https://github.com/huggingface/transformers.git git+https://github.com/huggingface/peft.git git+https://github.com/huggingface/accelerate.git git+https://github.com/timdettmers/bitsandbytes.git -U
CUDA Setup failed despite GPU being available. Please run the following command to get more information , então você precisa construir bitsandbytes a partir da fonte e colocá-lo em seus bits e bytes site-package seguindo https://github.com/oobabooga/text-generation-webui/issues/147