Das Problem mit langen Kontexten
Große Sprachmodelle (LLMs) mit langen Kontextfenstern sind derzeit der Renner – jedes neue Modell scheint das Kontextfenster im Vergleich zur Konkurrenz um ein Vielfaches zu erweitern. Trotz beeindruckender Ergebnisse bei typischen Benchmarks wie der Nadel-im-Heuhaufen-Aufgabe haben sie dennoch entscheidende Schwächen, die wir als das „Harry Potter“-Problem bezeichnen.
Stell dir vor, du gibst einem LLM ein Kapitel von Harry Potter und bittest es, zu zählen, wie oft das Wort „Zauberer“ vorkommt. Trotz ihrer großen Kontextfenster scheitern die modernsten Modelle wie GPT-4, Claude 3 Opus, Gemini Ultra und Mixtral an dieser Aufgabe. Dies verdeutlicht, dass die Modelle Schwierigkeiten haben, Informationen in langen Kontexten effektiv zu nutzen.
Warum ist das wichtig?
Dieses Problem kann die Genauigkeit von LLMs erheblich beeinträchtigen und ist schwer zu erkennen. Harry Potter ist ein harmloses Beispiel, aber in wertvollen Anwendungsfällen kann dieses Problem teuer werden. Betrachten wir zum Beispiel die Analyse von Rechtsverträgen. Diese sind oft sehr lang, komplex und erfordern logische Verknüpfungen zwischen Informationen, die über viele Seiten verstreut sind. Ein Fehler in diesem Prozess kann die Korrektheit der Antwort erheblich beeinflussen, was in wichtigen Anwendungsfällen katastrophal sein kann. Auch bei der Überprüfung umfangreicher Gerichtsverfahren oder dem Verständnis von komplexen Gesetzestexten stellt dieses Problem eine erhebliche Herausforderung dar.
Lösen RAG oder Fine-Tuning dieses Problem?
Nicht wirklich. Traditionelle Retrieval-Augmented Generation (RAG)-Ansätze berücksichtigen nicht die Struktur und Informationshierarchie eines Dokuments. Das bedeutet, dass die abgerufenen Abschnitte und die Eingabeaufforderung den Rest der relevanten Informationen ignorieren könnten. Fine-Tuning-Methoden wie LoRA beheben das grundlegende Problem, wie LLMs Kontexte verarbeiten, nur teilweise. Sie neigen dazu, den Anfangs- und Endteilen von Dokumenten mehr Aufmerksamkeit zu schenken als den Informationen in der Mitte.
Können Agenten das Problem lösen?
Noch nicht. Aktuelle Agenten, auch mit Tool-Calling, erfassen nicht den gesamten Kontext eines Dokuments. Ein Agent müsste in der Lage sein, das gesamte Dokument zu verarbeiten, eine Ontologie für deinen Anwendungsfall zu entwickeln und einen Weg finden, dieses komplexe Dokument zu interpretieren. Das wäre eine bahnbrechende Entwicklung, aber bisher haben unsere Erfahrungen mit Agenten nicht die gewünschten Ergebnisse geliefert.
Unser Ansatz zur Lösung des Problems
Wir haben festgestellt, dass der beste Weg zur Lösung dieses Problems darin besteht, eine klare Vorstellung davon zu haben, wie jedes lange Dokument aussehen sollte, welche Informationen es enthalten sollte und wie diese Informationen miteinander verknüpft sind. Dies ist ein komplexes Unterfangen und lässt sich nicht verallgemeinern. Wir haben Monate damit verbracht, jeden verfügbaren Rechtsvertrag zu studieren, um eine Ontologie zu entwickeln, die wir dann an das Dokument anpassen und einen Ingestions- und Retrieval-Pipeline darum herum bauen konnten.
Im Wesentlichen haben wir einen Kompromiss gemacht: Für ein tiefes Verständnis von Rechtsverträgen haben wir die Fähigkeit aufgegeben, alles andere zu verstehen. Wir mussten unseren allgemeinen Retrieval-Engine anpassen, um mit bestimmten Kategorien von Anfragen umgehen zu können, die unserer Meinung nach außerhalb der Branche nicht existieren. Wissensgraphen können mit dem richtigen Ansatz hilfreich sein, ebenso wie Experimente mit den neuesten Chunking-Techniken.
Ein weiterer Ansatz besteht darin, das Dokument wie eine Enzyklopädie zu behandeln – ein Inhaltsverzeichnis, ein Glossar und eine Zitatliste zu erstellen, die ein LLM vor dem Abrufen von Abschnitten konsultieren kann. Dies ist auch während der Ingestion nützlich.
Wie du das für deine eigenen Dokumente machst
Beginne damit, eine Kategorie von Dokumenten auszuwählen, die du verstehen möchtest, und akzeptiere, dass du diesen Prozess für jede neue Kategorie wiederholen musst, bis entweder:
- das „Harry Potter“-Problem gelöst ist, oder
- jemand eine allgemeine Methode zur Erstellung eines Wissensgraphen aus einem Dokument entwickelt, die tatsächlich funktioniert.
Entwickle dann eine klare Vorstellung davon, welche Informationen alle Varianten dieses Dokuments enthalten müssen. Versuche, sie aufzulisten, ihre Typen und ihre Beziehungen zueinander zu bestimmen (Graphentheorie ist hierbei hilfreich).
Schließlich, und das ist leichter gesagt als getan, experimentiere mit so vielen Beispielen wie möglich. Wahrscheinlich wirst du diesen Prozess mehrere Male durchlaufen müssen, bevor du gute Ergebnisse siehst. Für das richtige Geschäftsproblem lohnt sich jedoch der Aufwand.