Alle 6 Rechenzentren betriebsbereit

Bezahlung in Krypto · Keine Identitätsprüfung · Root-Zugriff in unter 5 Minuten

Praxis-Guide · 10 Min. Lesezeit

Ein 70B-Modell auf einer Karte fine-tunen.

QLoRA macht aus einem Trainingsjob, der ein Rack braucht, einen, der mit einer einzelnen 48-GB-GPU auskommt. Hier sehen Sie, was passt, was es im Monat kostet und wo die Technik an ihre Grenzen stößt.

Die kurze Antwort

QLoRA auf 70B
~61 GB — passt bei kurzen Sequenzlängen auf eine 48-GB-Karte, auf einer 80-GB-Karte problemlos
Vollständiges Fine-Tuning von 70B
~1,232 GB — ein Multi-Knoten-Cluster, den wir nicht vermieten
Das Verhältnis
Etwa 20× weniger Speicher, für eine Technik, die bei den meisten Aufgaben den Großteil der Qualität erreicht
Was es hier kostet
Ab $286/Monat, die Karte gehört Ihnen für den ganzen Monat statt nur für den Lauf

Was tatsächlich passt

LoRA friert das Modell ein und trainiert neben jeder Gewichtsmatrix ein kleines Paar Low-Rank-Matrizen. QLoRA geht weiter und hält die eingefrorenen Gewichte in 4-Bit. Was Sie im Speicher vorhalten müssen, ändert sich dadurch vollständig.

Eingefrorene Gewichte4 Bit pro Parameter35 GB für ein 70B-Modell. Bei jedem Schritt gelesen, nie aktualisiert, brauchen sie daher nie einen Gradienten.
AdapterRund 1–2 % der ParameterEin bis zwei Gigabyte in BF16. Das sind die einzigen Gewichte, die sich ändern, und das Einzige, was am Ende übrig bleibt.
Optimizer-ZustandAdam, nur auf die AdapterZwei Momente pro trainiertem Parameter. Das ist der Term, der beim vollständigen Fine-Tuning dominiert und hier fast verschwindet.
AktivierungenDer variable AnteilSkaliert mit Batchgröße und Sequenzlänge. Gradient Checkpointing tauscht etwa 30 % mehr Rechenaufwand gegen eine deutliche Reduktion — der übliche Hebel, wenn ein Lauf nicht passt.

Warum vollständiges Fine-Tuning das nicht tut

Vollständiges Fine-Tuning in BF16 braucht etwa 16 Byte pro Parameter: 2 für das Gewicht, 2 für seinen Gradienten und 8 für Adams zwei Momente in FP32, dazu die Master-Kopie. Das ist ein fester Multiplikator, und er ist brutal.

Trainingsspeicher — QLoRA im Vergleich zu vollständigem Fine-Tuning
ModellQLoRAVollständiges Fine-TuningVerhältnisWas das bedeutet
Llama 3.1 8B8B Parameter 13 GB 141 GB 11× Eine 24-GB-Karte Vollständig: ein 8-GPU-Knoten
Gemma 3 27B27B Parameter 27 GB 475 GB 17× Eine 48-GB-Karte Vollständig: ein 8-GPU-Knoten
Qwen 3 32B32B Parameter 31 GB 563 GB 18× Eine 48-GB-Karte Vollständig: ein 8-GPU-Knoten
Llama 3.3 70B70B Parameter 61 GB 1,232 GB 20× Eine 80-GB-Karte Vollständig: mehr als ein Knoten

Dies sind Größenordnungen mit einem moderaten Puffer für Aktivierungen — genug, um eine Maschine auszuwählen, nicht genug, um einen bestimmten Lauf zu versprechen. Sequenzlänge und Batch-Größe verändern die QLoRA-Spalte erheblich; die Spalte für vollständiges Fine-Tuning bewegt sich kaum, da sie von den festen 16 Byte pro Parameter dominiert wird.

Modell für Modell

Der günstigste Knoten in unserem Katalog, der jedes Modell mit QLoRA trainieren kann, zusammen mit der Maschine, die Sie für das Serving des Ergebnisses bräuchten.

Günstigster Knoten für QLoRA-Training und für das Serving des Ergebnisses
ModellTrainingsspeicherGünstigster Knoten für TrainingGünstigster Knoten für Serving
Llama 3.1 8B 13 GB NVIDIA L424 GB pro Karte · $125/Monat NVIDIA L4$125/Monat
Mistral Small 24B 25 GB NVIDIA RTX A600048 GB pro Karte · $286/Monat NVIDIA L4$125/Monat
Gemma 3 27B 27 GB NVIDIA RTX A600048 GB pro Karte · $286/Monat NVIDIA L4$125/Monat
Qwen 3 32B 31 GB NVIDIA RTX A600048 GB pro Karte · $286/Monat NVIDIA L4$125/Monat
Llama 3.3 70B 61 GB NVIDIA A100 PCIe80 GB pro Karte · $1,091/Monat 2 × NVIDIA L4$285/Monat

Training braucht Speicher; Serving braucht Speicher und Bandbreite. Häufig ist die richtige Karte fürs Training eine günstige mit viel Speicher, während die richtige Karte fürs Serving eine teure, schnelle ist — und da hier beides monatlich abgerechnet wird, ist es oft günstiger, beide auf getrennten Maschinen zu betreiben, als bei einer Karte Kompromisse einzugehen.

Durchführung

Axolotl ist als eines der Images im Konfigurator vorinstalliert. Dies ist ein vollständiger Lauf auf einer einzelnen Karte, ausgehend von einer leeren Maschine.

Ein QLoRA-Lauf auf einer Karte
$ mkdir -p /scratch/ft && cd /scratch/ft
$ cat > qlora.yml <<'YAML'
base_model: meta-llama/Llama-3.3-70B-Instruct
load_in_4bit: true
adapter: qlora
lora_r: 16
lora_alpha: 32
lora_dropout: 0.05
lora_target_linear: true

sequence_len: 2048
sample_packing: true
gradient_checkpointing: true
micro_batch_size: 1
gradient_accumulation_steps: 16
num_epochs: 2
learning_rate: 0.0001
optimizer: paged_adamw_8bit
bf16: true

datasets:
  - path: /scratch/ft/data.jsonl
    type: chat_template
output_dir: /scratch/ft/out
YAML

$ docker run --rm --gpus all --ipc=host --shm-size=16g \
    -v /scratch/ft:/workspace -v /scratch/models:/root/.cache/huggingface \
    -e HF_TOKEN="$HF_TOKEN" \
    axolotlai/axolotl:main-latest \
    axolotl train /workspace/qlora.yml
Achten Sie in den ersten zwei Minuten auf den Speicher, nicht auf den Loss.
$ nvidia-smi dmon -s um

# If memory sits just under the card's total, you are one long batch
# away from an out-of-memory error four hours into the run.
# Lower sequence_len or micro_batch_size now, not then.

Die Einstellungen, auf die es ankommt

lora_r16 to 64Der Rang, und der wichtigste Regler zwischen Qualität und Speicher. 16 ist ein sinnvoller Standardwert; über 64 hinauszugehen lohnt sich selten, außer Sie vermitteln wirklich neues Wissen statt nur ein Format oder einen Stil.
lora_target_lineartruePasst jede lineare Schicht an statt nur Attention. Kostet wenig und übertrifft durchweg den Standard, der nur Attention anpasst.
sequence_lenDer größte SpeicherhebelDie Aktivierungen skalieren damit. Es zu halbieren, halbiert grob den variablen Teil Ihres Speichers. Setzen Sie es auf die Länge, die Ihre Daten tatsächlich haben, nicht auf das Maximum des Modells.
gradient_checkpointingtrue, fast immerEtwa 30 % langsamer, aber genau das ermöglicht es, einen 70B-Lauf überhaupt auf eine Karte zu bekommen. Schalten Sie es nur ab, wenn Speicher übrig ist.
micro_batch_size & AkkumulationEines gegen das andere abwägenDer effektive Batch ist ihr Produkt. Halten Sie den Mikro-Batch bei 1 und erhöhen Sie die Akkumulation, wenn der Speicher knapp ist — gleicher Gradient, weniger Spitzenspeicher, etwas langsamer.
Optimizerpaged_adamw_8bit8-Bit-Optimizer-Zustände mit CPU-Paging als Sicherheitsventil. Es fängt die Spitzen ab, die einen Lauf sonst in Stunde vier beenden würden.

Was ein Monat kostet

Der Grund, warum monatliche Abrechnung beim Training mehr zählt als beim Serving: Ein Fine-Tuning-Projekt ist nicht ein einzelner Lauf. Es ist ein erster Lauf, der an einem Datenfehler scheitert, ein zweiter, der overfittet, ein dritter, der funktioniert, und dann noch fünf weitere mit unterschiedlichen Rängen.

Kosten eines Fine-Tuning-Projekts, nach Maschine
MaschineKartenspeicherPro MonatGeeignet für
NVIDIA L4300 GB/s 24 GB $125/Monat QLoRA bis 8B
NVIDIA RTX 50901,792 GB/s 32 GB $335/Monat QLoRA bis 32B
NVIDIA A100 PCIe1,555 GB/s 40 GB $392/Monat QLoRA bis 32B
NVIDIA RTX A6000768 GB/s 48 GB $286/Monat QLoRA bis 32B
NVIDIA A100 PCIe1,935 GB/s 80 GB $1,091/Monat QLoRA bis 70B

Vergleichen Sie das mit stündlicher Abrechnung über ein ganzes Projekt statt über einen einzelnen Lauf: Der Break-even-Guide rechnet das durch. Eine Maschine, die drei Wochen lang existiert, während Sie iterieren, ist genau der Fall, in dem eine Abrechnung nach Verbrauch mehr kostet als eine feste Laufzeit.

Wo LoRA nicht mehr funktioniert

Es ist eine sehr gute Technik mit einer echten Grenze, und es lohnt sich, vor jeder Anmietung zu wissen, auf welcher Seite dieser Grenze man steht.

Ein wirklich neues Fachgebiet vermitteln. LoRA passt Verhalten gut an, fügt aber kaum neues Wissen hinzu. Ein Modell, das Ihr Fachgebiet nie gesehen hat, lernt es nicht von einem Low-Rank-Adapter.

Das Vokabular oder den Tokenizer ändern. Neue Token brauchen trainierte Embeddings, was außerhalb dessen liegt, was ein Adapter berührt.

Fortgesetztes Pre-Training über Milliarden von Token. Das ist vollständiges Fine-Tuning, und dafür braucht es die Maschine aus der rechten Spalte der Tabelle oben — mehr als einen Knoten, und mehr, als wir vermieten.

Die letzten zwei Punkte eines Benchmarks herausholen. Vollständiges Fine-Tuning gewinnt im Grenzbereich immer noch. Wenn genau dieser Grenzbereich das ist, wofür Sie bezahlt werden, ist LoRA das falsche Werkzeug.

Für alles andere — einen Tonfall, ein Format, ein Schema, ein Fachgebiet, das das Basismodell schon halb kennt — erreicht QLoRA auf einer einzelnen Karte den Großteil der Qualität für einen Bruchteil der Maschine. Das ist der Kompromiss, und bei den Modellen, die die meisten Leute tatsächlich fine-tunen, ist es ein guter.

Karte wählen und für das ganze Projekt behalten.

Jede Konfiguration ist monatlich, mit Root-Zugriff und ohne Verbrauchszähler — genau das, was das Iterieren an einem Fine-Tune tatsächlich braucht.

Anmelden

Konsole, Rechnungen und Out-of-Band-Zugriff.

Noch kein Konto?

Es gibt keine separate Registrierung. Ihr Konto wird bei Ihrer ersten Bestellung angelegt — Sie wählen E-Mail und Passwort im Zahlungsschritt, und die Konsole ist offen, sobald die Maschine es ist.

Server konfigurieren

Language