Die großen Vorteile moderner Transformer-Modelle #
Die drei wichtigsten Vorteile aktueller LLMs mit Transformer-Architektur:
- Parallele Verarbeitung: Alle Tokens werden gleichzeitig verarbeitet – nicht Schritt für Schritt.
- Besseres Textverständnis: Das Modell erkennt komplexe semantische Zusammenhänge.
- Langer Kontext: Transformer können tausende Tokens gleichzeitig betrachten
Diese Fortschritte ermöglichen Einsatzbereiche, die noch vor wenigen vollkommen Jahren undenkbar waren.
Wie viel Text versteht ein Sprachmodell wirklich? #
Die Länge des sogenannten Kontextfensters ist ein zentraler Aspekt moderner Sprachmodelle. Ein LLM analysiert alle Tokens im Kontextfenster gleichzeitig und setzt sie miteinander in Beziehung. So kann es den ganzen Text „verstehen“.
Je größer dieses Fenster, desto mehr Text kann das Modell auf einmal erfassen – also nicht nur einzelne Wörter und Sätze, sondern sogar ganze Abschnitte oder Kapitel.
Die Größe des Kontextfensters bestimmt maßgeblich das Einsatzgebiet eines Sprachmodells – und ist deshalb ein entscheidender Wettbewerbsfaktor bei der Entwicklung leistungsfähiger LLMs.
In den letzten Jahren hat sich die maximale Kontextlänge massiv erhöht:
Modell | Kontextfenster (Tokens) | Ca. Seiten | Jahr | Anbieter |
---|---|---|---|---|
GPT-1 | 512 | < 1 | 2018 | OpenAI |
GPT-2 | 1.024 | ~1,5 | 2019 | OpenAI |
GPT-3 | 2.048 | ~3 | 2020 | OpenAI |
GPT-3.5 | 4.096 | ~5–6 | 2022 | OpenAI |
GPT-3.5 Turbo | bis 16.384 | ~20–25 | 2023 | OpenAI |
GPT-4 | 8.192 / 32.768 | ~10 / ~40 | 2023 | OpenAI |
GPT-4 Turbo | 128.000 | ~160 | 2023 | OpenAI |
Claude 1 | ~9.000 (geschätzt) | ~12 | 2023 | Anthropic |
Claude 2 | 100.000 | ~130 | 2023 | Anthropic |
Claude 3 | 200.000 | ~260 | 2024 | Anthropic |
Gemini 1.5 | 1.000.000 | ~1.300+ | 2024 | Google DeepMind |
LLaMA 2 | 4.096 | ~5–6 | 2023 | Meta |
LLaMA 3 | 8.192 – 32.000 | ~10–40 | 2024 | Meta |
Mistral 7B | 8.192 | ~10 | 2023 | Mistral.ai |
Mixtral (MoE) | 32.768 | ~40 | 2023 | Mistral.ai |
Command R+ | 128.000 | ~160 | 2024 | Cohere |
In der Tabelle erkennt man deutlich: Einige Modelle haben das Kontextfenster beinahe explosionsartig erweitert. Diese Vergrößerung wird jedoch häufig durch technische Workarounds oder Speichertricks erreicht – denn tatsächlich liegt die effektiv nutzbare Kontexttiefe bei den meisten Modellen weiterhin im Bereich von einigen Tausend Tokens.
Aber - wo befindet sich nun welches Token? #
Die parallele Verarbeitung bringt ein Problem mit sich, das serielle Modelle wie RNNs nicht kennen:
Die Reihenfolge der Tokens im Kontext.
Beispiel:
- Der Hund biss den Briefträger.
- Der Briefträger biss den Hund.
Beide Sätze enthalten genau die gleichen Wörter – aber die Reihenfolge der Wörter verändert die Bedeutung vollkommen.
Transformer müssen also wissen: An welcher Position steht jedes Token?
Dieses Problem war auch Vaswani und seinem Team bewusst:
Ein Transformer verarbeitet alle Tokens gleichzeitig – kennt dabei aber nicht die Reihenfolge, in der sie im Satz standen.
Daher musste eine Methode gefunden werden, dem Modell Positionsinformationen mitzugeben:
Es muss wissen, an welcher Stelle im Satz sich ein Token ursprünglich befand.
Positional Encoding #
Dazu wird jedem Token eine Positionsangabe hinzugefügt.
Das kann entweder statisch erfolgen – über eine feste Zahl für jede Position –
oder das Modell lernt selbst, wie es sich die Position merken kann – mithilfe einer internen Tabelle.
Doch das Problem ist jedoch etwas komplexer, als es erstmals klingt:
Es genügt nicht, dem Token einfach eine Zahl mitzugeben – wie z.B. Position 1, 2, 3 …
denn die Position muss sich auch in den Embeddings widerspiegeln, also in den einzelnen Merkmalsdimensionen, die das Modell intern verarbeitet.
Nur so kann das Modell lernen, wie sich semantische Beziehungen ändern, wenn die Tokens an unterschiedlichen Positionen im Satz stehen.
Vaswani wählte dafür eine sehr elegante Lösung: Das sogenannte Sinusoidal Position Encoding – auch als „Vaswani-Methode“ bekannt.
„Vaswani-Methode“ #
Die Idee:
Jede Position im Satz wird mithilfe von Sinus- und Kosinus-Funktionen in unterschiedliche Werte umgewandelt – separat für jede Dimension im Embedding.
So entsteht ein einzigartiges Wellenmuster, das die Position codiert – mathematisch unterscheidbar für jedes Token und jede Dimension im Embedding.
$$ PE_{(pos, i)} = \begin{cases} \sin\left(\frac{pos}{10000^{\frac{2i}{d}}}\right), & \text{für gerade } i \\ \cos\left(\frac{pos}{10000^{\frac{2i}{d}}}\right), & \text{für ungerade } i \end{cases} $$ wobei:
- ( pos ): Position im Satz
- ( i ): Index der Dimension
- ( d ): Dimension des Embeddings
Die exakte Formel ist weniger entscheidend – wichtig ist: Man kann erkennen, dass die Positionskodierung je nach Position im Satz und Embedding-Dimension variiert. Dabei wechseln sich Sinus- und Kosinus Funktionen ab und beginnen mit versetzten Phasen – so entsteht für jede Position ein eindeutiges, unterscheidbares Wellenmuster.
Die folgende interaktive Grafik zeigt die Positionskodierung im Detail – du kannst sie selbst steuern und erkunden.
Das Positions-Encoding wird einfach zum Vektor des Tokens addiert – also zu jedem einzelnen Embedding. Dadurch verschiebt sich die Lage des Tokens im Merkmalsraum leicht, sodass das LLM erkennen kann, an welcher Stelle im Satz das Token ursprünglich stand.
Moderne Methoden wie RoPE #
Neuere Modelle verwenden eine verfeinerte Form der Positionskodierung – etwa RoPE (Rotary Positional Encoding).
Dabei wird nicht das Token selbst im Merkmalsraum verschoben, sondern die Art der Betrachtung des Tokens leicht gedreht.
RoPE ist eine relative, aber fest definierte Positionskodierung – sie integriert die Abstände zwischen Tokens direkt in die Berechnung, statt absolute Positionen zu kodieren.
Das zugrunde liegende Prinzip bleibt jedoch gleich:
Die Positions-Information muss dem Modell mitgegeben werden – sonst kann es die Reihenfolge der Tokens nicht erfassen.
© 2025 Oskar Kohler. Alle Rechte vorbehalten. Hinweis: Der Text wurde manuell vom Autor verfasst. Stilistische Optimierungen, Übersetzungen sowie einzelne Tabellen, Diagramme und Abbildungen wurden mit Unterstützung von KI-Tools vorgenommen.