Fine-Tuning (Sprachmodelle)

Overview

Fine-Tuning bezeichnet das Weitertrainieren eines vortrainierten Sprachmodells mit eigenen Beispielen. Ziel ist meist ein bestimmtes Verhalten: festes Ausgabeformat, Tonalität, Klassifikation nach eigenen Kategorien, Fachterminologie oder ein kleineres Modell, das eine eng umrissene Aufgabe so gut erledigt wie ein großes.

Abgrenzung: Fine-Tuning ist nicht der richtige Weg, um einem Modell aktuelles Unternehmenswissen beizubringen. Fakten veralten, und das Modell kann ihre Herkunft nicht belegen. Dafür ist RAG geeigneter. Vor einem Fine-Tuning sollten deshalb Prompt Engineering und RAG ausgeschöpft sein.

Varianten: Beim vollständigen Fine-Tuning werden alle Gewichte angepasst, das ist rechen- und speicherintensiv. Parameter-effiziente Verfahren (PEFT) wie LoRA trainieren nur kleine Zusatzmatrizen, QLoRA kombiniert das mit einem auf 4 Bit quantisierten Basismodell. In Microsoft Foundry ist überwachtes Fine-Tuning (SFT) für ausgewählte Modelle verfügbar, weitere Methoden beschreibt die Fine-Tuning-Übersicht.

How it works

Ein Fine-Tuning-Projekt läuft in fünf Schritten:

  1. Ziel und Erfolgsmaß festlegen, inklusive Testdatensatz, der nicht ins Training einfließt.
  2. Trainingsdaten aufbereiten, in Foundry als JSONL mit einer Konversation pro Zeile im Chat-Format (system, user, assistant), getrennt in Trainings- und Validierungsdatei.
  3. Training starten, in der Cloud als verwalteter Job oder lokal mit Bibliotheken wie Hugging Face PEFT. Bei LoRA wird die Gewichtsänderung als Produkt zweier kleiner Matrizen gelernt, das trainierbare Parameter und Checkpoint-Größe stark reduziert.
  4. Ergebnis gegen das Basismodell und den Testdatensatz bewerten.
  5. Das angepasste Modell bereitstellen und versionieren. Neue Basismodelle erfordern in der Regel ein erneutes Training.

Benefits

  • Konsistente Ausgaben in festem Format oder Stil, ohne lange Prompts mit vielen Beispielen
  • Kürzere Prompts und kleinere Modelle senken Tokenkosten und Antwortzeit im Dauerbetrieb
  • Mit LoRA und QLoRA auch auf einzelnen GPUs machbar, weil nur Adapter trainiert werden
  • Ein Basismodell kann mehrere austauschbare Adapter für unterschiedliche Aufgaben bedienen

Practical example

Ein Energieversorger mit 900 Beschäftigten klassifiziert täglich viele Kundenanfragen nach über 40 internen Kategorien. Ein großes Modell mit langem Prompt liefert gute Ergebnisse, ist aber teuer und langsam. Das Team trainiert per SFT ein kleineres Modell mit mehreren tausend historisch korrekt zugeordneten Anfragen und vergleicht es mit einem zurückgehaltenen Testsatz. Das feinabgestimmte Modell erreicht vergleichbare Trefferquoten bei deutlich geringeren Kosten pro Anfrage und läuft hinter derselben Schnittstelle.

Things to keep in mind

  • Erst Prompt Engineering und RAG ausschöpfen, Fine-Tuning lohnt sich vor allem für Format, Stil und eng umrissene Aufgaben
  • Trainingsdaten auf personenbezogene und vertrauliche Inhalte prüfen, sie können später aus dem Modell reproduziert werden
  • Validierungs- und Testdaten strikt vom Training trennen, sonst sind Messwerte geschönt
  • In der Cloud laufen Bereitstellungen auch nach dem Training weiter und verursachen Kosten, nicht benötigte Deployments löschen
  • Modelllizenz prüfen, nicht jedes offene Modell erlaubt das Verbreiten abgeleiteter Modelle

Conclusion

Fine-Tuning ist ein Spezialwerkzeug für Verhalten und Format, kein Ersatz für RAG. Plane es erst, wenn Du mit sauberen Prompts und einem Testdatensatz nachweisen kannst, dass es messbar besser wird.