Neuronale Suche mit Dense Vector Search in Apache Solr
Wie man eine Dense Vector Search unter der Verwendung von Python auf Apache Solr ermöglichen kann und wie sich die Suchergebnisse von klassischen Suchen unterscheiden.

15. Juni 2025, 10:26 Uhr · Quelle: Pressebox
Neuronale Suche mit Dense Vector Search in Apache Solr ermöglicht die Indexierung und Suche von semantischen Vektoren, was die Suchergebnisse erheblich verbessert. Durch den Einsatz von Deep Learning-Modellen können relevantere und kontextbezogene Ergebnisse gefunden werden, was traditionelle Suchmethoden übertrifft.

Augsburg, 15.06.2025 (PresseBox) - Die Entwicklung von Natural Language Processing und Machine Learning in den letzten Jahren bietet faszinierende Möglichkeiten im Bereich des Information Retrievals. Vor allem für das Erkennen von semantischen Zusammenhängen wird Neural Language Processing auch in der Suche (oft als neuronale Suche bezeichnet) eingesetzt. Neuronale Suche wurde im Jahr 2022 mit der Version 9.0 auch in Apache Solr eingeführt und bietet die Möglichkeit, eine Dense Vector Search in Solr durchzuführen. Dense Vector Search ist ein Feature vonApache Solr,das die Indexierung und die Suche von Dense Numerical Vektoren ermöglicht. Sowohl die Query als auch die Dokumente werden dabei als Vektoren repräsentiert. Deep Learning Modelle können verwendet werden, um diese Repräsentation zu schaffen. Dense Vector Search von Apache Solr gehört zu den sogenannten neural-network-based Methoden, die ein Teil des Neural Information Retrievals sind. In diesem Blogbeitrag möchte ich Ihnen gerne folgendes Thema vorstellen: Wie man eine Dense Vector Search unter der Verwendung von Python auf Apache Solr ermöglichen kann und wie sich die Suchergebnisse von klassischen Suchen unterscheiden.

Was ist eine Vektorsuche?

Damit ein Computer menschenlesbaren Text verstehen kann, muss man den Text in ein maschinenlesbares Format umwandeln. Eine Vektorsuche ist eine Methode, die in Data Retrieval und Information Retrieval-Systemen verwendet wird, um Elemente oder Dokumente zu finden, die einem bestimmten Suchvektor ähnlich oder eng mit ihm verbunden sind. Bei der Vektorsuche ist es möglich, verschiedene Datenpunkte wie Bilder, Texte sowie Audio-Dateien als Vektoren zu repräsentieren. Das Ziel der Vektorsuche ist es, effizient die relevantesten Vektoren zu finden, die einem Suchvektor ähnlich bzw. am ähnlichsten sind und diese abzurufen.

Unterschied zwischen Sparse und Dense Vektoren

Der größte Unterschied zwischen Sparse und Dense Vektoren ist, dass die ersten viele Null-Einträgen enthalten, während die zweiten mehrere Einträge beinhalten, die nicht „null“ sind. Das hat einen großen Einfluss auf das Suchergebnis.

Mit Sparse Vektoren werden alle Dimensionen durchsucht, um unter Tausenden Nullen ein paar Einsen (=relevante Informationen) zu finden. Ein traditioneller, invertierter Index speichert den Text auf Sparse Vektoren mit großer Anzahl an Dimensionen. Sogenannte Tokenizer können verwendet werden, um Sparse Vektoren direkt aus dem Text zu generieren. Alle üblichen, in Solr verfügbaren Query Parser können dann für die (textuelle) Suche verwendet werden.

In Dense Vektoren hingegen werden semantische Informationen (=Informationen über die Bedeutung des Textes) mit einer festen oder begrenzten Anzahl von Dimensionen gespeichert. Die Generierung von Dense Vektoren ist komplexer, da Deep Learning Modelle (wie BERT) dafür zurate gezogen werden müssen. Auch die Suche in Solr erfordert einen gesonderte Query Parser: knn (k-neareast neigbors). Dieser Query Parser findet zu einer Sucheingabe in Vektorformat die k Dokumente, deren gespeicherte Dense Vektoren dem Such-Vektor am ähnlichsten sind. Wie das in Solr genau funktioniert, wird im Folgenden anhand eines Beispiels im Detail beschrieben.

Dense Vector Search auf Apache Solr mit Python

Was innerhalb von Solr gemacht werden muss

Wir verwenden für das folgende Beispiel die Solr-Version 9.4.1. Um Dense Vector Search in Solr zu ermöglichen, muss als erstes das Schema (meist in der Datei „managed-schema“ oder „schema.xml“ zu finden) angepasst werden. Im Schema muss ein neues Feld und der passende Feld-Typ hinzugefügt werden:

Der neue Feld-Typ „knn_vector“ verwendet die Klasse DenseVectorField mit 384 Dimensionen. Je nach Modell kann die Anzahl an benötigten Dimensionen variieren. Für unser Beispiel benötigen wir insgesamt drei Felder: „id“ (die ID des Dokuments), „text“ und „vector“. In „text“ speichern wir den entsprechenden Text und im Vector-Feld dann die dafür generierten Vektor Embeddings.

Diese Konfiguration nutzen wir nun, um eine Collection in Solr zu erstellen.

Was außerhalb von Solr gemacht werden muss

1. Zuerst muss das richtige Modell ausgewählt werden, um die Vektor Embeddings zu generieren. Für diesen Zweck stellt die Open-Source-Plattform für Künstliche Intelligenz (KI) „Hugging Face“, zahlreiche, vortrainiert State Of The Art Modelle zur Verfügung. Wir verwenden das Modell „all-MiniLM-L12-v2“ vom SentenceTransformers Framework, das auf mehr als einer Billion von Trainingsinstanzen trainiert wurde. Es handelt sich um ein Natural Language Processing Modell, dass auf dem BERT Modell basiert ist und Sätze in Vektor Embeddings mit fester Anzahl von 384 Dimensionen umwandelt.

2. Nachdem das Modell ausgewählt wurde, muss die Python-Umgebung dementsprechend konfiguriert werden. Die Frameworks und Packages, die benötigt werden, sind: torch, sentence_transformers, pysolr, und pandas (optional für die Vorverarbeitung der Daten). Mit Hilfe von diesen Frameworks kann man mit Python die Textdaten in Vektor Embeddings transformieren und die Embeddings in einer Datei speichern. Pysolr ist ein leichter Python-Wrapper, der eine Verbindung zwischen Python und Apache Solr herstellen kann. Diese Verbindung nutzen wir für die Indexierung der Textdokumente und der Vektor Embeddings in Solr. Für das Beispiel haben wir 200 Dokumente mit entsprechenden Vektoren indexiert.

3. Wenn man die Textdokumente und ihre Vektor Embeddings indexiert hat, ist der nächste Schritt, die Queries, die man für die Suche verwenden möchte, ebenfalls in Vektor Embeddings zu transformieren. Dieser Schritt ist notwendig, da Solr selbst noch keine Möglichkeit bietet, den Text der Suchanfrage automatisch in Vektoren zu transformieren.

Die Daten

Wir haben die Daten, die wir für dieses Beispiel verwenden, mit ChatGPT generieren lassen. Wir haben ChatGPT gebeten, Kundenbewertungen von verschiedenen Produkten wie Kameras, Handys und Laptops (auf Englisch) zu generieren. Das Ergebnis waren 200 positive und negative Kundenbewertungen, die wir für unsere experimentelle, neuronale Suche verwendet haben.

Vergleich zwischen lexikalischer Suche und Dense Vector Search

Nachdem die Dokumente in Solr indexiert wurden, können wir mit einer Neuronale Suche loslegen. Zuerst formulieren wir eine lexikalische Suche, ohne das Dense Vector Feld zu verwenden, und beobachten das Ergebnis. Wir haben unsere Daten untersucht und wir wissen, dass das Wort „excited“ in einem Dokument vorkommt. Unsere Query ist „am excited“.

Der Solr Parser versucht Dokumente zu finden, in denen die Begriffe von unserer Suche vorkommen, und findet wie erwartet das eine Dokument, in dem „am excited“ enthalten ist.

Aber welche Ergebnisse findet nun dieselbe Query („am excited“), wenn wir stattdessen die Dense Vector Search verwenden? Für die Suche verwenden wir nun keinen Text, sondern die Vektor Embeddings Repräsentation der Query in Kombination mit dem knn-Query Parser.

Der „knn“ Query Parser findet die k nächsten Dokumente zum Zielvektor, „f“ legt das DenseVectorField (hier „vector“) fest, in dem gesucht werden soll, und „topK“ definiert wie viele Ergebnisse zurückgegeben werden sollen. Danach folgt der transformierten Query Vektor (der wie oben erwähnt, außerhalb von Solr erstellt werden muss).

Die Dense Vector Search liefert auch das Dokument mit dem Wort „excited“ als Ergebnis an erster Position. Im Gegensatz zur lexikalischen Suche berücksichtigt die Dense Vector Search aber auch den Kontext des Suchbegriffes im Satz. Das zeigt sich in den anderen beiden Ergebnissen, welche die liefert. Der knn Query Parser gibt Dokumente zurück, die genau wie „am excited“ eine besonders positive Bewertung wie „ecstatic“, „amazed“ oder „impressed“ beinhalten.

Unten sehen Sie noch die Ergebnisse von einem Vergleichsbeispiel zwischen einer lexikalischen Suche und einem Dense Vector Search für die Query „refund“. Es gibt in unseren Daten ein Dokument, das das Wort „refund“ beinhaltet, und insgesamt zwei Dokumente, in denen die Wortkombination „money back“ vorkommt.

Die Dense Vector Search hat sowohl das Dokument mit dem Wort „refund“ gefunden als auch die zwei Dokumente, in denen von „money back“ gesprochen wird. Auch in diesem Beispiel liefert die Dense Vector Search also zusätzlich zu den textuell passenden Ergebnissen auch solche, die semantisch zur Sucheingabe passen.

Fazit

Die Nutzung von Solr für die textbasierte Suche ist sehr weit verbreitet. Die Neuronale Suche auf Basis von Dense Vektoren wird hingegen noch nicht so häufig verwendet. Dass die Dense Vector Search in Solr eine sehr gute Möglichkeit ist, die Suchergebnisse semantisch zu verbessern, konnten wir hoffentlich in unserem Beitrag zeigen. Darüber hinaus können die Dense Vektoren in Solr aber auch für andere Aufgaben aus dem Machine Learning genutzt werden, wie Clustering, Klassifikation oder Regression. Lassen Sie uns gerne zusammen evaluieren, wie sich Ihre Solr-Suche mit Hilfe der Dense Vektoren auf das nächste Level heben lässt.

Software
[pressebox.de] · 15.06.2025 · 10:26 Uhr
[0 Kommentare]
Lir Life Sciences innovatives Pflaster gegen Übergewicht soll in die Vergleichsstudie gehen
Lüdenscheid, 14.12.2025 (lifePR) - Lir Life Sciences Corp. (ISIN: CA50206C1005 | WKN: A41QA9) , im Folgenden „Lir“ oder das „Unternehmen“, gibt mit Freude den Abschluss des Studiendesigns für eine neue vergleichende Tierstudie zur Aufnahme zellpenetrierender Peptide („CPP“) im Rahmen “GLP”-/”GIP”-basierter Adipositastherapien bekannt. “GLP” (glukoseabhängiges insulinotropes Polypeptid) und “GIP” […] (00)
vor 9 Stunden
Maria Kolesnikowa
Berlin (dpa) - Deutschland wird nach den Worten von Bundesinnenminister Alexander Dobrindt (CSU) zwei prominente Oppositionelle aus Belarus aufnehmen, die jüngst aus dem Gefängnis freigelassen wurden. Es handele sich um Maria Kolesnikowa und Ex-Präsidentenkandidat Viktor Babariko, sagte Dobrindt im ARD-«Bericht aus Berlin». Das berichtete auch das Portal «tageschau.de». «Wir haben ein großes […] (01)
vor 42 Minuten
Claire Holt
(BANG) - Claire Holt hat sich von der Schauspielerei zurückgezogen, weil sie für ihre Kinder präsent sein möchte. Die 37-Jährige war zuletzt 2022 in ihrer Rolle als Rebekah Mikaelson in dem 'The Originals'-Spin-off 'Legacies' zu sehen, das im 'Vampire Diaries'-Universum angesiedelt ist. Claire erklärte, dass sich ihre Prioritäten seit der Geburt ihrer Kinder James (6), Elle (5) und Ford (2), die […] (02)
vor 14 Stunden
SwitchBot KI Art Frame ab sofort erhältlich
Nach dem großen Erfolg auf der IFA 2025 kündigt SwitchBot, ein führender Anbieter von KI-gestützten Home-Robotics-Systemen, heute den offiziellen Start des SwitchBot KI Art Frame an – des weltweit ersten KI-gesteuerten Color E-Ink Art Frames, betrieben von NanoBanana*. Das neue Produkt bringt digitale Kreativität und lebendige Kunst in moderne Häuser. E-Ink-Leinwand für alltägliche Kunst […] (00)
vor 6 Stunden
Nintendo behebt heimlich großes HDR-Problem der Switch 2 – Die besten Einstellungen
Du willst ein gutes Bild beim Zocken, aber keine Lust auf komplizierte Menüs, Nits, Kurven und Fachbegriffe? Kein Problem. Mit dieser simplen Checkliste holst du aus deinem TV das Beste raus, egal ob (jetzt auch für) Nintendo Switch 2, PlayStation 5 oder Xbox Series X/S. Nintendo hat ohne großes Aufsehen ein echtes Technikproblem der Nintendo Switch 2 kürzlich behoben. Mit einem aktuellen […] (00)
vor 9 Stunden
3sat: Satire-Marathon am 30. Dezember
Am 30. Dezember widmet 3sat den ganzen Tag Kabarett & Comedy – von Dr. Pop und Bodo Wartke bis «Die Anstalt» und Urban Priols Jahresrückblick. Kurz vor dem Jahreswechsel wird es bei 3sat noch einmal richtig bissig: Unter dem Label „3satThementag: Kabarett & Comedy“ läuft am Dienstag, 30. Dezember 2025, ein kompletter Satire-Tag. Bereits am Morgen analysiert Dr. Pop beim 3satFestival in Hitverdächtig, wie Pop, Klassik und Wissenschaft […] (00)
vor 11 Stunden
Werder Bremen - VfB Stuttgart
Bremen (dpa) - Der VfB Stuttgart hat seine kleine Ergebniskrise in der Fußball-Bundesliga überwunden und den Anschluss an die Champions-League-Plätze wieder hergestellt. Nach zuletzt nur einem Punkt aus drei Liga-Spielen gewannen die Schwaben bei Werder Bremen mit 4: 0 (2: 0) und sind damit einen Spieltag vor dem Ende des Fußball-Jahres wieder voll auf Kurs. Für Werder war es dagegen die vierte Bundesliga-Partie in […] (01)
vor 3 Stunden
Runde Silber  Und Goldmünzen
A16z Crypto, ein Risikokapitalfonds von Andreessen Horowitz (a16z), erwartet, dass 2026 mehrere kryptobezogene Themen an Bedeutung gewinnen werden. Es werden Entwicklungen in den Bereichen Stablecoins, Tokenisierung von Real-World-Assets, Bankinfrastruktur, KI-Agentenauthentifizierung, Datenschutztechnologien und Vorhersagemärkte genannt. Wichtige Kryptothemen für 2026 Laut dem Bericht bauen neue Start-ups On- und Off-Ramps, die Stablecoins mit […] (00)
vor 1 Stunde
 
Wasserhärte-Umrechner
Bietigheim-Bissingen, 14.12.2025 (PresseBox) - Wer sich mit dem Thema Wasserfilter beschäftigt, […] (00)
Geförderte Weiterbildung statt Kurzarbeit
Issum (NRW), 14.12.2025 (PresseBox) - Der Wandel in Richtung Digitalisierung, neue […] (00)
Die Vorteile der Wärmepumpe Erdwärme: Nachhaltige Heizlösungen für Ihr Zuhause
Bietigheim-Bissingen, 13.12.2025 (PresseBox) - Einleitung zur Erdwärmepumpe als nachhaltige […] (00)
Angriff am Bondi Beach
Sydney (dpa) - Es sind schreckliche Szenen, die sich am weltberühmten Bondi Beach in der […] (00)
Review: Dreame V20 Pro-A – kraftvoller Akku-Staubsauger für flexible Reinigung
Gerade in Haushalten, in denen man sich schnelle, unkomplizierte Sauberkeit wünscht, gewinnt […] (00)
Skisprung Weltcup Klingenthal
Klingenthal (dpa) - Qualifikationssieger Philipp Raimund hat beim Weltcup-Springen in […] (02)
22. «Law & Order»-Staffel im Stream bei TF1+
Noch vor der linearen Premiere landet die komplette neue Staffel von «New York Police Judiciaire» […] (00)
Jennifer Aniston
(BANG) - Jennifer Aniston wird die Feiertage mit ihrem neuen Freund Jim Curtis verbringen. Die […] (00)
 
 
Suchbegriff