Ressourcen/Modelltraining/Von Chats zu Trainingsbeispielen

Konzept

Nachrichtenrollen

Wie eine Unterhaltung als System-, User- und Assistant-Nachrichten gespeichert wird und wie diese Rollen zu dem einzigen Token-Strom werden, den ein Modell tatsächlich liest.

Kapitel 33 Min. Lesezeit4 Quellen

Die drei Rollen

Ein Chat wird als Liste von Nachrichten gespeichert, und jede Nachricht hat eine Rolle, die angibt, von wem sie stammt:

  • system — dauerhafte Anweisungen, die den Rahmen für die gesamte Unterhaltung bilden: wer der Assistent ist, was er tun und lassen soll. Geschrieben von der Person, die das Modell bereitstellt, und nicht von jemandem im Chat gesagt.
  • user — was die Person gefragt oder gesagt hat.
  • assistant — was das Modell geantwortet hat.

Einige Anbieter verwenden andere Namen für dasselbe Konzept — model statt assistant, ein separates Feld für Systemanweisungen oder developer für Anweisungen — und einige fügen eine tool-Rolle für Ergebnisse hinzu, die von durch das Modell aufgerufenen Funktionen zurückgegeben werden. Die Struktur bleibt dieselbe.

Was das Modell tatsächlich liest

Ein Modell liest eine flache Sequenz von Tokens, keine Liste von Objekten. Ein Chat-Template wandelt die Nachrichten in diese Sequenz um und fügt spezielle Tokens ein, die markieren, wo jeder Zug beginnt und endet und wer an der Reihe ist. Das Modell hat diese Markierungen während des Instruction-Tunings gelernt. Daran erkennt es, dass der Nutzer fertig ist, dass es an der Reihe ist zu sprechen und wann es aufhören muss.

Nachrichten, wie gespeichert
systemSie sind der Support-Assistent.
userWie setze ich mein Passwort zurück?
assistantÖffnen Sie Einstellungen → Sicherheit und wählen Sie Passwort zurücksetzen.
Was das Modell liest
<|im_start|>system
You are the support assistant.<|im_end|>
<|im_start|>user
How do I reset my password?<|im_end|>
<|im_start|>assistant
Open Settings → Security and choose
Reset password.<|im_end|>
Links: die gespeicherten Nachrichten. Rechts: derselbe Chat nach der Chat-Vorlage des Modells, hier eine Vorlage im ChatML-Stil, die von einigen offenen Modellfamilien verwendet wird. Spezielle Markierungen teilen dem Modell mit, wer an der Reihe ist und wo jede Runde endet.

Jede Modellfamilie hat ihr eigenes Template. Die Verwendung eines falschen oder gar keines Templates erzeugt Eingaben, die das Modell in dieser Form noch nie gesehen hat, wodurch die Qualität stark abfällt. Gehostete Trainingsdienste wenden das richtige Template für Sie an; für offene Modelle speichern Bibliotheken wie Hugging Face Transformers dieses zusammen mit dem Tokenizer.

Wie Rollen das Training prägen

Beim überwachten Fine-Tuning entscheiden die Rollen, was gelernt wird. Das Modell wird darauf trainiert, assistant-Nachrichten zu generieren; system- und user-Nachrichten sind Kontext, den es liest, aber nicht zu schreiben lernt. Deshalb bringt ein Datensatz von Chats dem Modell bei, wie Ihr Assistent zu antworten, anstatt Fragen wie Ihre Nutzer zu stellen.

Rollen erklären auch, warum der System-Prompt so wichtig ist. Ein Modell, das mit einer bestimmten Systemnachricht feingetunt wurde, lernt sein Verhalten in Anwesenheit dieser Nachricht und verhält sich am ehesten wie das trainierte Modell, wenn es zur Laufzeit dieselben Anweisungen erhält.

Ein Chat, drei Rollen
  1. system: „Sie sind der Support-Assistent für ein Rechnungsprodukt. Antworten Sie in kurzen, nummerierten Schritten.“
  2. user: „Wie füge ich einer Rechnung eine USt-IdNr. hinzu?“
  3. assistant: „1. Öffnen Sie Einstellungen → Unternehmen. 2. Geben Sie die USt-IdNr. ein. 3. Speichern — sie erscheint nun auf neuen Rechnungen.“
  4. Beim Training dienen die ersten beiden Nachrichten als Kontext. Die dritte ist das, was das Modell lernt, basierend auf diesem Kontext zu schreiben.

Regeln, die die meisten Trainingsformate vorschreiben

  • Die Züge wechseln sich zwischen Nutzer und Assistent ab.
  • Nach einer etwaigen Systemnachricht beginnt die Unterhaltung mit dem Nutzer.
  • Es gibt normalerweise eine Systemnachricht, ganz am Anfang.
  • Ein Datensatz endet mit einer Assistant-Nachricht, wenn er etwas vermitteln soll.

Häufige Fehler

  • Anweisungen während des Trainings in einer User-Nachricht, zur Laufzeit jedoch im System-Prompt zu platzieren, oder umgekehrt.
  • Mit einem System-Prompt zu trainieren und mit einem anderen bereitzustellen.
  • Die Eingabe eines offenen Modells manuell zu formatieren, anstatt dessen Chat-Template zu verwenden.
  • Aufeinanderfolgende Nachrichten derselben Rolle beizubehalten, was die meisten Formate ablehnen.

Quellen und weiterführende Literatur

Externe Quellen werden in einem neuen Tab geöffnet.

  1. 01Chat templatesHugging Face Transformers docs · huggingface.coWie Nachrichten in die Eingabe eines Modells umgewandelt werden, mit echten Templates.
  2. 02Chat TemplatesHugging Face LLM Course · huggingface.coEin Kurskapitel über Rollen und Templates beim Fine-Tuning.
  3. 03Model Spec (2025/12/18)OpenAI · model-spec.openai.comWie ein Anbieter Anweisungen aus System-, Developer- und User-Nachrichten priorisiert.
  4. 04Training language models to follow instructions with human feedbackOuyang et al., 2022 · arXiv · arxiv.orgWoher das Verhalten des Befolgens von Anweisungen und des Abwechselns der Züge stammt.

Verwandeln Sie wochenlange Expertenarbeit in Minuten

Erfahren Sie, wie Scalata zu Ihrem Team, Ihren Daten und Ihren Kontrollen passt.

Vertrieb kontaktieren