Ein Prompt (deutsch etwa „Aufforderung“, danach nur noch Prompt) ist alles, was ein Sprachmodell als Eingabe bekommt. Die Qualität der Antwort hängt stark davon ab, wie gut diese Eingabe ist. Diese Lektion zeigt, woraus ein guter Prompt besteht, und übt es an Aufgaben der erfundenen Nordlicht Reisen GmbH. Zum Ausprobieren dient der Playground aus Lektion 2.1. Die Lektion ist reine Textarbeit und braucht keinen Zugang zu Azure.

Die Antworten eines Modells sind in dieser Lektion nicht abgedruckt. Sie wären erfunden. Was ein Modell auf einen Prompt antwortet, probieren Sie selbst aus; hier lernen Sie, wie Sie fragen.

Rollen in einer Unterhaltung

Chat-Modelle bekommen laut Learn eine Reihe von Nachrichten mit Rollen:

  • system: Anweisungen für die ganze Unterhaltung. Die Systemnachricht steht normalerweise ganz am Anfang und ist laut Learn die oberste Ebene der Anweisungen. Man sagt auch System-Prompt.
  • user: das, was die Nutzerin oder der Nutzer schreibt (der Nutzer-Prompt).
  • assistant: das, was das Modell bisher geantwortet hat. Man kann auch eigene Beispiele als Assistenten-Nachrichten einfügen (siehe Few-Shot unten).

Die Aufteilung hat einen Sinn: Der System-Prompt legt fest, wie sich das Modell immer verhält. Der Nutzer-Prompt enthält, was jetzt zu tun ist. Wie das in C# aussieht, zeigt der KI-Track (T2.1, „Der IChatClient“); die Prompts selbst vertieft er in T3.1 („System-Prompts“) und T3.2 („Beispiele im Prompt“). Hier bleibt es bei den Grundlagen.

Was ein System-Prompt leisten kann

Nach Learn dient eine Systemnachricht dazu,

  1. die Rolle und die Grenzen des Assistenten festzulegen,
  2. Ton und Sprachstil zu bestimmen,
  3. das Ausgabeformat zu nennen, zum Beispiel JSON,
  4. Sicherheits- und Qualitätsregeln für den Einsatz zu setzen.

Sie kann ein einziger Satz sein oder viele Zeilen mit Regeln. Learn gibt drei Hinweise: Anweisungen eindeutig halten, widersprüchliche Regeln vermeiden und das Verhalten für den Notfall ausdrücklich nennen, also was der Assistent tut, wenn ihm Informationen fehlen oder die Frage nicht zum Auftrag gehört.

Und eine Warnung: Eine Systemnachricht beeinflusst das Modell, garantiert aber keine Befolgung. Sie müssen testen, nachbessern und weitere Schutzmaßnahmen darum legen, etwa Filter und Auswertung. Das ist derselbe Gedanke wie in Lektion 1.1: Eine Regel im Prompt ersetzt nie die Prüfung durch Menschen.

Beispiel: System-Prompt für reise-chat

Nordlicht will, dass das Modell hinter reise-chat Kundenanfragen vorbereitet. Ein möglicher System-Prompt (ein Beispiel, kein Muster zum Abschreiben):

Sie sind ein Assistent im Kundendienst der Nordlicht Reisen GmbH.
Aufgabe: Fragen zu Reisen, Hotels und Buchungsabläufen sachlich beantworten.
Sprache: Antworten Sie in der Sprache der Anfrage (Deutsch oder Englisch).
Ton: freundlich, kurz, ohne Fachwörter.
Grenzen: Sie entscheiden nie über Erstattungen, Kündigungen oder Vertragsfragen.
Bei solchen Fragen schreiben Sie: "Das klärt eine Beraterin oder ein Berater."
Ausweg: Wenn Ihnen Informationen fehlen, sagen Sie das und erfinden Sie nichts.

Jede Zeile folgt Learns Liste: Rolle, Aufgabe, Ton, Grenze, Ausweg. Die Grenze deckt sich mit den Grenzen des Piloten: Kein Modell entscheidet über Erstattungen, Kündigungen oder Vertragsfragen. Der Prompt setzt diese Grenze nicht durch, er bittet das Modell, sie einzuhalten. Dass ein Mensch jede Antwort prüft, bevor sie an Kunden geht, bleibt trotzdem so (Lektionen 1.1 und 2.4).

Handwerk für den Nutzer-Prompt

Die folgenden Techniken stammen aus Learns Seite „Prompt engineering techniques“. Learn nennt sie ausdrücklich Techniken zum Ausprobieren, nicht Garantien.

Klare Anweisung zuerst

Sagen Sie am Anfang, was das Modell tun soll, und erst danach den Kontext oder die Beispiele. Learn nennt das generell empfehlenswert, merkt aber an, dass die getesteten Chat-Modelle in einem Beispiel keinen Unterschied zeigten. Prüfen Sie es also an Ihrem Fall.

Kontext sauber abtrennen

Mit klarer Syntax, etwa Trennzeichen wie --- und Überschriften in Großbuchstaben, zeigen Sie, wo ein Teil des Prompts endet und der nächste beginnt. Learn rät bei Unsicherheit zu Markdown oder XML, weil Modelle viele Webseiten in diesen Formaten gesehen haben.

Beispiel (Anweisung und Daten getrennt):

Fasse die Bewertung in einem Satz zusammen.
---BEWERTUNG
Das Hotel war sauber, aber das Frühstück kam erst nach einer Stunde.
---ZUSAMMENFASSUNG

Die Bewertung ist erfunden, wie alle Beispieldaten des Kurses (die Dateien bewertung-1.txt bis bewertung-3.txt folgen in Lektion 2.6).

Ausgabeformat vorgeben

Wer die Struktur der Antwort nennt, bekommt Antworten, die sich leichter weiterverarbeiten lassen. Learn zeigt dafür ein JSON-Muster im Prompt. Ein Hinweis zur Verlässlichkeit: Learn schreibt, dass Sätze wie „erfinde nichts“ allein nicht immer genügen. Hilfreicher kann es sein, Belege zu verlangen, denn Modelle müssen dann zwei Fehler machen, wenn sie etwas erfinden: die falsche Aussage und den falschen Beleg.

Beispiele mitgeben (Few-Shot)

Ohne Beispiele spricht man von Zero-Shot. Mit Few-Shot legen Sie einen oder mehrere Eingabe-Ausgabe-Paare in den Prompt. Das Modell lernt dadurch nichts dauerhaft, die Beispiele stimmen es nur für diese eine Anfrage besser ein. Im Chat gibt man sie laut Learn als Paare aus Nutzer- und Assistenten-Nachricht nach der Systemnachricht mit.

Nordlicht sortiert Kundenbewertungen nach Thema. Zwei erfundene Beispielpaare:

Bewertung: "Zimmer war laut, Personal aber sehr nett."
Thema: Lärm

Bewertung: "Der Transfer vom Flughafen kam sehr spät."
Thema: Transfer

Bewertung: "Frühstück war kalt und der Kaffee leer."
Thema:

Der letzte Block endet mit dem Anfang der Antwort. Learn nennt das einen Cue: ein Hinweis am Ende, der die Form der Antwort vorbereitet.

Wiederholen, was wichtig ist

Modelle können laut Learn dem Ende eines Prompts mehr Gewicht geben (Recency Bias). Es kann sich lohnen, die wichtigste Anweisung am Ende zu wiederholen. Auch das gilt: ausprobieren.

Im Playground verbessern

Im Playground (Lektion 2.1) tragen Sie den System-Prompt in das dafür vorgesehene Feld ein und stellen die Nutzer-Prompts im Chat. Gehen Sie in kleinen Schritten vor:

  1. Mit dem einfachsten Prompt beginnen.
  2. Eine Änderung machen (Rolle, Format, Beispiel).
  3. Denselben Nutzer-Prompt erneut senden und vergleichen.
  4. Mit Compare zwei oder drei Modelle oder Fassungen nebeneinander ansehen (bis zu drei, Learn).

So sehen Sie, welche Änderung etwas bringt. Learn nennt als typische Fragen für den Playground: Welcher System-Prompt-Aufbau liefert die beste Qualität? Wie wirken Beispiele auf die Zuverlässigkeit? Wie wirken temperature, top_p und max_tokens?

Merktabelle

Technik Wirkung Beispiel bei Nordlicht
Rolle und Grenzen im System-Prompt gleichbleibendes Verhalten keine Entscheidung über Erstattungen
Ton und Sprache nennen passende Antworten Sprache der Kundschaft
Ausweg nennen weniger Erfundenes „Wenn Informationen fehlen, sage das“
Trennzeichen Anweisung und Daten bleiben getrennt ---BEWERTUNG
Ausgabeformat maschinenlesbare Antwort JSON mit festen Feldern
Few-Shot Modell erkennt das Muster zwei Beispielbewertungen mit Thema

Übung 1

Eine Beraterin schreibt in den Playground: „Schreib was zu der Mail von Herrn Lund.“ Die Antwort ist zu lang, im falschen Ton und nicht zu gebrauchen. Verbessern Sie den Prompt in drei Schritten und ordnen Sie jedem Schritt eine Technik aus der Merktabelle zu:

  1. Was soll das Modell dauerhaft tun und lassen?
  2. Wie soll die Antwort aussehen?
  3. Wie trennen Sie die Mail von der Aufgabe?

Lösung 1

Eine mögliche Lösung (ein Beispiel, nicht gemessen):

  1. System-Prompt mit Rolle, Ton und Grenze: „Sie bereiten Antwortentwürfe für den Kundendienst der Nordlicht Reisen GmbH vor, freundlich und kurz. Sie entscheiden nie über Erstattungen.“
  2. Ausgabeformat: „Schreibe höchstens fünf Sätze und beginne mit einer Anrede.“
  3. Trennzeichen: Die Mail steht zwischen ---MAIL und ---ENDE, die Aufgabe steht davor: „Schreibe einen Antwortentwurf auf die Mail.“

Andere Wörter sind genauso gut. Entscheidend ist, dass jede Änderung ein Problem beseitigt und dass ein Mensch den Entwurf liest, bevor er rausgeht.

Weiterlesen