Kontextlänge
Was dieser Artikel über Kontextlänge behandelt
- Was Token und Kontextfenster sind und wie sie zusammenhängen
- Wie viel Text tatsächlich in ein Kontextfenster passt, mit konkreten Zahlen
- Warum der KV-Cache bei langem Kontext so viel Speicher verbraucht
- Welche Kontextlängen gängige lokale Modelle bieten
- Was passiert, wenn Dein Input das Kontextfenster überschreitet
Einleitung: Kontextlänge verständlich erklärt
Sprachmodelle verarbeiten Text nicht als ganze Wörter, sondern als Token. Die Menge an Token, die ein Modell auf einmal erfassen kann, nennt man Kontextlänge oder Kontextfenster. Dieser Wert bestimmt, wie viel Information Du dem Modell in einem einzelnen Durchgang mitgeben kannst. Für RAG, lange Dokumente, Code-Dateien oder ausgedehnte Chat-Verläufe ist das einer der wichtigsten Parameter überhaupt.
Wer lokale KI betreibt, trifft sofort auf diese Grenze. Ein Modell mit 4.000 Token Kontext kann einen langen Vertrag nicht auf einmal lesen. Ein Modell mit 128.000 Token schafft das problemlos, verbraucht dafür aber deutlich mehr Speicher. Dieser Artikel erklärt, was dahinter steckt, wie Du die richtigen Werte abwägst und worauf Du bei der Hardware achten musst.
Warum brauche ich Kontextlänge-Verständnis?
Stell Dir vor, Du willst einen 20-seitigen Vertrag zusammenfassen. Du lädst das Dokument in Dein lokales Modell, schreibst den Prompt und drückst auf Los. Stattdessen einer Zusammenfassung bekommst Du entweder eine Fehlermeldung, eine unvollständige Antwort oder das Modell beginnt mitten im Text und ignoriert den Anfang komplett.
Was ist passiert? Der Vertrag umfasst vielleicht 8.000 Token. Dein Modell hat aber nur ein Kontextfenster von 4.000 Token. Es kann schlicht nicht den gesamten Text auf einmal erfassen. Das Modell nimmt entweder die ersten 4.000 Token und schneidet den Rest ab, oder es bricht mit einem Fehler ab. In beiden Fällen ist das Ergebnis unbrauchbar.
Dieses Szenario ist nicht theoretisch. Es passiert täglich, sobald Du mit echten Dokumenten arbeitest. Ohne Verständnis der Kontextlänge stehst Du vor Rätseln, warum das Modell scheinbar willkürlich Text ignoriert oder abbricht. Mit diesem Wissen erkennst Du das Problem sofort und kannst es lösen, etwa durch Chunking, Zusammenfassung oder die Wahl eines Modells mit grösserem Kontextfenster.
Kontextlänge - In A Nutshell
Die Kontextlänge ist die maximale Anzahl an Token, die ein Modell in einem Schritt verarbeiten kann. Denk an das Kontextfenster wie an die Grösse Deines Schreibtischs. Du kannst nur so viele Dokumente gleichzeitig auf dem Tisch ausbreiten, wie Platz ist. Alles, was nicht aufs Pult passt, musst Du erst zur Seite legen oder zusammenfassen, bevor Du weiterarbeitest.
Ein grösseres Kontextfenster bedeutet mehr Platz auf dem Tisch. Du kannst längere Dokumente, ganze Code-Dateien oder längere Gesprächsverläufe auf einmal einreichen. Der Haken: Je länger der Kontext, desto mehr Speicher braucht das Modell während der Inferenz. Besonders der KV-Cache wächst erheblich und wird auf Consumer-Hardware schnell zum Engpass.
Für wen ist dieses Wissen gedacht?
Dieser Artikel richtet sich an Einsteiger, die lokale KI ausprobieren und verstehen wollen, warum manche Modelle lange Texte verarbeiten und andere nicht. Wenn Du Ollama, LM Studio oder ähnliche Tools nutzt und Dich fragst, warum Dein Modell bei langen Dokumenten streikt, bist Du hier richtig. Du brauchst keine Vorkenntnisse in Mathematik oder Informatik, nur ein grundlegendes Verständnis davon, wie Textverarbeitung mit KI funktioniert.
Wichtige Begriffe rund um Kontextlänge
| Begriff | Bedeutung |
|---|---|
| Token | Kleine Texteinheit, die das Modell verarbeitet, meist ein Wortteil, ein Wort oder ein Zeichen |
| Kontextfenster | Maximale Anzahl an Token, die ein Modell in einem Schritt aufnehmen kann |
| KV-Cache | Zwischenspeicher für bereits verarbeitete Token, beschleunigt das Generieren, wächst mit der Kontextlänge |
| Prompt | Die Eingabe, die Du dem Modell gibst, bestehend aus System Prompt und User-Nachrichten |
| Completion | Die vom Modell erzeugte Antwort |
| System Prompt | Eine Anweisung zu Beginn, die das Verhalten des Modells steuert |
| Context Window | Englischer Begriff für Kontextfenster, oft in Dokumentationen verwendet |
| Tokenizer | Das Werkzeug, das Text in Token zerlegt, modellspezifisch |
Was ist ein Token?
Ein Token ist die kleinste Einheit, die ein Sprachmodell verarbeitet. Ein Token ist nicht gleich ein Wort. Häufig entspricht ein Token einem Wortteil, manchmal auch nur einem einzelnen Zeichen. Der Tokenizer, eine modellspezifische Komponente, zerlegt Deinen Text in diese Einheiten.
Beispiel für die Zerlegung eines englischen Satzes:
"Hallo Welt, wie geht es Dir?"
Der Tokenizer könnte daraus folgende Token machen:
["Hal", "lo", " Welt", ",", " wie", " geht", " es", " Dir", "?"]
Jedes Modell bringt seinen eigenen Tokenizer mit. Ein Token in einem Llama-Modell muss nicht identisch sein mit einem Token in einem Qwen-Modell. Das bedeutet, dass derselbe Text bei verschiedenen Modellen unterschiedliche Token-Zahlen erzeugt.
Besonders relevant wird das bei Deutsch. Englische Modelle sind meist auf englischen Text trainiert, weshalb englische Wörter häufig als einzelne Token kodiert werden. Deutsche Wörter, die im Trainingsmaterial seltener vorkommen, werden in mehrere Token zerlegt.
Ein Vergleich:
| Sprache | Text | Ungefähre Token-Anzahl |
|---|---|---|
| Englisch | ”The quick brown fox jumps over the lazy dog.” | ca. 10 Token |
| Deutsch | ”Der schnelle braune Fuchs springt über den faulen Hund.” | ca. 14 Token |
Für Deutsch solltest Du mit etwa 1,3 bis 1,5 Token pro Wort rechnen. Ein Text mit 1.000 Wörtern entspricht also grob 1.300 bis 1.500 Token. Das ist wichtig, wenn Du abschätzen willst, ob ein Dokument in ein Kontextfenster passt.
Wie funktioniert das Kontextfenster?
Das Kontextfenster ist der gesamte Platz, der für Input und Output zur Verfügung steht. Alles muss hineinpassen: der System Prompt, alle bisherigen User-Nachrichten, alle Antworten des Modells und die neue Completion, die gerade erzeugt wird.
Die Formel ist einfach:
Kontextfenster = System Prompt + User-Nachrichten + Modell-Antworten + neue Completion
Wenn Dein Modell ein Kontextfenster von 8.000 Token hat und Dein System Prompt bereits 500 Token belegt, bleiben noch 7.500 Token für den eigentlichen Dialog. Wenn Du dann ein Dokument mit 6.000 Token einreichst, hat das Modell nur noch 1.500 Token Platz für die Antwort. Bei einem langen Chat-Verlauf kann der Platz schnell knapp werden.
Das bedeutet: Ein grosses Kontextfenster ist nicht nur für den Input wichtig, sondern auch für den Output. Wenn das Modell eine lange Antwort schreiben soll, braucht es dafür freie Token im Fenster. Ist der Input zu lang, bleibt für die Antwort kaum Platz, und das Modell bricht mitten im Satz ab.
KV-Cache erklärt
Der KV-Cache ist einer der wichtigsten, aber am häufigsten missverstandenen Aspekte der Kontextlänge. KV steht für Key und Value, zwei Arten von Zwischenwerten, die das Modell während der Verarbeitung für jeden Token berechnet und speichert.
Warum existiert dieser Cache? Bei der Textgenerierung berechnet das Modell für jeden neuen Token die Attention-Werte über alle bisherigen Token. Ohne Cache müsste es für jeden neuen Token alle vorherigen Token neu berechnen. Das wäre extrem langsam. Der KV-Cache speichert stattdessen die berechneten Werte, damit das Modell sie wiederverwenden kann.
Das Problem: Der Cache wächst mit jedem Token. Für jeden Token speichert das Modell Werte in jeder Schicht und bei jedem Attention-Head. Die Grösse des KV-Cache hängt von drei Faktoren ab:
- Anzahl der Token im Kontext
- Anzahl der Modellschichten (Layers)
- Grösse der Attention-Heads
Ein konkretes Beispiel: Bei einem Modell mit 32 Schichten und einem Kontext von 32.000 Token kann der KV-Cache mehrere Gigabyte erreichen. Bei 128.000 Token wächst er entsprechend weiter. Das ist der Grund, warum lange Kontexte auf Consumer-Hardware oft nur mit kleineren oder quantisierten Modellen funktionieren.
Quantisierung reduziert die Grösse der Modellgewichte, aber der KV-Cache wächst weiterhin mit der Sequenzlänge. Es gibt Ansätze wie KV-Cache-Quantisierung, die den Cache selbst komprimieren, aber das ist ein fortgeschrittenes Thema. Für den Anfang genügt es zu wissen: Je länger der Kontext, desto grösser der Speicherbedarf während der Inferenz.
Kontextlängen im Überblick
Verschiedene Modelle bieten sehr unterschiedliche Kontextfenster. Hier eine Übersicht gängiger Modelle, die sich für den lokalen Betrieb eignen:
| Modell | Kontextfenster | Bemerkung |
|---|---|---|
| Llama 3.1 (8B, 70B) | 128.000 Token | Sehr grosses Fenster, gut für lange Dokumente |
| Llama 3 (8B) | 8.192 Token | Standardfenster, reicht für viele Aufgaben |
| Qwen 2.5 (7B, 14B, 32B) | 128.000 Token | Grosses Fenster, stark in Deutsch |
| Mistral 7B / v0.3 | 32.000 Token | Mittelgrosses Fenster, guter Kompromiss |
| Mixtral 8x7B | 32.000 Token | Mixture-of-Experts, grösserer Speicherbedarf |
| Phi-3 Mini | 4.096 Token | Klein, schnell, aber begrenztes Fenster |
| Gemma 2 (9B, 27B) | 8.192 Token | Solides Fenster für die Grösse |
Die Zahlen beziehen sich auf die maximale theoretische Kontextlänge. In der Praxis limitieren oft der verfügbare Speicher und die Geschwindigkeit, wie viel Kontext Du sinnvoll nutzen kannst. Ein 128K-Fenster bringt wenig, wenn Dein VRAM nach 16.000 Token voll ist.
Was passiert bei zu langem Input?
Wenn Dein Input das Kontextfenster überschreitet, gibt es drei typische Reaktionen:
1. Truncation (Abschneiden): Viele Tools schneiden den Text automatisch ab. Sie behalten die ersten Token und verwerfen den Rest. Das Modell sieht nur einen Teil Deines Dokuments und Du bekommst es oft nicht einmal mit. Die Antwort basiert dann auf unvollständigen Informationen.
2. Fehlermeldung: Manche Tools und Modelle brechen mit einer Fehlermeldung ab. Das ist ehrlich, aber nicht immer hilfreich. Du musst den Text dann selbst kürzen oder aufteilen.
3. Automatisches Chunking: Fortgeschrittene Tools wie RAG-Pipelines teilen den Text automatisch in Stücke auf und verarbeiten sie nacheinander. Das funktioniert, erfordert aber zusätzliche Logik und kann zu Informationsverlust führen, wenn Zusammenhänge über Chunk-Grenzen hinweg bestehen.
Ollama beispielsweise bricht bei zu langem Input oft mit einer Fehlermeldung ab. Andere Tools wie LM Studio schneiden still ab. Es lohnt sich, das Verhalten Deines Tools zu kennen, bevor Du mit langen Dokumenten arbeitest.
Kontextlänge und RAG
RAG steht für Retrieval-Augmented Generation, ein Verfahren, bei dem das Modell vor der Antwort relevante Textstellen aus einer Datenbank abruft. Die Kontextlänge spielt hier eine zentrale Rolle.
Bei RAG suchst Du in einer Vektordatenbank nach passenden Textstücken und gibst diese zusammen mit Deiner Frage an das Modell. Je mehr Textstücke Du einreichst, desto mehr Kontext braucht das Modell. Ein grösseres Kontextfenster erlaubt es, mehr und längere Chunks zu übergeben, was die Antwortqualität verbessern kann.
Aber Vorsicht: Mehr Kontext ist nicht automatisch besser. Modelle haben oft das Problem, dass sie bei sehr langem Kontext relevante Informationen in der Mitte übersehen, ein Effekt, der als “Lost in the Middle” bekannt ist. Ausserdem steigt der Speicherbedarf und die Antwortzeit wächst.
Für RAG mit lokaler KI gilt: Wähle ein Modell mit ausreichend, aber nicht unnötig grossem Kontextfenster. Für die meisten RAG-Anwendungen reichen 8.000 bis 32.000 Token. Wenn Du mehr brauchst, schau Dir Lokales RAG und speziell Chunking an, um die Texte optimal vorzubereiten.
Tipps für den Umgang mit begrenztem Kontext
Wenn Dein Modell ein kleines Kontextfenster hat oder Dein VRAM limitiert ist, gibt es mehrere Strategien:
Chunking: Teile lange Dokumente in kleinere Stücke auf. Verarbeite jedes Stück einzeln und fasse die Ergebnisse zusammen. Das ist die Standardmethode bei RAG und funktioniert auch ohne Vektordatenbank. Mehr dazu im Artikel zu Chunking.
Vorab-Zusammenfassung: Bevor Du das Modell mit einem langen Text fütterst, lass es den Text in Etappen zusammenfassen. Nimm die erste Hälfte, fasse zusammen, nimm die zweite Hälfte, fasse zusammen, und gib dann beide Zusammenfassungen zusammen an das Modell.
Smart Prompting: Überlege, welche Informationen das Modell wirklich braucht. Statt ein ganzes Buch einzureichen, gib dem Modell nur die relevanten Kapitel. Ein präziser Prompt mit den richtigen Informationen funktioniert oft besser als ein riesiger Textberg.
Chat-Verlauf kürzen: Bei langen Dialogen sammeln sich Nachrichten an. Lösche alte, irrelevante Nachrichten oder fasse den bisherigen Verlauf zusammen, bevor Du weitermachst. Das spart Kontext und verbessert oft sogar die Antwortqualität.
System Prompt optimieren: Ein langer System Prompt belegt permanent Platz im Kontextfenster. Halte ihn so kurz wie möglich, ohne die wichtigen Anweisungen zu verlieren.
Typische Stolpersteine bei der Kontextlänge
- Verwechseln von Token und Wörtern: Ein Wort ist nicht ein Token. Bei Deutsch brauchst Du oft 1,3 bis 1,5 Token pro Wort. Wer mit Wörtern rechnet, überschätzt die Kapazität des Modells.
- Vergessen des System Prompts: Der System Prompt belegt Platz im Kontextfenster. Wer ihn nicht mitrechnet, wundert sich, warum das Modell früher als erwartet abbricht.
- Ignorieren des KV-Cache: Ein grosses Kontextfenster nützt nichts, wenn der VRAM nicht ausreicht. Der KV-Cache wächst mit der Sequenzlänge und kann den verfügbaren Speicher füllen, bevor das theoretische Limit erreicht ist.
- Annahme, dass mehr Kontext immer besser ist: Lange Kontexte brauchen mehr Zeit und Speicher. Ausserdem nehmen Modelle bei sehr langem Input relevante Informationen manchmal schlechter auf. Für viele Aufgaben reichen 8.000 Token.
- Stilles Abschneiden nicht bemerken: Manche Tools schneiden zu langen Input still ab. Das Modell antwortet dann scheinbar korrekt, aber auf Basis unvollständiger Daten. Prüfe, ob Dein Tool eine Warnung ausgibt.
- Chat-Verlauf ungeprüft wachsen lassen: Bei langen Dialogen füllt der Verlauf das Kontextfenster, bis kein Platz für Antworten bleibt. Regelmässiges Kürzen oder Zusammenfassen ist nötig.
- Falsche Erwartung an Quantisierung: Quantisierung reduziert die Modellgewichte, aber nicht automatisch den KV-Cache. Wer ein quantisiertes Modell mit 128K-Kontext lädt, kann trotzdem an den Speichergrenzen scheitern.
Hardware, Kosten und Sicherheit bei Kontextlänge
Lange Kontexte brauchen mehr VRAM oder RAM. Wer viele lange Dokumente verarbeiten will, muss entweder auf sehr grosse Modelle und Workstations setzen oder die Eingaben gezielt kürzen. Die Details dazu findest Du im Artikel zu RAM und VRAM Anforderungen.
Quantisierung hilft bei den Modellgewichten, reduziert aber den KV-Cache nicht wesentlich, weil der Cache von der Sequenzlänge und der Modellarchitektur abhängt. Wenn Du ein 8B-Modell mit 128K-Kontext laden willst, brauchst Du trotzdem erheblichen Speicher für den Cache allein.
Kosten entstehen bei lokaler KI vor allem durch Hardware und Strom. Der Vorteil: Auch lange Dokumente verlassen Dein Netzwerk nicht. Das ist besonders bei vertraulichen Verträgen, internen Code-Dateien oder persönlichen Daten relevant. Bei Cloud-Diensten kann ein langer Kontext teuer werden, weil jeder Token berechnet wird.
Sicherheitstechnisch ist der lokale Betrieb klar im Vorteil. Du gibst keine sensiblen Daten an externe Server. Dafür trägst Du die volle Verantwortung für Backup, Updates und Zugriffsschutz. Mehr dazu im Artikel LLM lokal betreiben.
Weiterführende Links und Infos zur Kontextlänge
- Was ist lokale KI?
- Quantisierung
- RAM und VRAM Anforderungen
- LLM lokal betreiben
- Lokales RAG
- Chunking
- Ollama
FAQ - Typische Fragen zur Kontextlänge
Wie viele Wörter entsprechen einem Token?
Ungefähr 0,75 Wörter pro Token in Englisch, in Deutsch eher 0,6 bis 0,7 Wörter. Ein deutscher Text mit 1.000 Wörtern entspricht oft etwa 1.300 bis 1.500 Token.
Kann ich auch mehr eingeben als das Kontextfenster erlaubt?
Nein. Das Modell ignoriert Token, die über das Fenster hinausgehen, oder es kommt zu Fehlern. Tools kürzen oder teilen den Text deshalb vorab, manchmal ohne Dich zu warnen.
Warum wird der KV-Cache so gross?
Er speichert Zwischenwerte für jeden bereits verarbeiteten Token in jeder Modellschicht. Bei langen Texten summieren sich diese Werte und belegen viel Speicher, der mit der Sequenzlänge linear wächst.
Sind längere Kontextfenster immer besser?
Nicht zwingend. Lange Kontexte brauchen mehr Speicher und Zeit. Ausserdem übersehen Modelle bei sehr langem Input manchmal relevante Stellen in der Mitte. Für viele Aufgaben reichen 8.000 bis 32.000 Token.
Was passiert mit alten Chat-Nachrichten?
Wenn der Verlauf das Kontextfenster übersteigt, werden ältere Nachrichten abgeschnitten. Deshalb nutzen viele Anwendungen eine Zusammenfassung des bisherigen Gesprächs, um Platz zu sparen.
Wie finde ich heraus, wie viele Token mein Text hat?
Nutze einen Online-Token-Zähler oder die Tokenizer-Bibliotheken von Hugging Face. Achte darauf, den Tokenizer des jeweiligen Modells zu verwenden, da verschiedene Modelle unterschiedlich tokenisieren.
Beeinflusst die Kontextlänge die Geschwindigkeit?
Ja. Längere Kontexte bedeuten mehr Berechnungen pro Token, weil das Modell die Attention über alle bisherigen Token berechnet. Die Antwortzeit wächst mit der Kontextlänge.
Kann ich den KV-Cache quantisieren?
Ja, es gibt Ansätze wie KV-Cache-Quantisierung, die den Cache komprimieren. Das ist aber ein fortgeschrittenes Thema und nicht in jedem Tool verfügbar. Für den Anfang reicht es, zu wissen, dass der Cache wächst und Speicher braucht.
Welches Kontextfenster brauche ich für RAG?
Für die meisten RAG-Anwendungen reichen 8.000 bis 32.000 Token. Du gibst einige Textstücke plus Deine Frage ein, das reicht meist aus. Mehr Kontext hilft nur, wenn Du sehr viele oder sehr lange Chunks übergeben willst.
Warum bricht mein Modell mitten in der Antwort ab?
Wahrscheinlich ist das Kontextfenster voll. Input und Output teilen sich das Fenster. Wenn der Input zu lang ist, bleibt für die Antwort kein Platz und das Modell stoppt. Kürze den Input oder wähle ein Modell mit grösserem Kontextfenster.
Hilft Quantisierung bei langen Kontexten?
Quantisierung reduziert die Modellgewichte, aber der KV-Cache wächst weiterhin mit der Sequenzlänge. Du sparst Speicher bei den Gewichten, aber bei sehr langem Kontext kann der Cache trotzdem zum Engpass werden.
Was bedeutet “Lost in the Middle”?
Das ist ein beobachteter Effekt, bei dem Modelle Informationen in der Mitte eines langen Kontexts schlechter beachten als am Anfang oder Ende. Wenn Du wichtige Informationen hast, platziere sie besser am Anfang oder Ende des Prompts.
Kann ich das Kontextfenster eines Modells vergrössern?
Nein, das Kontextfenster ist durch das Training festgelegt. Ein Modell, das mit 8.000 Token trainiert wurde, kann nicht plötzlich 32.000 Token verarbeiten. Du musst ein Modell wählen, das von vornherein das gewünschte Fenster unterstützt.
Brauche ich für 128K-Kontext eine spezielle Hardware?
Nicht zwingend spezielle, aber ausreichend. Der KV-Cache für 128.000 Token kann mehrere Gigabyte gross werden. Du brauchst genug VRAM oder RAM, um Modell und Cache gleichzeitig zu halten. Bei lokalem Betrieb sind das oft 16 GB VRAM oder mehr.
Quellen und weiterführende Literatur
- Hugging Face Tokenizer-Dokumentation
- Ollama Modellübersicht
- Llama 3.1 Kontextlängen-Spezifikation
- Qwen 2.5 Modellkarte
- Mistral AI Dokumentation
- Forschung zum Thema “Lost in the Middle” (Liu et al., 2023)


