Positionskodierung & RoPE
Wie Transformer-LLMs Token-Reihenfolge erkennen, warum RoPE üblich ist und warum langer Kontext trotzdem die Mitte verlieren kann.
RoPE-Phasenorbits: Position wird Rotation
Jedes Token läuft auf einem Phasenrad. Verschiebst du Query und Key gemeinsam, wandern die Planeten, aber die von RoPE verglichene Winkeldistanz bleibt gleich.
Für ausgerichtete Einheitsvektoren: Winkel(qᵢ) − Winkel(kⱼ) = (i − j) × Rotationsschritt
Zwei anfangs ausgerichtete Einheitsvektoren in 2D. Der Hinweis bildet den Kosinus von [−1, 1] auf [0, 100] ab und ist keine Attention-Wahrscheinlichkeit. Echtes RoPE rotiert viele Dimensionspaare mit verschiedenen Frequenzen und inhaltsabhängigen Eingangsvektoren.
Warum Position extra rein muss
Self-Attention sieht Token-Vektoren, aber Reihenfolge ist nicht eingebaut. Ohne Positionssignal kann das Modell nicht direkt unterscheiden, ob “Hund beißt Mann” oder “Mann beißt Hund” gemeint ist.
- Frühe Transformer addierten feste Sinus-/Cosinus-Muster zu Embeddings.
- Gelernte absolute Positionen geben jedem Slot einen eigenen Vektor.
- Beides hilft, aber lange Kontexte generalisieren damit nicht automatisch sauber.
RoPE in modernen LLMs
Rotary Position Embeddings drehen Teile der Query- und Key-Vektoren abhängig von der Position. Beim Attention-Vergleich steckt die relative Entfernung dann in der Rotationsdifferenz.
- RoPE steckt in vielen LLaMA-, Mistral-, Gemma- und Qwen-artigen Modellen.
- Es braucht keinen separaten gelernten Vektor für jede absolute Position.
- Long-Context-Modelle nutzen oft RoPE-Scaling oder Interpolation.
Lost in the middle
Mehr Kontext heißt nicht perfekte Erinnerung. Modelle nutzen Informationen am Anfang und Ende eines Prompts oft zuverlässiger als Informationen in der Mitte.
- Positionskodierung, Attention-Muster, Trainingsmix und Prompt-Struktur spielen zusammen.
- Wichtige Fakten sollten klar platziert und bei Bedarf retrieved oder validiert werden.
Kernaussagen
- Transformer brauchen explizite Positionsinformation; Self-Attention allein kennt keine Reihenfolge.
- RoPE kodiert relative Distanz über Rotationen im Query/Key-Raum.
- Langer Kontext erhöht Kapazität, garantiert aber kein zuverlässiges Erinnern oder Reasoning.