Was es ist
Echte Chat-Protokolle sind unstrukturiert. Neben den Antworten, die das Modell übernehmen soll, enthalten sie Fehlermeldungen, Ablehnungen durch eine Sicherheitsebene, Markup, das nur die Chat-Oberfläche versteht, Antworten, die lediglich besagen, dass eine Datei fertig ist, und dieselbe Konversation, die zweimal gespeichert wurde. Cleaning ist der erste Schritt der Datenaufbereitung: Es entfernt oder repariert diese Datensätze, bevor sie in eine Trainingsdatei umgewandelt werden.
Dies ist wichtig, da das Fine-Tuning kein Konzept für ein „schlechtes Beispiel“ kennt. Jede Zielantwort, die in die Trainingsdatei gelangt, wird als richtige Antwort behandelt, und das Modell wird darauf trainiert, diese wahrscheinlicher zu machen. Eine Fehlermeldung, die zehnmal als Ziel verwendet wird, bringt dem Modell bei, dass Fehlermeldungen eine normale Antwort sind.
Wie es funktioniert
Jeder Schritt sucht nach einem bestimmten Muster und hat einen Grund, der in der Funktionsweise des Trainings liegt. Einige Schritte entfernen eine Zielantwort (sie bleibt als Kontext lesbar, wird aber nicht gewertet); andere entfernen einen gesamten Datensatz oder schreiben dessen Struktur um.
| Schritt | Was er erfasst | Warum es dem Training schaden würde |
|---|---|---|
| UI-Markup | Tags, die die Chat-Oberfläche verwendet, um Schaltflächen, einklappbare Bereiche und Ähnliches darzustellen | Ein Modell, das außerhalb dieser Oberfläche verwendet wird, würde unformatierte Tags in seinen Antworten ausgeben |
| Fehlerantworten | „Fehler bei der Verarbeitung der Anfrage…“ und ähnliche Systemausfälle | Das Modell würde lernen, absichtlich fehlzuschlagen |
| Guardrail-Blockaden | Ablehnungen, die von einer Sicherheits-Ebene der Plattform eingefügt und nicht vom Modell geschrieben wurden | Lehrt Ablehnungen für Fragen, die eigentlich problemlos beantwortet werden könnten |
| Dateiankündigungen | Kurze Antworten, deren eigentliche Ausgabe eine generierte Datei war, z. B. „Ihre Präsentation ist fertig“ | Die Datei ist nicht im Text enthalten, sodass das Modell lernt, Arbeit zu behaupten, die es nicht geleistet hat |
| Struktur | Eine Konversation, die mit dem Assistenten beginnt; zwei aufeinanderfolgende Nachrichten von derselben Rolle | Trainingsformate erfordern abwechselnde Züge von Benutzer und Assistent, beginnend mit dem Benutzer |
| Duplikate | Dieselbe Konversation mit derselben Antwort, die zweimal gespeichert oder importiert wurde | Zählt ein Beispiel doppelt: mehr Gewichtung, mehr Memorisation, keine neuen Informationen |
| Wiederholte Antworten | Eine identische Antwort, die viele Male als Ziel verwendet wird, wie z. B. eine Begrüßung oder ein vorgefertigter Haftungsausschluss | Einige wenige Standardphrasen würden dominieren und das Modell würde überall darauf zurückgreifen |
Duplikate verdienen besondere Aufmerksamkeit. Untersuchungen an großen Trainingsdatensätzen haben gezeigt, dass wiederholter Text ein Haupttreiber für Memorisation ist: Lee et al. (2021) zeigten, dass die Deduplizierung von Trainingsdaten dazu führte, dass Modelle auswendig gelernten Text zehnmal seltener ausgaben, und Carlini et al. (2022) fanden heraus, dass die Häufigkeit der Duplizierung einer Sequenz einer der stärksten Indikatoren dafür ist, ob ein Modell sie Wort für Wort wiederholt. Ein Fine-Tuning-Datensatz ist weitaus kleiner, sodass eine einzige Konversation, die fünfmal wiederholt wird, einen großen Teil dessen ausmacht, was das Modell sieht.
Der Schritt für limitierte wiederholte Antworten ist sanfter als die Deduplizierung. Eine kurze, identische Antwort wie „Gern geschehen — noch etwas?“ kann völlig in Ordnung sein. Daher wird sie bis zu einem bestimmten Limit beibehalten und nur die überschüssigen Kopien dienen nicht mehr als Ziel. Das Modell lernt die Phrase trotzdem, ohne zu lernen, sie auf alles zu antworten.
- Ein Support-Team wählt 1.000 Konversationen aus, die 1.850 als Ziele markierte Antworten des Assistenten enthalten.
- 38 Ziele sind Fehlermeldungen aus einer Woche mit Dienstausfällen und 12 sind Ablehnungen durch Sicherheitsrichtlinien. Alle 50 sind nicht länger Ziele.
- 27 Ziele sind „Ihr Bericht ist fertig“-Nachrichten, deren eigentliche Ausgabe ein PDF war. Entfernt: Der Text allein kann dem Modell nicht beibringen, ein PDF zu erstellen.
- 64 Ziele befinden sich in Konversationen, die doppelt importiert wurden. Jeweils eine Kopie wird behalten.
- Die Schlussformel „Kann ich Ihnen sonst noch behilflich sein?“ taucht 71 Mal als Ziel auf. Bei einer Obergrenze von beispielsweise 30 sind 41 Kopien nicht länger Ziele.
- 1.668 Ziele verbleiben, etwa 90 %. Das Training kostet etwas weniger, und die 10 % entfernten Antworten waren diejenigen, die das Modell am ehesten verschlechtert hätten.
Wann es wichtig ist
- Immer bei Protokollen aus einem Live-Produkt. Ausfälle, Sicherheitsebenen und Interface-Funktionen hinterlassen Spuren, die wie Antworten aussehen.
- Besonders bei kleinen Datensätzen. Bei 200 Zielen machen zehn schlechte bereits 5 % des Signals aus; bei 20.000 sind sie lediglich Rauschen.
- Importierte Chats. Exporte aus anderen Tools enthalten oft wiederholte oder sich teilweise überschneidende Konversationen.
- Wenn das Modell außerhalb des Chat-Interfaces ausgeführt wird. In diesem Fall muss das UI-Markup entfernt werden; behalten Sie es nur, wenn das Modell in demselben Interface verwendet wird, das es auch rendert.
Standardmäßig deaktiviert. Aktivieren Sie dies nur, wenn das trainierte Modell innerhalb derselben Chat-Oberfläche antwortet, die diese Tags versteht, und Sie möchten, dass es weiterhin Schaltflächen und einklappbare Bereiche produziert.
Häufige Fehler
- Die Annahme, dass ein großer Datensatz eine Bereinigung überflüssig macht: Duplikate und vorgefertigte Antworten wachsen mit dem Datensatz.
- Mit Antworten wie „Ihre Datei ist fertig“ trainieren und sich dann wundern, warum das Modell behauptet, Dateien erstellt zu haben, die es nie produziert hat.
- Interface-Markup für ein Modell beibehalten, das in einem anderen Produkt ausgeführt wird, wo die Tags als reiner Text angezeigt werden.
- Symptome bei jeder Vorbereitung statt an der Quelle beheben: Wenn viele Antworten Fehler oder Ablehnungen sind, erfordern die zugrunde liegenden Chats oder der Produktablauf Aufmerksamkeit.
- Nach Nachricht statt nach Konversation deduplizieren, was dazu führen kann, dass eine Antwort ohne die erklärende Frage übrig bleibt.
Quellen und weiterführende Literatur
Externe Quellen werden in einem neuen Tab geöffnet.
- 01Deduplicating Training Data Makes Language Models BetterLee et al., 2021 · arXiv · arxiv.orgZeigt, wie viel wiederholter Text in echten Datensätzen vorhanden ist und wie dessen Entfernung die Memorisation reduziert.
- 02Quantifying Memorization Across Neural Language ModelsCarlini et al., 2022 · arXiv · arxiv.orgDie Memorisation nimmt mit der Modellgröße, der Häufigkeit der Duplizierung eines Beispiels und der Prompt-Länge zu.
- 03LIMA: Less Is More for AlignmentZhou et al., 2023 · arXiv · arxiv.org1.000 sorgfältig kuratierte Beispiele reichten für starke Ergebnisse aus: Qualität vor Quantität.
- 04Supervised fine-tuningOpenAI API docs · developers.openai.comDie Sicht eines Anbieters darauf, was ein Trainingsbeispiel enthalten sollte.