Durchsuchen eines Index
Nachdem der Index erstellt und aufgefüllt wurde, können Sie ihn abfragen, um im Inhalt des indizierten Dokumentinhalts nach Informationen zu suchen. Sie können zwar Indexeinträge anhand einer einfachen Zuordnung von Feldern und Werten abrufen, in den meisten Suchlösungen wird jedoch der Index mithilfe einer Volltextsuche abgefragt.
Volltextsuche
Suchlösungen, die Volltextsuche verwenden, analysieren textbasierte Dokumentinhalte nach Abfragebegriffen. Abfragen mit Volltextsuche in Azure KI-Suche basieren auf der Lucene-Abfragesyntax. Diese stellt einen umfangreichen Satz von Abfragevorgängen für das Suchen, Filtern und Sortieren von Daten in Indizes bereit. Azure KI-Suche unterstützt zwei Varianten der Lucene-Syntax:
- Einfach: Eine intuitive Syntax, die das Ausführen grundlegender Suchvorgänge erleichtert, bei denen die von einem Benutzer gesendeten Literalabfrageausdrücke verglichen werden.
- Vollständig: Eine erweiterte Syntax, die komplexe Filterung, reguläre Ausdrücke und andere komplexere Abfragen unterstützt.
Clientanwendungen senden Abfragen an Azure KI-Suche, indem ein Suchausdruck zusammen mit anderen Parametern angegeben wird, die bestimmen, wie der Ausdruck ausgewertet wird und die Ergebnisse zurückgegeben werden. Einige allgemeine Parameter, die mit einer Abfrage übermittelt werden:
- search: Ein Suchausdruck, der die zu suchenden Begriffe enthält
- queryType: Die auszuwertende Lucene-Syntax (einfach oder vollständig)
- searchFields: Die Indexfelder, die durchsucht werden sollen
- select: Die Felder, die in die Ergebnisse eingeschlossen werden sollen
- searchMode: Kriterien für das Einschließen von Ergebnissen auf der Grundlage mehrerer Suchbegriffe Angenommen, Sie suchen nach komfortables Hotel. Mit dem searchMode-Wert Any werden Dokumente zurückgegeben, die „komfortabel“, „Hotel“ oder beides enthalten. Mit dem searchMode-Wert All werden nur Dokumente zurückgegeben, die sowohl „komfortabel“ als auch „Hotel“ enthalten.
Die Abfrageverarbeitung besteht aus vier Phasen:
- Abfrageanalyse. Der Suchausdruck wird ausgewertet und als Struktur geeigneter Unterabfragen neu erstellt. Unterabfragen können Abfragen von Begriffen (Suchen nach bestimmten einzelnen Wörtern im Suchausdruck, z. B. Hotel), Abfragen von Ausdrücken (Suchen nach mehrere Begriffe umfassenden Ausdrücken im Suchausdruck, z. B. "kostenloses Parken") und Präfixabfragen (Suchen nach Begriffen mit einem angegebenen Präfix, z. B. ergibt Luft* eine Übereinstimmung mit Luftröhre, Luftfilter und Luftbuchung) umfassen.
- Lexikalische Analyse: Die Abfragebegriffe werden basierend auf linguistischen Regeln analysiert und verfeinert. Beispielsweise werden Texte in Kleinbuchstaben konvertiert und nicht wesentliche Stoppwörter (z. B. "der, die, das", "ein, einer, eine", "ist" usw.) entfernt. Dann werden Wörter in ihre Stammform umgewandelt (z. B. "komfortabel" wird dann vereinfacht in "Komfort") und zusammengesetzte Wörter werden in ihre Bestandteilbegriffe aufgeteilt.
- Dokumentenabruf: Die Abfragebegriffe werden mit den indizierten Begriffen verglichen, und die übereinstimmenden Dokumente werden identifiziert.
- Bewertung: Jedem Ergebnis wird auf der Grundlage der TF/IDF-Berechnung (Term Frequency/Inverse Document Frequency, Vorkommenshäufigkeit/Inverse Dokumenthäufigkeit) eine Relevanzbewertung zugewiesen.
Hinweis
Weitere Informationen zum Abfragen eines Index sowie Details zur einfachen und vollständigen Syntax finden Sie in der Dokumentation zu Azure KI-Suche unter Abfragen in Azure KI-Suche.