Ein Trainingsskript ausfuehren kann jeder. Der Unterschied zwischen einem trainierten Drachen und einem, der Glueck hatte, ist Evaluation — messen, diagnostizieren und iterieren wie ein Ingenieur. Das ist die Lektion, die dein mittelmaessiges v1 in ein v3 verwandelt, dem du wirklich vertraust — und es ist die Disziplin, die die meisten Hobbyisten ueberspringen.
Die drei Ebenen der Evaluation
Ebene 1 — Loss-Kurven (kostenlos, automatisch). Die hast du bereits vom Training. Sie erzaehlen dir etwas ueber den Prozess: Hat das Modell gelernt, hat es overfittet? Sie sagen dir nichts darueber, ob die Antworten tatsaechlich gut sind.
Ebene 2 — Dein Test-Set (die echte Pruefung). Erinnerst du dich an test.jsonl — die Scheibe, die das Modell nie gesehen hat? Schick jeden Test-Prompt durch das trainierte Modell und benote die Ausgaben gegen deine Ziel-Karte aus Lektion 2. Das ist deine Ground Truth.
Ebene 3 — Modell als Richter (Ebene 2 skaliert). Lass ein starkes Modell (Claude oder dein groesstes lokales Modell) jede Antwort gegen eine Rubrik benoten. Perfekt, um bei jeder Iteration 30+ Antworten neu zu benoten, ohne einen Abend zu verlieren.
Konzept
Benote gegen deine Ziel-Karte, nicht nach Gefuehl. Embers Karte sagt: Struktur (Antwort → Erklaerung → naechster Schritt), Stimme, null erfundene Fakten. Die Rubrik sind also drei Ja/Nein-Fragen pro Antwort. Score = Zaehlungen, nicht Gefuehle. "Es wirkt besser" ist keine Messung.Die Kurven lesen: Drei klassische Formen
Gesund: Beide Kurven sinken, die Validierung leicht ueber dem Train, beide flachen ab. Ab damit zum Test-Set.
Overfitting: Der Validierungs-Loss erreicht seinen Tiefpunkt und steigt, waehrend der Train weiter faellt. Der Drache lernt auswendig. Fixes, nach Wirkkraft geordnet: mehr/bessere Daten, weniger Epochen (stopp da, wo der Val Loss seinen Tiefpunkt hatte), niedrigerer Rank, hoeheres LoRA-Dropout.
Untertrainiert: Beide fallen noch, als das Training endete. Der einfachste Fix ueberhaupt: laenger trainieren oder die Learning Rate eine Stufe anheben.
Die Diagnose-Tabelle
Zahlen zeigen auf das Problem; echte Ausgaben zu lesen identifiziert es. Lies nach jedem Lauf 10 Test-Ausgaben und ordne die Symptome zu:
| Symptom in den Ausgaben | Wahrscheinliche Ursache | Fix |
|---|---|---|
| Ignoriert manchmal dein Format | Inkonsistente Beispiele, oder zu wenige | Daten saeubern; formatlastige Beispiele ergaenzen |
| Plappert Trainingsantworten woertlich nach | Overfitting | Weniger Epochen; mehr Datenvielfalt |
| Tolles Format, schwache Substanz | Rank zu niedrig, oder Basis zu klein | r=16→32; 8B-Basis erwaegen |
| Erfindet selbstbewusst Fakten | Keine Weigerungs-Beispiele in den Daten | 20–30 explizite Weigerungs-Demonstrationen ergaenzen |
| Schlechter als die Basis im allgemeinen Chat | Uebertrainiert / Catastrophic Forgetting | Weniger Schritte; 10–20% allgemeine Chat-Beispiele beimischen |
| Wechselt zufaellig die Sprache | Gemischtsprachige Daten ohne Muster | Sprachpaarung pro Beispiel explizit machen |
Ehrlicher Hinweis
Catastrophic Forgetting ist real: Haemmere ein Modell mit 2.000 Support-Tickets, und es kann bei allem anderen schlechter werden. LoRAs eingefrorene Basis begrenzt den Schaden (loesch die Adapter und die Basis ist unberuehrt), aber Adapter koennen Verhalten trotzdem uebersteuern. Die Standard-Impfung: eine kleine Scheibe allgemeiner Konversationsdaten im Mix behalten.Die Iterationsschleife
Dein Workflow ist ab hier eine Schleife, und jeder Durchgang dauert einen Abend, keine Woche:
- Evaluiere v_N auf dem Test-Set → Scores auf deiner Ziel-Karten-Rubrik
- Lies die 10 schlechtesten Ausgaben → waehle das eine groesste Problem
- Fixe zuerst die Daten (sie sind in ~80% der Faelle die Ursache), Hyperparameter danach
- Retrainiere → v_N+1, re-evaluiere dasselbe Test-Set → vergleiche die Zahlen
- Stopp, wenn du den Erfolgstest deiner Ziel-Karte erreichst — Embers war ≥25/30 strukturiert, 0 erfundene Fakten