Vektordatenbankanbieter Qdrant präsentiert neuen Algorithmus für hybride Suche

Qdrant führt mit BM42 einen neuen, auf Retrieval Augmented Generation zugeschnittenen Suchalgorithmus ein, der die Vorteile von Transformern nutzt.

In Pocket speichern vorlesen Druckansicht

(Bild: iX / erstellt mit ChatGPT)

Lesezeit: 3 Min.

Das Vektordatenbank-Startup Qdrant will seine quelloffene Datenbank und Vector Search Engine gezielter auf moderne Anwendungsfälle im Bereich KI und Suche wie insbesondere Retrieval Augmented Generation (RAG) zuschneiden. Dazu präsentiert das Unternehmen jetzt unter der Bezeichnung BM42 einen neuen Suchalgorithmus, der als Alternative zu etablierten Varianten wie etwa BM25 oder SPLADE positioniert wird.

Laut der Ankündigung von Qdrant-CTO und -Mitgründer Andrey Vasnetsov verfolgt BM42 einen innovativen Ansatz, der die Stärken des klassischen BM25-Algorithmus mit den Vorteilen von Transformer-basierten KI-Modellen kombiniert: Zum einen die Einfachheit und Interpretierbarkeit von BM25 und andererseits die semantische Intelligenz von Transformer-Modellen.

Im Unterschied zu klassischen Suchanwendungen sind bei RAG-Systemen die Dokumente in der Regel viel kürzer. Der BM42-Algorithmus adressiert dieses Problem, indem er die Termgewichtung innerhalb eines Dokuments durch semantische Informationen aus Transformer-Modellen ersetzt. Während er die aus BM25 bekannte Inverse Document Frequency (IDF) beibehält, die die Wichtigkeit eines Terms in Bezug auf die gesamte Dokumentensammlung misst, verwendet BM42 anstelle der statistischen Termhäufigkeit innerhalb eines Dokuments die Attention-Werte aus Transformer-Modellen, um die Bedeutung eines Wortes für das gesamte Dokument zu bestimmen.

Vasnetsov zufolge kann BM42 durch das Verwenden der Attention-Werte die semantische Bedeutung von Wörtern berücksichtigen, ohne auf zusätzliches Training angewiesen zu sein. Dabei wird eine spezielle Tokenisierungsmethode eingesetzt, die besser für Suchaufgaben geeignet ist. Das Token [CLS] repräsentiert die gesamte Sequenz in den Klassifizierungsaufgaben. Wie im nachfolgenden Listing zu sehen, lässt sich anhand der Aufmerksamkeitszeile für das Token die Bedeutung jedes Tokens im Dokument für das gesamte Dokument ermitteln.

sentences = "Hello, World - is the starting point in most programming languages"

features = transformer.tokenize(sentences)

# ...

attentions = transformer.auto_model(**features, output_attentions=True).attentions

weights = torch.mean(attentions[-1][0,:,0], axis=0)                       
#                ▲               ▲  ▲   ▲                                 
#                │               │  │   └─── [CLS] token is the first one
#                │               │  └─────── First item of the batch         
#                │               └────────── Last transformer layer       
#                └────────────────────────── Averate all 6 attention heads

for weight, token in zip(weights, tokens):
    print(f"{token}: {weight}")

# [CLS]       : 0.434 // Filter out the [CLS] token
# hello       : 0.039
# ,           : 0.039
# world       : 0.107 // <-- The most important token
# -           : 0.033
# is          : 0.024
# the         : 0.031
# starting    : 0.054
# point       : 0.028
# in          : 0.018
# most        : 0.016
# programming : 0.060 // <-- The third most important token
# languages   : 0.062 // <-- The second most important token
# [SEP]       : 0.047 // Filter out the [SEP] token

BM42 bietet laut der Ankündigung über die verbesserten Suchergebnisse bei kurzen Dokumenten sowie deren Nachvollziehbarkeit und Erklärbarkeit hinaus noch eine Reihe von Vorteilen, die Entwicklerinnen und Entwicklern zugutekommen. Der Algorithmus lasse sich einfach in bestehende Systeme integrieren und zeichne sich durch hohe Effizienz bei geringem Speicherbedarf aus. Durch die Möglichkeit, verschiedene Transformer-Modelle einzusetzen, gewinnen Anwenderinnen und Anwender mehr Flexibilität. Dank der Kombination von BM42 mit Dense Embeddings in einem hybriden Suchansatz lassen sich Vasnetsov zufolge derzeit bestmögliche Ergebnisse erzielen, bei denen das Sparse-Modell für die exakte Token-Übereinstimmung und das Dense-Modell für die semantische Ähnlichkeit zuständig ist.

Mehr Infos

(Bild: DOAG)

Am 20. und 21. November 2024 geht die KI Navigator in die zweite Runde. Die von DOAG, Heise Medien und de'ge'pol ausgerichtete Veranstaltung findet erneut im Nürnberg Convention Center Ost statt. KI Navigator ist die Konferenz zur Praxis der KI in den drei Bereichen IT, Wirtschaft und Gesellschaft. Sie widmet sich der konkreten Anwendung von künstlicher Intelligenz.

Das Programm enthält unter anderem Vorträge zu Vektordatenbanken und zu Retrieval Augmented Generation. Bis zum 30. September sind Tickets zum Frühbucherpreis erhältlich.

Mehr Details zu BM42 sowie technische Hintergrundinformationen zu Suchalgorithmen wie BM25 oder SPLADE finden sich in der Ankündigung von Andrey Vasnetsov. Wer darüber hinaus tiefer in die Diskussion einsteigen und Qdrant-Projekte kennenlernen möchte, dem steht der Discord-Channel offen.

(map)