AI-Grundlagen für den IT-Betrieb

Das Verhaltensmodell — wie Output entsteht

Ein scheinbar identischer Batch liefert andere Formulierungen und sprengt sporadisch ein Zeichenlimit. Wer Token, Sampling und Ausgabevalidierung verwechselt, diagnostiziert an der falschen Schicht. Erst ein Request-Trace trennt Modellvarianz von einem gebrochenen Systemcontract.

Lehrtext · 10 Abschnitte · zuletzt geprüft: 2026-09-04

Warum das Verhaltensmodell?

Jeder LLM-Output entsteht mechanisch: das Modell zerlegt Text in Tokens und erzeugt die Antwort Token für Token, von links nach rechts. Fast jede „unerklärliche“ LLM-Macke folgt aus dieser Mechanik — nicht aus einem schlechten Prompt.

EingabeInstruktion + KontextModellWahrscheinlichkeitenAusgabeToken für TokenPrüfenKONTEXT LENKT, ABER GARANTIERT NICHTVerlässlichkeit entsteht aus passendem Kontext, Messung und einer Grenze nach der Ausgabe — nicht aus einer einzelnen Formulierung.
Ein Modell transformiert begrenzten Kontext in wahrscheinliche Tokens; Verlässlichkeit braucht deshalb eine prüfende Systemgrenze.

Wer die Mechanik kennt, trifft die richtige Entscheidung, statt stundenlang am Prompt zu drehen: Manche Probleme gehören in Code, manche brauchen andere Daten, manche sind schlicht eine Grenze, die kein Prompt überwindet.

MerksatzBevor du einen Prompt tunst, frag: Ist das überhaupt ein Prompt-Problem — oder eine Grenze der Mechanik?

InferenzDie Laufzeitphase, in der ein bereits trainiertes Modell aus Eingabetokens Ausgabetokens berechnet. Inferenz ist nicht Training und aktualisiert die Modellgewichte nicht.

Das Verhaltensmodell ist absichtlich operational: Es erklärt nicht jedes Detail eines Transformers, sondern die Größen, die du an einer produktiven Schnittstelle beobachten und begrenzen kannst. Dazu gehören Tokenzahl, Kontextzusammensetzung, Sampling-Konfiguration, Ausgabeform und Laufzeit. Eine Diagnose beginnt mit Messwerten aus genau dem fehlgeschlagenen Request. Ein allgemeines Gefühl wie „das Modell ist instabil“ ist keine Fehlerklasse und führt meist zu zufälligem Prompt-Tuning.

Ein nützlicher Request-Trace trennt Eingabedaten von abgeleitetem Zustand. Er zeigt Systemanweisung, Nutzeranteil, ausgewählte Historie, Retrieval-Ausschnitte und Tool-Ergebnisse als benannte Segmente. Dazu kommen Tokenzahlen je Segment, reservierte Ausgabe, Decoding-Konfiguration und Validierungsergebnis. Diese Struktur macht sichtbar, ob ein Fehler durch fehlenden Kontext, verdrängte Anweisung, ungeeignete Sampling-Werte oder einen nachgelagerten Parser entstand. Rohdaten werden dabei minimiert und zugriffsgeschützt; Beobachtbarkeit rechtfertigt keine dauerhafte Vollkopie vertraulicher Prompts.

Tokenisierung: Token ≠ Wort ≠ Zeichen

Das Modell liest weder rohen Text noch einzelne Zeichen, sondern Tokens — Wortstücke aus einem festen Vokabular (Subword-Verfahren wie BPE, Byte-Pair-Encoding). Ein Token ist mal ein ganzes Wort, mal eine Silbe, mal ein einzelnes Zeichen.

Erste Konsequenz: zeichen-exakte Operationen — Zeichen zählen, einen String umdrehen, auf exakt N Zeichen kürzen — liegen unter der Token-Ebene. Das Modell „sieht“ die einzelnen Zeichen innerhalb eines Tokens nicht zuverlässig. Solche Aufgaben gehören in Code, nicht in den Prompt.

Zweite Konsequenz: das Token-Budget ist keine Wortzahl. Weil die Vokabulare überwiegend auf englischem Text trainiert sind, zerfällt deutscher (und anderer nicht-englischer) Text in mehr Tokens pro Wort — Komposita, Umlaute und Flexion werden in kleinere Stücke gebrochen. Gleicher Inhalt, mehr Tokens.

MerksatzBudget und Kosten schätzt man mit dem tatsächlichen Tokenizer auf echtem Text — nie mit einer englischen Wort-Faustregel.

Tokenizer zerlegen Text nach einem erlernten Vokabular in Subword-Einheiten. Deshalb gibt es keine feste Umrechnung von Zeichen oder Wörtern in Tokens, und unterschiedliche Modelle können denselben Text anders zerlegen. Besonders IDs, zusammengesetzte Wörter, Code und seltene Zeichenfolgen verhalten sich anders als normale Prosa. Eine Kapazitätsplanung mit „vier Zeichen pro Token“ ist höchstens eine grobe Schätzung. Vor Batch-Bildung und Kostenrechnung zählt der produktive Tokenizer die echten Eingaben.

Ein Zeichenlimit ist eine andere Anforderung. Wenn ein Ticketfeld höchstens 60 Zeichen erlaubt, reicht max_tokens nicht: Der Parameter begrenzt Modellausgabe in Tokens, nicht Unicode-Zeichen. Die Anwendung muss nach der Generierung die tatsächliche Zielgröße prüfen und ablehnen, reparieren oder neu erzeugen. Preis: Harte Nachvalidierung kann zusätzliche Versuche und Latenz erzeugen; ohne sie bleibt der Downstream-Contract zufällig.

Autoregression: Token für Token, ohne Zurück

Generierung ist autoregressiv: das Modell erzeugt ein Token, hängt es an die Eingabe an und sagt daraus das nächste voraus — bis ein Stop-Token fällt. Jedes Token bedingt sich auf alle vorherigen, und nichts wird zurückgenommen.

Eingabe-TokensForward-Passnächstes Token wählenToken anhängenwiederholen bis Stop

Daraus folgt zweierlei. Latenz skaliert mit der Output-Länge: jedes erzeugte Token ist ein eigener Forward-Pass. Und die Reihenfolge ist ein Korrektheitshebel: soll das Modell etwas schließen, muss die Überlegung vor dem Ergebnis stehen — ein Verdikt am Anfang kann nicht mehr auf eine danach generierte Begründung reagieren.

MerksatzBegründung vor Verdikt. Wer zuerst das Urteil ausgibt, bekommt eine Post-hoc-Rechtfertigung, keine Überlegung.

Autoregressiv heißt: Für jedes neue Token wird eine Verteilung unter der Bedingung aller bisher vorliegenden Tokens berechnet. Das Modell plant nicht zwingend zuerst ein vollständiges Dokument und tippt es danach ab. Eine frühe Festlegung beeinflusst die folgenden Wahrscheinlichkeiten; spätere Tokens können den bereits ausgegebenen Text nicht zurücknehmen. Deshalb sind Anforderungen, die globale Konsistenz verlangen, mit einem nachgelagerten Validator oder einem mehrstufigen Entwurf robuster als mit der Bitte „sei konsistent“.

Auch scheinbares Denken bleibt Ausgabegenerierung. Zwischenschritte können Aufgaben strukturieren, sind aber weder eine verifizierte Beweisspur noch automatisch korrekt. Für abrechnungsrelevante Mathematik lässt du das Modell Werte und Operationen identifizieren und gibst die Rechnung an deterministischen Code. Gewinn: auditierbare Ergebnisse. Nachteil: Der Contract zwischen Sprach- und Rechenschicht muss Fehler und Einheiten sauber behandeln.

Sampling & Temperatur

Nach jedem Forward-Pass steht eine Wahrscheinlichkeitsverteilung über das nächste Token. Temperatur steuert, wie stark daraus zufällig gezogen wird: nahe 0 wählt das Modell fast immer das wahrscheinlichste Token (konsistent, wenig Varianz); höhere Werte erhöhen die Vielfalt — und das Risiko von Abwegen.

Extraktion, Klassifikation, strukturierte Ausgabe
niedrige Temperatur (nahe 0)
Ideenfindung, Formulierungs-Varianten, Brainstorming
höhere Temperatur
MerksatzTemperatur koppelt man an den Aufgabentyp — nicht global auf einen „ausgewogenen“ Wert festnageln.

Logit und SamplingDas Modell erzeugt Scores für mögliche nächste Tokens. Eine Decoding-Regel formt daraus eine Auswahl; Temperatur verändert die Verteilung, bevor ausgewählt wird.

Niedrige Temperatur konzentriert Wahrscheinlichkeit auf bevorzugte Tokens und passt zu Extraktion oder Klassifikation. Höhere Temperatur kann Variation für Ideen oder Formulierungen erhöhen. Sie macht ein Modell nicht wissender und ist kein Regler für Wahrheit. Weitere Parameter wie Top-p greifen ebenfalls in die Kandidatenmenge ein; mehrere Regler gleichzeitig zu ändern erschwert Ursachenanalyse. Versioniere deshalb eine vollständige Decoding-Konfiguration und variiere in Experimenten genau eine Achse.

Nichtdeterminismus — auch bei Temperatur 0

Temperatur 0 macht die Auswahl deterministisch (immer das wahrscheinlichste Token), aber bei den meisten heute gehosteten APIs ist die Ausgabe trotzdem nicht bit-genau reproduzierbar — weil Anbieter standardmäßig keine batch-invarianten Kernel einsetzen.

Grund: Fließkomma-Addition ist nicht assoziativ ((a + b) + ca + (b + c)), und in massiv parallelen GPU-Kernen hängt die Reihenfolge der Summierungen u. a. von der Batch-Zusammensetzung ab. Winzige Abweichungen in den Logits lassen bei knappen Fällen ein anderes Token gewinnen. (Prinzipiell ist das mit batch-invarianten Kernen behebbar — nur wird es an geteilten Backends selten garantiert.)

Nebenbei: ein seed-Parameter beeinflusst nur die Zufallsauswahl beim Sampling. Bei Temperatur 0 wird gar nicht gesampelt — ein Seed ändert daran nichts.

MerksatzLLM-Ausgaben nie auf exakte Gleichheit testen — auf Eigenschaften/Semantik prüfen. An gehosteten Backends ist der Nichtdeterminismus der Normalzustand, kein Bug im eigenen Code.

Selbst bei gieriger Auswahl oder nominell temperature: 0 kann die gesamte Serving-Kette Unterschiede zeigen. Implementierungen, Parallelisierung, numerische Rundung und wechselnde Modellartefakte liegen außerhalb des einfachen Sampling-Bilds. Daraus folgt keine Ausrede für beliebige Ergebnisse. Wiederholte Testfälle messen die Streuung; Modellkennung, Promptversion und Parameter gehören in den Trace. Wo exakt gleiche Ergebnisse vorgeschrieben sind, braucht es Cache, feste Regeln oder einen deterministischen Nachschritt.

Die relevante Frage lautet nicht „Ist es deterministisch?“, sondern „Welche Varianz ist für diesen Prozess zulässig?“ Zwei unterschiedliche, aber korrekte Zusammenfassungen können akzeptabel sein. Zwei verschiedene Berechtigungsentscheidungen sind es nicht. Preis der Reproduzierbarkeit: Strengere Decoding- und Infrastrukturkontrolle reduziert Variation, kann aber kreative Qualität, Durchsatz oder die Freiheit beim Anbieterwechsel begrenzen.

Für Wiederholbarkeit unterscheidest du semantische Stabilität von Byte-Identität. Bei einer Zusammenfassung können verschiedene Formulierungen denselben fachlichen Contract erfüllen. Evaluiere dann Eigenschaften wie enthaltene Fakten, verbotene Behauptungen und Längengrenze. Braucht ein Downstream exakt dieselben Bytes, wird der akzeptierte Output gespeichert oder deterministisch erzeugt. Das Modell immer wieder aufzurufen und identische Zeichen zu erwarten, macht eine Infrastrukturannahme zum Fachvertrag. Der Cache kauft Reproduzierbarkeit, muss aber invalidiert werden, wenn Quelle, Prompt oder Policy wechselt.

Das Kontextfenster: endliches, ungleich genutztes Budget

Alles, was das Modell pro Aufruf berücksichtigt — Systemprompt, Historie, hineingegebene Dokumente, die bisher erzeugte Antwort — teilt sich ein endliches Kontextfenster.

Voll ist nicht gut: Modelle nutzen Information am Anfang und Ende zuverlässiger als in der Mitte langer Kontexte — das Phänomen heißt „lost in the middle“. Und jedes zusätzliche Token kostet Latenz und Geld.

MerksatzMehr Kontext ist nicht besser — relevanter Kontext ist besser. Kuratieren schlägt Reinkippen.

KontextfensterDie maximale Tokenmenge, die ein Modell für einen Aufruf gemeinsam verarbeiten kann, einschließlich Systemanweisung, Nutzereingabe, Historie, Tool-Ergebnisse und oft reservierter Ausgabe.

Ein großes Fenster ist kein verlustfreier Speicher. Liu und Kollegen beobachteten bei untersuchten Modellen, dass relevante Information je nach Position unterschiedlich gut genutzt wurde. Praktisch heißt das: Kontext wird kuratiert, nicht gefüllt. Entferne irrelevante Historie, priorisiere verbindliche Regeln, liefere nur passende Quellen und reserviere Budget für die Ausgabe. Nachteil: Verdichtung kann wichtige Details verlieren; deshalb braucht sie Tests mit langen und widersprüchlichen Fällen.

Für Kosten und Latenz werden Eingabe und Ausgabe getrennt gemessen. Ein wachsender Chatverlauf wird bei jedem Turn erneut Teil der Eingabe, wenn die Anwendung ihn mitsendet. Eine Zusammenfassung senkt Tokenmenge, ist aber selbst ein potenziell verlustbehafteter Modelloutput. Ein belastbares Speicherkonzept trennt unveränderliche Fakten, kurzlebigen Gesprächszustand und rohe Historie statt alles in einen einzigen Prompt zu kippen.

Kontextselektion ist damit ein Rankingproblem mit eigenem Fehlerbudget. Verbindliche Policy und aktuelle Falldaten werden nicht gegen beliebig viel Historie ausgespielt. Markiere Herkunft und Priorität der Segmente, teste Konflikte ausdrücklich und beobachte, welche Teile bei langen Eingaben tatsächlich genutzt werden. Ein größeres Kontextfenster verschiebt die Kapazitätsgrenze, beseitigt aber weder widersprüchliche Quellen noch unklare Priorität. Nachteil: Strenge Selektion kann seltene Hinweise auslassen; sie macht Auswahlfehler jedoch messbar.

Parametrisches Wissen, Cutoff und Konfabulation

Was das Modell „weiß“, steckt in seinen Gewichten — gelernt aus Trainingsdaten bis zu einem Cutoff. Interne Daten (deine Systeme, Handbücher) und aktuelle Fakten (diese Woche) sind dort strukturell nicht enthalten. Kein größeres Modell und kein besserer Prompt ändern das; fehlende Fakten muss man zur Laufzeit bereitstellenGrounding über Retrieval oder Tool.

Kritisch: fehlt ein Fakt, schweigt das Modell nicht. Es hat keinen Mechanismus, Nichtwissen zu markieren, und füllt die Lücke mit statistisch plausiblem Text aus seinen Priors — Konfabulation. Über nie gesehene interne Daten ist eine flüssige, souveräne Antwort ein Warnsignal, kein Beleg für Wissen.

MerksatzFlüssigkeit und Selbstsicherheit sind kein Korrektheitssignal. Ungegroundete Ausgaben gelten als unverifiziert.

Parametrisches Wissen sind in Gewichten verdichtete Regelmäßigkeiten; es ist nicht wie eine Datenbankzeile mit Zeitstempel abrufbar. Ein Wissensstichtag beschreibt grob die Trainingsabdeckung eines Artefakts, aber nicht, ob ein konkreter Fakt enthalten, korrekt gelernt oder zuverlässig abrufbar ist. Aktuelle Rufbereitschaften, Lagerbestände oder Kundendaten gehören daher in Kontext, Retrieval oder Tools. Das Modell formuliert auf Basis dieser Eingaben; die Quelle bleibt außerhalb des Modells kontrollierbar.

Konfabulation entsteht nicht erst bei hoher Temperatur. Ein Sprachmodell kann eine sprachlich passende Fortsetzung erzeugen, obwohl die benötigte Tatsache fehlt. Ein ausdrückliches „Sag, wenn du es nicht weißt“ kann Verhalten beeinflussen, ist aber keine harte Wissensgrenze. Die Systemkontrolle lautet: Quellenpflicht, Abstention bei fehlender Evidenz, Ausgabevalidierung und ein messbarer Fehlerfall. Preis: Mehr Antworten werden abgelehnt oder an Menschen eskaliert.

Ausgabe-Contracts statt Format-Hoffnung

Eine Anweisung wie „Antworte als JSON“ ist zunächst Text im Kontext. Ein produktiver Contract verlangt ein Schema, eine syntaktische Prüfung und eine fachliche Prüfung. Strukturierte Decoding-Verfahren können die erlaubten nächsten Tokens einschränken und damit syntaktische Formen absichern; sie beweisen nicht, dass ein vorhandenes Feld den richtigen Wert enthält. Trenne daher Form, Semantik und Berechtigung als drei Gates.

Form
Parser oder Schema: Ist die Ausgabe strukturell zulässig?
Semantik
Domänenregeln: Existiert die ID, stimmt die Einheit, ist der Wert plausibel?
Wirkung
Autorisierung: Darf dieser Nutzer diese konkrete Aktion auslösen?
Kosten der KontrolleEin strenger Contract verwirft mehr Ausgaben und verlangt Reparaturpfade. Dafür verschiebt er Fehler von unkontrollierten Seiteneffekten zu sichtbaren, behandelbaren Ablehnungen.

Ein sinnvoller Output-Contract enthält auch eine definierte Ablehnung. Wenn Pflichtfelder nicht mit belastbarer Evidenz gefüllt werden können, liefert das System einen strukturierten Fehlergrund statt erfundener Werte. Downstream-Komponenten behandeln Ablehnung als normalen Zustand. Preis: Die nominelle Erfolgsquote sinkt und der Prozess braucht einen Fallback. Der Gewinn ist, dass fehlendes Wissen nicht als syntaktisch perfekter Datensatz maskiert wird.

Ein Diagnoseablauf für den Betrieb

Ein Tickettext sprengt das Zielfeld

Szenario

Ein Modell soll aus einem Incident einen Titel mit höchstens 60 Zeichen erzeugen. Nur manche deutschen Eingaben scheitern.

Anforderungen

  • Die UI-Grenze darf nie verletzt werden.
  • Die Diagnose soll Tokenisierung und Zeichenlänge trennen.
  • Wiederholungen müssen vergleichbar protokolliert sein.

Schritte

  1. Mit dem produktiven Tokenizer Eingabe und Ausgabe messen.
  2. Modellkennung, Kontext, Decoding-Parameter und rohe Ausgabe im geschützten Trace erfassen.
  3. Unicode-Zeichen nach der Generierung zählen und bei Verstoß kontrolliert kürzen oder neu erzeugen.
  4. Den Fall in das Regressionstestset aufnehmen.

Merksatz: Das Modell liefert einen Vorschlag; der System-Contract entscheidet, ob er verwendet werden darf.

Der Ablauf verallgemeinert: Zuerst beobachtete Größe benennen, dann Request reproduzierbar machen, anschließend die zuständige Schicht verändern und zuletzt den Fall als Regression sichern. Gleich im Check entscheidest du diese Grenzen selbst — von Tokenbudget und Sampling bis Grounding und Ausgabe-Contract.

Fachliche Validierung sollte Fehler benennen statt eine beliebige Reparaturschleife auszulösen. Ein unbekannter Statuswert kann durch erneute Generierung korrigierbar sein; eine nicht autorisierte Ressource darf niemals durch Prompt-Reparatur legitim werden. Teile Fehler deshalb in syntaktisch, fachlich, sicherheitsrelevant und temporär. Nur temporäre Tool- oder Infrastrukturfehler erhalten automatische Retries mit Backoff. Nachteil: Mehr Fehlerklassen erhöhen Implementierungsaufwand; sie verhindern, dass das Modell durch wiederholte Versuche eine harte Grenze umgeht.

Gleich im Check

Du kennst jetzt die Mechanik hinter dem Output: Tokenisierung (Zeichen-Grenzen, Budget), Autoregression (Latenz, Reihenfolge), Sampling (Temperatur, Nichtdeterminismus), das Kontextfenster (lost in the middle) und parametrisches Wissen (Grounding-Bedarf, Konfabulation).

Gleich im CheckIn den nächsten acht Entscheidungen liest du reale Ops-Symptome und wählst den richtigen Hebel — und siehst pro Option, warum sie trägt oder an der Mechanik scheitert.

Bei der Diagnose wird stets der kleinste reproduzierbare Fall erzeugt. Entferne Kontextteile einzeln, ohne den beobachteten Fehler zu verlieren; vergleiche Tokenisierung und finale Ausgabe vor und nach jeder Änderung. Ein Prompt-Experiment ohne fixierte Modellrevision, Daten und Parameter kann keine Ursache belegen. Anschließend wird nicht nur der erfolgreiche Einzelfall gespeichert, sondern eine Fallfamilie mit kurzen, langen, mehrsprachigen und widersprüchlichen Varianten. So wird aus Debugging ein dauerhaftes Systemwissen statt ein weiterer fragiler Satz im Prompt.

Ein Abschlussreview fragt deshalb nicht, ob der Prompt „gut“ klingt, sondern ob die gesamte Kette beobachtbar und begrenzt ist. Tokenbudget, Kontextsegmente, Decoding, Schema, fachliche Validierung und Ablehnung besitzen je einen messbaren Zustand. Nur dann kann ein On-call zwischen Datenfehler, Modellvarianz und Integrationsfehler unterscheiden, statt mit weiteren Formulierungen zu experimentieren.

Die Checks verlangen deshalb immer eine benannte Laufzeitgröße und eine passende Systemkontrolle.

Diese Trennung macht Modellverhalten im Incident konkret untersuchbar und erlaubt einen sicheren, benannten Fallback.

Jetzt anwenden

Diesen Stoff gibt es als Modul mit bewerteten Entscheidungs-Checks — dieselbe Einführung, danach die Übungen.

Zum Modul →
Quellen & Aktualität23 Primärquellen · zuletzt geprüft:
  1. 01Sennrich, Haddow, Birch — Neural Machine Translation of Rare Words with Subword Units, ACL 2016 (BPE)
  2. 02Holtzman et al. — The Curious Case of Neural Text Degeneration, ICLR 2020 (Sampling/Temperatur)
  3. 03Goldberg — What Every Computer Scientist Should Know About Floating-Point Arithmetic, ACM Computing Surveys 1991
  4. 04Defeating Nondeterminism in LLM Inference — Thinking Machines Lab, 2025 (Batch-Invarianz)
  5. 05Wei et al. — Chain-of-Thought Prompting Elicits Reasoning in Large Language Models, NeurIPS 2022
  6. 06Liu et al. — Lost in the Middle: How Language Models Use Long Contexts, TACL 2023
  7. 07Lewis et al. — Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks, NeurIPS 2020
  8. 08Ji et al. — Survey of Hallucination in Natural Language Generation, ACM Computing Surveys 2023
  9. 09Sennrich, Haddow & Birch — Neural Machine Translation of Rare Words with Subword Units, ACL 2016
  10. 10Vaswani et al. — Attention Is All You Need, NeurIPS 2017
  11. 11Holtzman et al. — The Curious Case of Neural Text Degeneration, ICLR 2020
  12. 12Liu et al. — Lost in the Middle: How Language Models Use Long Contexts, TACL 2024
  13. 13Scholak et al. — PICARD: Parsing Incrementally for Constrained Auto-Regressive Decoding, EMNLP 2021
  14. 14Petrov et al. — Language Model Tokenizers Introduce Unfairness Between Languages, NeurIPS 2023 (empirischer Sprachvergleich)
  15. 15Sennrich, Haddow, Birch — Neural Machine Translation of Rare Words with Subword Units, ACL 2016 (BPE-Mechanik)
  16. 16Holtzman et al. — The Curious Case of Neural Text Degeneration, ICLR 2020
  17. 17OpenAI API Reference — Parameter `temperature` (Sampling)
  18. 18Gekhman et al. — Does Fine-Tuning LLMs on New Knowledge Encourage Hallucinations?, EMNLP 2024
  19. 19OpenAI — Byte-Pair-Encoding-Tokenizer (tiktoken), Dokumentation
  20. 20Kojima et al. — Large Language Models are Zero-Shot Reasoners, NeurIPS 2022 (Reasoning vor Antwort)
  21. 21Language Models are Few-Shot Learners — Brown et al., 2020
  22. 22Lost in the Middle: How Language Models Use Long Contexts — Liu et al., 2023
  23. 23Shi et al. — Large Language Models Can Be Easily Distracted by Irrelevant Context, ICML 2023