Zum Inhalt springen
ReviewRamble

Der wöchentliche Brief

KI im Test, in deinem Postfach.

  • Neue Tests von Tools, Modellen, MCP-Servern und Repos, mit dem Urteil vorneweg
  • Neu geprüfte Preise und Bewertungen, wenn sich etwas ändert
  • Neue Analysen, sobald sie erscheinen

Modelle, Agenten, MCP-Server und die Tools, die deine Zeit wirklich wert sind.

Eine E-Mail pro Woche. Abmelden kannst du dich über den Link in jedem Brief. Wie wir deine E-Mail-Adresse nutzen

KI-News & Forschung

News ·

Sentence Transformers bringt pooling-bewusstes Training für kleinere Multi-Vektor-Indizes

Tom Aarsen hat Sentence Transformers um eine Loss-Funktion erweitert, die Multi-Vektor-Retriever auf vollen und gepoolten Dokument-Embeddings zugleich trainiert. Wurden die Dokumente eines ModernBERT-Modells von etwa 193 auf 49 Vektoren gepoolt, blieben 97.8% der ungepoolten Suchqualität erhalten, gegenüber 94.6% bei normalem Training. Bei maximal vier Vektoren betrug der Gewinn 5.78 nDCG@10-Punkte.

Wer eigene Dokumente mit einem Modell im ColBERT-Stil durchsucht, hat vermutlich einen größeren Index, als ihm lieb ist. Diese Multi-Vektor-Modelle speichern einen Vektor pro Token statt einen pro Dokument, was sie präzise und teuer im Speicher macht. Ein neuer Beitrag im Hugging-Face-Blog zeigt, wie Sentence Transformers ein Modell nun so trainieren kann, dass es nach dem Zusammendrücken dieser Vektoren genau bleibt und den Großteil der üblichen Qualitätsverluste durch Kompression zurückholt.

Das Speicherproblem ist konkret. Bei 4 Bit pro Koordinate belegen 200 Vektoren mit 128 Dimensionen 12,8 KB pro Dokument, bei einer Million Dokumenten 12,8 GB. Fasst man jedes Dokument auf 50 Vektoren zusammen, sind es 3,2 GB. HierarchicalTokenPooling aus der Bibliothek verschmilzt ähnliche Token-Vektoren per Ward-Clustering, entweder um einen festen Faktor oder über eine Distanzschwelle, die sich auf einen Zieldurchschnitt kalibrieren lässt, und lässt Anfragevektoren unangetastet. Pooling funktioniert mit jedem Multi-Vektor-Modell, doch ein Modell, das nie damit trainiert wurde, kann wichtige Unterscheidungen verlieren.

Neu ist ein Verlust-Wrapper, MultiVectorTokenPoolingLoss, der mit zwei Fassungen jedes Batches trainiert: den vollständigen Dokumentvektoren und einer auf etwa ein Viertel zusammengefassten Version. Die Idee ähnelt Matryoshka-Embeddings, die kleinere Präfixe nützlich halten. Im Experiment des Autors wurden zwei ModernBERT-base-Modelle eine Epoche lang mit denselben 120.000 MS-MARCO-Tripeln trainiert und unterschieden sich nur im Verlust. Bei einem Pooling-Faktor von 4 behielt das normal trainierte Modell 94,6% seines ungepoolten NanoBEIR-Werts, das pooling-bewusste 97,8%; nDCG@10 stieg von 49,03 auf 51,23, bei 74,8% weniger gespeicherten Dokumentvektoren. Auch die ungepoolte Qualität verbesserte sich leicht. Ein GPU-Kernel für das Clustering soll 30-150x schneller sein als SciPy.

Für Teams, die PyLate nutzen, LightOns auf Sentence Transformers aufbauende Bibliothek für ColBERT-artige Suche, ist das unmittelbar relevant: Die Arbeit baut auf LightOns eigener Studie zur Pooling-Regularisierung auf, und das Trainingsrezept läuft über Hugging Face Jobs auf einer einzelnen A10G in unter vier Stunden. Der praktische Rat lautet, Quantisierung, Pooling und Matryoshka-Kürzung zu kombinieren und Indexgröße und Qualität am eigenen Korpus zu messen.

Die Vorbehalte nennt der Autor selbst. Es ist ein einzelnes Experiment mit einem Basismodell und ohne Hyperparametersuche, bewertet auf NanoBEIR, einer kleinen Benchmark-Sammlung. Der Gewinn ist beim trainierten Pooling-Faktor am deutlichsten, auch wenn er sich auf andere Einstellungen überträgt. Bei langen oder fachspezifischen Dokumenten können die Ergebnisse abweichen.

Unser Fazit: Speicherbedarf ist der Hauptgrund, warum Teams ColBERT-artiges Retrieval meiden, und drei Viertel weniger Vektoren bei geringem Verlust ändern diese Rechnung. Getestet wurde mit kleinen Modellen nach einer Epoche, prüfe es also mit deinen eigenen Daten, bevor du neu indexierst.

Unsere Testberichte:PyLate

Quelle: Hugging Face

Weitere Artikel