Chunking-Strategien für RAG: Texte sinnvoll zerlegen
Chunking-Strategien entscheiden mit darüber, ob ein RAG-System die richtige Antwort findet. Beim Chunking werden lange Dokumente in kleinere Abschnitte zerlegt, die einzeln durchsucht werden. Sind die Abschnitte zu groß, verwässert die Suche; sind sie zu klein, fehlt der Zusammenhang.
Warum überhaupt zerlegen?
Ein Embedding fasst die Bedeutung eines Textes in einem einzigen Vektor zusammen. Bei einem ganzen Handbuch vermischen sich darin Dutzende Themen, und die Suche kann nichts mehr unterscheiden. Außerdem sollen nur die relevanten Stellen in den Prompt, nicht ganze Dokumente, denn jedes Token kostet Geld und Aufmerksamkeit des Modells.
Die wichtigsten Strategien
- Feste Größe: Der Text wird alle N Tokens oder Zeichen geschnitten. Einfach und schnell, zerschneidet aber Sätze und Gedanken.
- Rekursiv an Trennzeichen: Erst an Absätzen trennen, zu lange Absätze an Sätzen, zu lange Sätze an Wörtern. Ein guter Standard für Fließtext.
- Nach Struktur: Überschriften, Kapitel, Paragrafen oder Funktionen im Code bestimmen die Grenzen. Ideal für Handbücher, Verträge und technische Dokumentation.
- Semantisch: Grenzen dort, wo sich das Thema ändert, gemessen über die Ähnlichkeit aufeinanderfolgender Sätze. Aufwendiger, bei unstrukturierten Texten oft besser.
- Klein suchen, groß liefern: Gesucht wird in kleinen Abschnitten, in den Prompt kommt aber der umgebende größere Abschnitt. So ist die Suche präzise und der Kontext vollständig.
Wie groß sollten Abschnitte sein?
Eine allgemeingültige Zahl gibt es nicht. Häufig werden Abschnitte von einigen hundert Tokens verwendet. Kurze Antworten auf Faktenfragen profitieren von kleineren Abschnitten, Fragen nach Zusammenhängen von größeren. Wie viele Tokens ein Text hat, zeigt der Token-Zähler; beachten Sie, dass deutsche Texte meist mehr Tokens brauchen als englische (Tokens auf Deutsch und Englisch).
Überlappung
Bei fester Größe hilft eine Überlappung: Jeder Abschnitt beginnt mit dem Ende des vorherigen. So geht ein Gedanke, der an der Grenze liegt, nicht verloren. Der Preis sind mehr Abschnitte und damit mehr Speicher und Embedding-Kosten. Bei strukturbasiertem Chunking ist Überlappung oft unnötig. Ausprobieren lässt sich das mit dem Werkzeug Text aufteilen, das Texte nach Größe und Überlappung zerlegt.
Kontext mitgeben
Ein isolierter Abschnitt wie „Die Frist beträgt 14 Tage“ ist ohne Zusammenhang wertlos. Bewährt hat sich, jedem Abschnitt Kontext voranzustellen: Dokumenttitel, Kapitelüberschrift und gegebenenfalls einen kurzen, per KI erzeugten Satz, worum es im Dokument geht. Dieser Zusatz fließt in das Embedding ein und verbessert die Treffer spürbar.
Sonderfälle
- Tabellen: Nicht mitten in einer Tabelle trennen; Kopfzeile bei jedem Teil wiederholen oder Tabellen in Sätze umwandeln.
- Listen und Aufzählungen: Einleitungssatz zusammen mit der Liste halten.
- Code: an Funktionen und Klassen trennen, nicht an fester Zeichenzahl.
- FAQ: jede Frage mit ihrer Antwort als eigener Abschnitt.
So finden Sie die richtige Strategie
- 20 bis 50 echte Fragen sammeln und notieren, welche Textstelle die Antwort enthält.
- Zwei oder drei Strategien umsetzen.
- Messen, wie oft die richtige Stelle unter den ersten Treffern ist.
- Die beste Variante wählen und bei neuen Dokumenttypen erneut prüfen.
Wie die Abschnitte danach gesucht und sortiert werden, beschreiben Hybride Suche und Reranking erklärt; den Gesamtaufbau zeigt RAG-Pipeline bauen.
Erstellt mit Unterstützung von KI, geprüft und redaktionell verantwortet von Leon Blatz. Allgemeine Information, keine Rechts-, Steuer- oder Finanzberatung.