Start KI-Lösungen Fertige Lösungen Peers & Simulation RAG & Retrieval Use Cases Frameworks Blog English Kontakt
Zurück zum Blog

Der Index wurde teuer, bevor es jemandem auffiel

Niemand plant damit, dass der Index zum teuren Teil wird. Er beginnt als Rundungsfehler neben den Modellkosten, wächst mit dem Bestand statt mit der Nutzung, und wenn er auf einer Rechnung sichtbar wird, wächst er bereits seit einem Jahr.

Wie es sich angeschlichen hat

Das System begann mit rund zweihunderttausend Chunks, und der Vektorindex kostete neben den Modellaufrufen so wenig, dass ihn niemand in eine Grafik nahm. Drei Jahre und mehrere Dokumentquellen später hielt er etwa vier Millionen, und der Index war die zweitgrößte Position der monatlichen Infrastrukturkosten.

Das Wachstumsmuster ist die Falle. Modellkosten folgen der Nutzung, steigen also, wenn das System genutzt wird und jemand einen Nutzen davon hat. Indexkosten folgen dem Bestand, steigen also, wenn Dokumente hinzukommen — ob sie jemand abfragt oder nicht.

Dokumentechunks · vektoren Indexvektor + volltextgraph Frage Hybride Sucherrf Rerankercross-encoder Antwortmit quellen
Dokumente werden gechunkt, eingebettet und indexiert — Vektoren plus Volltext. 1/4

Was wir zuerst gemessen haben

Wie viel des Bestands überhaupt je abgerufen wird. Wir haben ein Jahr Anfragen genommen und die verschiedenen Chunks in den Topergebnissen gezählt: rund elf Prozent. Weitere zwanzig Prozent waren mindestens einmal in einem weiteren Kandidatensatz aufgetaucht, und die übrigen zwei Drittel waren nie zurückgegeben worden.

Diese Zahl verschob das Gespräch von wie speichern wir vier Millionen Vektoren günstiger zu warum speichern wir alle vier Millionen in derselben Stufe. Das sind verschiedene Probleme, und das zweite hat billigere Antworten.

Das Verfahren und sein Preis

Jeong veröffentlichte Anfang 2025 eine Arbeit zur Vier-Bit-Quantisierung von Embeddings für Retrieval-Augmented Generation — der direkte Weg: jede Vektorkomponente mit geringerer Genauigkeit speichern und einen Verlust in der Ähnlichkeitsberechnung hinnehmen.

Auf unserem Bestand senkte die Quantisierung den Indexspeicher um rund drei Viertel. Die Retrieval-Qualität auf dem Referenzset fiel um etwa anderthalb Punkte beim Topergebnis und deutlich weniger bei der Frage, ob die richtige Passage irgendwo unter den ersten zehn war — die Zahl, auf die es ankommt, wenn danach ein Reranker läuft.

AnsatzWirkung bei uns
Vektoren quantisierenDrei Viertel weniger Speicher, kleiner Qualitätspreis
Zwei Stufen, heiß und kaltGroße Ersparnis, mehr bewegliche Teile
Nie Abgerufenes löschenVerlockend und falsch. Es heißt: noch nicht
Weniger, bessere ChunksDie billigste Behebung — zuletzt gemacht

Was wir tatsächlich betreiben

Quantisierte Vektoren für den gesamten Bestand in der durchsuchbaren Stufe und volle Genauigkeit nur für das Reranking, das einige Dutzend Kandidaten sieht statt vier Millionen. Genauigkeit dort, wo die Entscheidung fein ist; Kompression dort, wo es nur darum geht, das Feld einzuengen.

Diese Anordnung hat den größten Teil des Qualitätsverlusts zurückgeholt, denn der grobe Durchgang muss nur die richtige Passage in den Kandidatensatz bringen, und der teure Vergleich findet danach auf Vektoren statt, die nie komprimiert wurden.

Die Löschung, die wir nicht vorgenommen haben

Zwei Drittel des Bestands waren nie abgerufen worden, und sie zu löschen wäre die größte verfügbare Ersparnis gewesen. Wir haben es nicht getan, denn nie abgerufen ist eine Aussage über die bisher gestellten Fragen — und wenn jemand zum ersten Mal nach einem gelöschten Dokument fragt, scheitert das System nicht sichtbar. Es antwortet aus etwas anderem.

Das ist dasselbe Prinzip wie im Rest unserer Retrieval-Arbeit: Ein fehlendes Dokument erzeugt eine selbstsichere Antwort aus benachbartem Material, und das ist schlimmer als ein teurer Index. Wir archivieren statt zu löschen, und Archiviertes bleibt auffindbar, nur langsamer.

Die Behebung, die zuerst gehört hätte

Das Chunking. Als wir endlich hinsahen, erzeugte unser Chunker erhebliche Überlappung zwischen benachbarten Chunks — eine vernünftige Voreinstellung, die vor Jahren für einen anderen Bestand gewählt und nie wieder angefasst worden war. Die Überlappung zu verringern entfernte fast ein Fünftel der Vektoren ohne messbare Qualitätsänderung.

Das ist der unspektakulärste Befund dieses Beitrags und der, den wir zuerst wiederholen würden. Bevor man komprimiert, was man speichert, prüfe man, ob man dieselben Sätze viermal speichert — denn eine Chunker-Voreinstellung ist genau die Art Entscheidung, die nie überprüft wird.

Was wir heute beobachten

Indexgröße und -kosten auf demselben Dashboard wie die Modellausgaben, mit einer Kennzahl je tausend Chunks, damit Wachstum sichtbar wird, bevor es teuer ist. Und den Anteil des Bestands, der in den letzten neunzig Tagen abgerufen wurde — das Signal dafür, dass eine Quelle hinzugefügt wurde und nicht genutzt wird.

Diese zweite Zahl hat einen Importlauf gefunden, der sieben Monate lang still einen Dokumentbestand einlas, den niemand angefragt hatte. Ihn abzuschalten sparte mehr als die Quantisierung.

Was wir nicht behaupten

Wir behaupten nicht, Quantisierung sei kostenlos. Sie kostet Retrieval-Qualität, wir haben auf unserem Bestand gemessen wie viel, und ein System ohne Reranker, der den Verlust auffängt, würde es stärker spüren als unseres.

Wir behaupten auch nicht, unsere elf Prozent Abrufquote seien typisch. Es ist ein Bestand mit einem langen Schwanz selten konsultierter technischer Dokumente, und eine Wissensbasis häufig gefragter Inhalte sähe völlig anders aus.

Quellen