LoRA vs QLoRA vs Full Fine-Tuning: Which Should You Use?

Full fine-tuning, LoRA and QLoRA differ mainly in what they train, what they keep in memory, and what you store afterwards. Here is how to choose between them.

By ForGen AI · Updated

At a glance

Full fine-tuningLoRAQLoRA
Trainable parametersAll (100%)Typically <1%Typically <1%
Base weights in memory16/32-bit, updated16-bit, frozen4-bit NF4, frozen
Optimizer stateFor every parameterAdapters onlyAdapters only (paged)
Rough GPU need, 7B modelMultiple 80 GB GPUsOne 24–48 GB GPUOne 12–24 GB GPU
Stored per custom modelFull copy (GBs)Adapter (MBs)Adapter (MBs)
Serve many variants on one GPUNoYesYes

GPU figures are rough guides for typical sequence lengths and batch sizes, not guarantees.

Choose full fine-tuning when…

Choose LoRA when…

Choose QLoRA when…

And when you need hundreds of adapters

Low-rank methods make each adapter cheap. At fleet scale, the remaining cost is running the base model over overlapping datasets again and again. Flora removes that duplication by running each shared prompt through the base model once. Read more in multi-adapter training.

FAQ

Is LoRA as good as full fine-tuning?

For most instruction, style and task-adaptation work, LoRA reaches quality comparable to full fine-tuning. Full fine-tuning can still win when the model must absorb large amounts of new knowledge.

Which method uses the least GPU memory?

QLoRA. It stores the frozen base model in 4-bit NF4 and trains only small adapters.

Which is best for many customer-specific models?

LoRA or QLoRA. Each adapter is a few megabytes, many adapters can be served from one base model, and shared-pass training can remove duplicated compute across adapters.

Train adapter fleets without the duplicated compute

Flora is ForGen AI's patent-pending shared-pass training technique for LoRA and QLoRA adapters.

See how Flora works →