Aufbau einer erweiterten lokalen LLM RAG-Pipeline durch Kombination dichter Einbettungen mit BM25

Codeausschnitt aus der Hybridsuche, die wir in diesem Artikel implementieren werden. Bild vom Autor

Die grundlegende Retrieval-Augmented Technology (RAG)-Pipeline verwendet ein Encodermodell, um bei einer Abfrage nach ähnlichen Dokumenten zu suchen.

Dies nennt man auch semantische Suche weil der Encoder Textual content in eine hochdimensionale Vektordarstellung (Einbettung genannt) umwandelt, in der semantisch ähnliche Texte nahe beieinander liegen.

Bevor wir Giant Language Fashions (LLMs) hatten, um diese Vektoreinbettungen zu erstellen, struggle der BM25-Algorithmus ein sehr beliebter Suchalgorithmus. BM25 konzentriert sich auf wichtige Schlüsselwörter und sucht nach exakten Übereinstimmungen in den verfügbaren Dokumenten. Dieser Ansatz heißt Stichwortsuche.

Wenn Sie Ihre RAG-Pipeline auf die nächste Ebene bringen möchten, sollten Sie versuchen Hybridsuche. Die Hybridsuche kombiniert die Vorteile der Stichwortsuche und der semantischen Suche, um die Suchqualität zu verbessern.

In diesem Artikel behandeln wir die Theorie und implementieren alle drei Suchansätze in Python.

Inhaltsverzeichnis

· RAG-Abruf
Stichwortsuche mit BM25
Semantische Suche mit dichten Einbettungen
Semantische Suche oder Hybridsuche?
Hybride Suche
Alles zusammenfügen
·…

Von admin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert