Einleitung

Abgeschlossen

Das Auffinden relevanter Informationen in einer Datenbank erfordert häufig mehr als übereinstimmende Schlüsselwörter. Benutzer suchen nach Konzepten, nicht nur nach Wörtern. Ein Kunde, der nach "leichtem Wanderrucksack" sucht, kann nichts finden, wenn das Produkt als "Ultralight Trail Bag" aufgeführt ist. SQL Server und Azure SQL-Datenbank bieten mehrere Suchansätze zur Behandlung dieser Herausforderungen: Volltextsuche nach Stichwortabgleich, Vektorsuche für semantische Ähnlichkeit und Hybridsuche, die beides kombiniert.

Die Volltextsuche zeichnet sich aus, wenn Benutzer die gewünschten Ausdrücke kennen. Die Vektorsuche verwendet Einbettungen, um Inhalte basierend auf der Bedeutung zu finden, auch wenn sich die genauen Wörter unterscheiden. Die Hybridsuche führt beide Ansätze aus und führt die Ergebnisse zusammen und bietet Benutzern das Beste aus beiden Welten. Die Auswahl des richtigen Ansatzes hängt davon ab, wie Ihre Benutzer suchen und welche Kompromisse Sie zwischen Genauigkeit, Rückruf und Leistung akzeptieren können.

Stellen Sie sich ein Einzelhandelsteam vor, das eine Produktsuchfunktion erstellt. Sie haben Einbettungen für ihre Produktbeschreibungen und Supportartikel gespeichert. Jetzt benötigen sie Suchfunktionen, die Kunden helfen, Produkte und Antworten schnell zu finden. Einige Kunden geben genaue Produktnamen ein. Andere beschreiben, was sie in natürlicher Sprache benötigen. Das Team entscheidet sich für die Implementierung der Hybridsuche, sodass ihre Anwendung beide Muster effektiv verarbeitet, wobei Volltextindizes für den Schlüsselwortabgleich und die Vektorsuche für semantische Ähnlichkeit verwendet werden.

Nach Abschluss dieses Moduls werden Sie zu Folgendem in der Lage sein:

  • Um den richtigen Ansatz für verschiedene Abfragetypen auszuwählen, bewerten Sie die Volltextsuche, die Vektorsuche und die Hybridsuche.
  • Implementieren der Volltextsuche mithilfe von Volltextindizes und Abfrage-Prädikaten.
  • Bereiten Sie SQL-Datenbanken für die Vektorsuche vor, indem Sie Einbettungen speichern und Entfernungsmetriken auswählen.
  • Schreiben Sie Vektorsuchabfragen mithilfe von VECTOR_DISTANCE- und VECTOR_SEARCH Funktionen.
  • Kombinieren Sie Volltext- und Vektorsuchergebnisse mithilfe der reziprozialen Rangfusion (RRF).