Vom Prompt zur Antwort
Wissen
Im Einsteiger-Pfad hast du Analogien kennengelernt: der Konferenzraum für Attention, der Schreibtisch für das Context Window. Analogien sind gute Einstiegshilfen, aber sie verschweigen, was tatsächlich passiert. Hier siehst du den echten Weg.
Jedes Token deines Prompts durchläuft dieselben fünf Stationen. Das Modell wiederholt diesen Weg für jedes einzelne Token, das es ausgibt — ein Satz mit 40 Tokens bedeutet 40 vollständige Durchläufe.
iWarum GPT-2 als Beispiel?
Die Zahlen oben stammen von GPT-2 small — einem Modell von 2019 mit 124 Millionen Parametern. Es ist klein genug, um es vollständig zu durchschauen, und architektonisch identisch mit den heutigen Modellen: Die Modelle von 2026 haben mehr Blöcke, mehr Heads und breitere Vektoren, aber denselben Aufbau. Wer GPT-2 verstanden hat, versteht den Rest.
Verstehen
Query, Key, Value — die drei Rollen jedes Tokens
Attention klingt mystisch, ist aber eine Suchoperation. Aus jedem Token-Vektor leitet das Modell über drei gelernte Matrizen drei verschiedene Versionen desselben Tokens ab:
- Query (Frage): "Was suche ich gerade?"
- Key (Steckbrief): "Wonach kann man mich finden?"
- Value (Inhalt): "Das gebe ich weiter, wenn man mich gefunden hat."
Der Ablauf ist dann simpel: Die Query eines Tokens wird mit den Keys aller Tokens davor verrechnet (Skalarprodukt). Hohe Übereinstimmung heißt hoher Score. Die Scores werden durch die Wurzel der Dimension geteilt — das hält die Zahlen in einem Bereich, in dem Softmax nicht in die Extreme kippt — und dann durch Softmax in Gewichte verwandelt, die zusammen 1 ergeben. Das Ergebnis ist eine gewichtete Summe der Values.
Das Entscheidende daran: Diese Gewichte sind nicht gelernt. Gelernt sind nur die drei Matrizen, die Query, Key und Value erzeugen. Die Gewichte selbst berechnet das Modell bei jedem Durchlauf neu — abhängig davon, was tatsächlich im Text steht.
Multi-Head: mehrere Blickwinkel gleichzeitig
Ein einzelner Satz aus Query, Key und Value könnte nur eine Art von Beziehung abbilden. Deshalb macht das Modell dasselbe mehrfach parallel: GPT-2 small nutzt 12 Heads mit je 64 Dimensionen. Jeder Head hat eigene Matrizen und lernt dadurch, auf etwas anderes zu achten — Bezüge, Nachbarschaft, Satzbau. Am Ende werden die Ergebnisse wieder zu 768 Dimensionen zusammengesetzt.
Schalte im Folgenden zwischen den Heads um und vergleiche, wie unterschiedlich sich dieselbe Aufmerksamkeit verteilt:
*Was in echten Modellen passiert
Die Arbeitsteilung der Heads ist kein theoretisches Konstrukt — in echten Modellen lassen sich Heads finden, die fast ausschließlich auf das jeweils vorherige Token achten, und andere, die Pronomen zuverlässig ihrem Bezugswort zuordnen. Gleichzeitig ist längst nicht jeder Head so sauber interpretierbar. Die Darstellung hier ist idealisiert, damit das Prinzip sichtbar wird.
Causal Masking — und warum Inferenz langsam ist
Bevor Softmax läuft, werden alle Scores zu Tokens rechts vom aktuellen auf minus unendlich gesetzt. Nach dem Softmax sind sie exakt null. Das ist die Causal Mask.
Sie hat eine praktische Konsequenz, die du im Alltag spürst:
- Beim Training kann das Modell alle Positionen eines Textes gleichzeitig verarbeiten — die Maske sorgt dafür, dass keine Position spickt. Deshalb lässt sich Training massiv parallelisieren.
- Bei der Inferenz geht das nicht. Jedes neue Token hängt vom vorherigen ab. Deshalb kommt die Antwort Token für Token — und deshalb dauert ein langer Text linear länger.
iKV-Cache
Ohne Trick müsste das Modell für jedes neue Token die Keys und Values aller vorherigen Tokens neu berechnen. Genau das wird zwischengespeichert — der KV-Cache. Er ist der Grund, warum der erste Token einer Antwort spürbar länger dauert als die folgenden, und warum großer Kontext vor allem Speicher kostet. Mehr dazu in der Section "Kontext-Strategien".
Die Rechenlast von Attention wächst quadratisch mit der Länge der Sequenz: doppelt so viele Tokens bedeuten viermal so viele Score-Berechnungen. Das ist der eigentliche Grund, warum sehr große Context Windows technisch anspruchsvoll sind.
Die letzte Zeile entscheidet
Nach dem letzten Block liegt weiterhin eine Matrix mit einer Zeile pro Token vor. Für die Vorhersage zählt davon nur die letzte Zeile: Sie wird auf die Größe des Vokabulars projiziert — 50.257 Zahlen, die Logits. Softmax macht daraus Wahrscheinlichkeiten, und erst danach greifen die Sampling-Parameter:
- Temperature teilt die Logits vor dem Softmax. Kleine Werte spreizen die Verteilung (der Favorit gewinnt fast immer), große Werte glätten sie.
- Top-k behält nur die k wahrscheinlichsten Kandidaten und normiert neu.
- Top-p (Nucleus Sampling) behält so viele Kandidaten, bis ihre Wahrscheinlichkeit zusammen p erreicht. Der Unterschied zu Top-k: Die Anzahl passt sich an. Bei einer eindeutigen Vorhersage bleibt ein Kandidat übrig, bei einer offenen Stelle dutzende.
*Zum Weiterspielen
Der Transformer Explainer des Polo Club (Georgia Tech) lässt ein echtes GPT-2 small direkt im Browser laufen und zeigt dabei alle Zwischenergebnisse — inklusive der tatsächlichen Q/K/V-Matrizen. Die Visualisierungen hier sind bewusst didaktisch vereinfacht; wer die echten Zahlen sehen will, ist dort richtig.
Anwenden
Aus dem Ablauf ergeben sich drei Entscheidungen, die du in der Praxis bewusst treffen kannst:
1. Temperature nach Aufgabe wählen, nicht nach Gefühl. Extraktion, Klassifikation, Code, strukturiertes JSON: Temperature gegen 0. Sobald du eine eindeutige, reproduzierbare Antwort brauchst, ist jede Zufälligkeit ein Risiko.
2. Entweder Temperature oder Top-p variieren — nicht beides gleichzeitig. Beide Parameter greifen an derselben Verteilung an. Wer an beiden dreht, weiß hinterher nicht, welcher Regler die Änderung verursacht hat. Die gängige Empfehlung: Top-p auf 1 lassen und nur die Temperature steuern, oder umgekehrt.
3. Kontextlänge kostet doppelt. Mehr Tokens im Prompt bedeuten mehr Rechenaufwand pro Schritt (quadratisch) und mehr Speicher für den KV-Cache (linear). Ein aufgeräumter Prompt ist nicht nur didaktisch besser, er ist auch schneller und billiger.
Warum kann ein Modell beim Training parallel arbeiten, bei der Antwortgenerierung aber nicht?
Reflektieren
Du baust eine Pipeline, die aus Rechnungen strukturiertes JSON extrahiert. Welche Sampling-Einstellung passt?