QLoRA
forkortelse for Quantized Low-Rank Adaptation
QLoRA er en metode til effektiv finjustering af store sprogmodeller ved at kvantisere basismodellen og anvende lavrank-adaptere (LoRA), hvilket reducerer hukommelsesforbruget markant.
Kort fortalt
QLoRA gør det muligt at finjustere enorme AI-modeller på et enkelt grafikkort ved at komprimere modellen og kun træne små ekstra dele.
- Kategori
- teknik
- Niveau
- øvet
- Udtale
- /ˈkjuːlɔːrə/
Betydninger
1- 1
En finjusteringsteknik, hvor en stor sprogmodel først kvantiseres (typisk til 4-bit) og derefter finjusteres ved hjælp af lavrank-adaptere (LoRA), hvilket minimerer hukommelsesomkostningerne uden væsentligt tab af modelkvalitet.
- Med QLoRA kan man finjustere en 65 milliarder parametre stor LLaMA-model på en enkelt NVIDIA A100 GPU med kun 24 GB VRAM. — QLoRA-papiret, 2023
- QLoRA opnår næsten identisk ydeevne som fuld finjustering, men med en brøkdel af hukommelsesforbruget.
Hvornår bruges det
QLoRA bruges af forskere og praktikere til at finjustere sprogmodeller som LLaMA på almindelig forbrugergrafikkort. Det kombinerer 4-bit kvantisering med LoRA for at reducere hukommelsesbehovet, så modeller med over 60 milliarder parametre kan finjusteres på en enkelt GPU.
Kodeeksempel
from transformers import AutoModelForCausalLM, BitsAndBytesConfig, AutoTokenizer
from peft import LoraConfig, get_peft_model
model_name = "meta-llama/Llama-2-7b-hf"
bnb_config = BitsAndBytesConfig(load_in_4bit=True)
model = AutoModelForCausalLM.from_pretrained(model_name, quantization_config=bnb_config)
lora_config = LoraConfig(r=8, lora_alpha=16, target_modules=["q_proj", "v_proj"])
model = get_peft_model(model, lora_config)
tokenizer = AutoTokenizer.from_pretrained(model_name)
# Now fine-tune with your datasetEksempel på opsætning af QLoRA med Hugging Face Transformers og PEFT. Først indlæses modellen med 4-bit kvantisering, derefter tilføjes LoRA-adaptere.
Oprindelse
Termen QLoRA er en sammentrækning af 'Quantized' (kvantiseret) og 'LoRA' (Low-Rank Adaptation). Metoden blev introduceret i en forskningsartikel fra 2023 af Tim Dettmers og kolleger.