# Mit Beeuni ein Modell-Fine-Tuning-Experiment durchführen und auswerten

Lass einen Agenten Trainingsdaten vorbereiten, einen Fine-Tuning-Lauf auf deinem verbundenen Trainingscomputer ausführen, Fehler untersuchen und Modellausgaben vergleichen.

Canonical page: https://beeuni.ai/blog/de/run-model-fine-tuning-with-beeuni

Das Trainingsskript wird über Nacht beendet. Im Ausgabeordner liegt ein Checkpoint, also der gespeicherte Zustand des Modells zu einem bestimmten Zeitpunkt im Training. Das Protokoll endet jedoch vor der Auswertung. Ist das Training abgeschlossen? Lässt sich das gespeicherte Modell laden? Welche Einstellungen wurden verwendet? Ein Beeuni-Agent kann Dateien und Protokolle prüfen, den Checkpoint zu laden versuchen und berichten, was abgeschlossen wurde. Danach entscheidest du, ob ein neuer Lauf nötig ist.

Mit Zugriff auf deinen Trainingscomputer kann der Agent den Code und die Daten prüfen, Befehle ausführen, Protokolle lesen und Auswertungsergebnisse sammeln. Du entscheidest, welches Modell verwendet wird und was als Verbesserung gilt. Beeuni nutzt die auf diesem Computer verfügbare Trainingssoftware und Rechenleistung, um die Arbeit auszuführen.

## Beginne mit einem Verhalten, das du ändern möchtest

Denk an den Klassifikator für Supportanfragen aus dem [Leitfaden zum Datensatz](/blog/de/build-ai-training-dataset-jsonl). Er ordnet Anfragen den Kategorien Abrechnung, Kontozugriff, Produkthilfe oder Prüfung zu. Du möchtest testen, ob ein feinabgestimmtes Modell häufiger die richtige Kategorie wählt als das Basismodell mit Anweisungen. Behalte Beispiele bei, die sowohl den Kontozugriff als auch die Abrechnung betreffen: Sie zeigen, ob das Modell gelernt hat, welche Kategorie Vorrang hat, wenn eine Anfrage mehrere Probleme enthält.

Gib dem Agenten die Definitionen der Labels, geprüfte Trainingsdatensätze und einen separaten Evaluierungssatz. Lass ihn den Evaluierungssatz mit dem Basismodell ausführen, bevor die Gewichte geändert werden. Speichere die Modellkennung, Anweisungen, Generierungseinstellungen und Vorhersagen. Ohne diese Ausgangswerte lässt sich kaum beurteilen, ob der zusätzliche Aufwand etwas gebracht hat, selbst wenn der Trainingsbefehl erfolgreich ausgeführt wurde.

## Richte den Zugriff auf den Trainingscomputer ein

Verbinde den Computer, auf dem das Experiment ausgeführt wird, über [Computer Tunnel](/docs/de/connect/computers) und wähle ihn im aktiven Profil aus. Erlaube den Dateisystem- und Shell-Zugriff auf das Trainingsverzeichnis. Weise den Agenten auf das Repository, den Speicherort des Datensatzes und die Python-Umgebung hin. Bei einem GPU-Training soll er verfügbare Geräte, Speicher, Treiber und die Kompatibilität mit dem Framework prüfen, bevor er Einstellungen auswählt.

Das Basismodell und die Trainingsmethode bestimmen, wie viel Speicher und Rechenleistung du brauchst. Bei einer Adapter-Methode trainierst du eine kleine Gruppe zusätzlicher Parameter, während die Gewichte des Basismodells unverändert bleiben. Alle Gewichte zu aktualisieren benötigt in der Regel mehr Ressourcen. Lass den Beeuni-Agenten dein Trainingsskript und die verfügbare Hardware prüfen und erklären, ob die geplanten Einstellungen passen. Prüfe vorgeschlagene Paketinstallationen, Modelldownloads und Änderungen an der Umgebung vor dem Start.

```
Use the connected training computer and repository I specify.
Inspect the training script, model access, Python environment, and available devices.
Validate the reviewed dataset and keep the evaluation set separate.
Run the base-model evaluation and save its predictions.
Propose a small fine-tuning run with the settings and output directory shown.
Wait for my approval before starting training or changing the environment.
Save the command, configuration, logs, and evaluation results for each run.
```

## Halte den ersten Lauf klein genug, um ihn überprüfen zu können

Teste vor einem vollständigen Lauf den Ablauf mit einer kleinen Trainingsstichprobe. Kann der Tokenizer die Datensätze lesen? Sind die Labels einheitlich dargestellt? Lernt das Modell, den vorgesehenen Text vorherzusagen? Kann das Skript einen Checkpoint speichern und laden, um eine Anfrage zu beantworten? Diese Prüfungen decken Konfigurationsfehler auf, bevor du Zeit in das Training mit dem gesamten Datensatz investierst.

Lass dir vom Beeuni-Agenten ein Beispiel genau so zeigen, wie das Trainingsskript es liest. Er soll markieren, welchen Text das Modell vorherzusagen lernt und welcher Text nur als Kontext dient. Der Trainings-Loss misst die Fehler bei diesen Vorhersagen. Verwendet das Skript die falschen Felder, kann das Training normal laufen und trotzdem das falsche Verhalten vermitteln. Prüfe dieses Beispiel, bevor du dich auf ein Loss-Diagramm verlässt.

Speichere jedes Experiment in einem eigenen Ausgabeordner. Halte die Codeversion, die Datensatzversion, das Basismodell, die Trainingsmethode, den Seed und die Einstellungen fest. Wenn die Methode nur einen Adapter speichert, notiere auch das dafür benötigte Basismodell. Zu einem Gewichtsordner sollten genügend Informationen gehören, um das Modell erneut laden zu können.

## Prüfe den Trainingsfortschritt, ohne den Job neu zu starten

Nutze den Job-Runner des Trainingscomputers oder eine dauerhafte Terminalsitzung und schreibe die Protokolle auf die Festplatte. Lass den Agenten festhalten, wie sich der Job überprüfen und beenden lässt. Ein Befehl, der während eines Tool-Aufrufs gestartet wird, braucht eine eigene Prozessverwaltung; die Chat-Verbindung sollte nicht der einzige Nachweis dafür sein, dass der Lauf begonnen hat.

Wenn du nach einem Zwischenstand fragst, kann der Agent den dokumentierten Job prüfen, das aktuelle Protokoll lesen und gespeicherte Checkpoints untersuchen. Bricht die Verbindung ab, prüfe, ob derselbe Job noch läuft, bevor du einen weiteren startest. Ob ein Checkpoint fortgesetzt werden kann, hängt davon ab, was das Trainings-Framework gespeichert hat. Dazu können auch der Zustand des Optimierers und des Schedulers gehören, wenn sie benötigt werden.

Bei einem Fehler wegen unzureichenden Speichers soll der Agent die fehlgeschlagene Konfiguration beibehalten und den Fehler lesen, bevor er eine Änderung vorschlägt. Eine kleinere Batch-Größe, kürzere Sequenzen oder eine andere Trainingsmethode können sich sowohl auf den Speicherbedarf als auch auf das Experiment auswirken. Speichere die geänderten Einstellungen als separaten Lauf, damit der Vergleich nachvollziehbar bleibt.

## Vergleiche die Fehler und entscheide dann, was du beibehältst

Lass das feinabgestimmte Modell dieselben Beispiele beantworten, mit denen du das Basismodell bewertet hast. Diese Beispiele dürfen nicht in den Trainingsdaten vorkommen. Lass auch die Vorhersageeinstellungen und Bewertungsregeln unverändert. Vergleiche beim Support-Klassifikator die Ergebnisse jeder Kategorie und prüfe die Anfragen, deren Zuordnung sich geändert hat. Eine höhere Gesamtgenauigkeit kann verdecken, dass seltene, wichtige Fälle schlechter bearbeitet werden.

| Beispiel zur Prüfung | Was der Vergleich zeigen sollte |
| --- | --- |
| Eine eindeutige Beschwerde über eine Belastung | Ob die grundlegende Klassifizierung von Abrechnungsanfragen weiterhin funktioniert |
| Eine Anfrage, die Probleme beim Anmelden und eine Kündigung kombiniert | Ob die Regel für konkurrierende Absichten befolgt wird |
| Eine unvollständige Folgeanfrage | Ob das Modell das Label „Prüfung“ verwendet, statt zu raten |
| Ein Label außerhalb der zugelassenen Auswahl | Ob Formatierung oder Label-Beschränkungen angepasst werden müssen |

Lass Beeuni einen Bericht erstellen, der geänderte Vorhersagen mit den Quelldatensätzen und den Laufeinstellungen verknüpft. Wenn du den Datensatz nach der Prüfung dieser Fehler überarbeitest, verwende für die endgültige Entscheidung einen separaten Testsatz. Wiederholtes Abstimmen anhand derselben Beispiele kann die Auswertung besser aussehen lassen, ohne die Leistung bei neuen Anfragen zu verbessern.

Bewahre die ausgewählten Gewichte oder den Adapter zusammen mit den Ladeanweisungen, Umgebungsdetails und dem Evaluierungsbericht auf. Teste, ob sich das Ergebnis in einem neuen Prozess laden lässt. Du kannst es bereitstellen, sobald du den Vergleich akzeptierst. Bis dahin kann das vorhandene Modell deine Anwendung weiter bedienen, während das Experiment getrennt bleibt.
