Interactive explainer

Fine-tuning: 5 ways to do it

From training every weight to training a handful of them. Change the numbers below and watch every method recalculate at once.

Tip: click any heading or description to edit the wording before you send this on.

4
13

Trainable parameters, side by side

log scale — each line is 10× smaller than the last

TinyLoRA barely shows up on this chart. That's not a rendering bug, it really is that small.

1

Full fine-tuning

Every weight in the matrix gets updated during training. No shortcuts, no approximations, and a memory bill to match.

100%of the matrix is trainable
W, frozen
+
2

LoRA

Freeze the original weights. Train two small matrices, A and B, and add their product back on top.

W, frozen
×
A, frozen
+
3

LoRA-FA

Same shape as LoRA, but A is frozen as well. Only B ever moves, so there's even less to train.

W, 4-bit
+
4

QLoRA

The same trainable matrices as LoRA, except the frozen base now lives in 4-bit. Same maths, a quarter of the memory.

Memory to hold the base model

16-bit
4-bit
·
λ, fixed
5

TinyLoRA

Skip A and B altogether. Multiply a tiny trainable vector by a fixed tensor and tie the result back across the whole matrix. N can be as small as one.

regardless of model size, that's the entire trainable budget
trainable frozen fixed, never trained 4-bit quantised