Konfigurieren der semantischen Rangfolge und Zurückgeben von Beschriftungstext in Suchergebnissen

In diesem Artikel erfahren Sie, wie Sie eine semantische Rangfolge für ein Resultset aufrufen und dabei die semantisch relevantesten Ergebnisse an den Anfang des Stapels heraufstufen. Sie können auch semantische Beschriftungen mit Hervorhebungen der relevantesten Begriffe und Ausdrücke sowie semantische Antworten abrufen.

Voraussetzungen

  • Ein Suchdienst auf der Basic-Ebene, auf der Standardebene (S1, S2, S3) oder auf der speicheroptimierten Ebene (L1, L2), sofern in der Region verfügbar.

  • Der semantische Sortierer muss für Ihren Suchdienst aktiviert sein.

  • Ein vorhandener Suchindex mit Rich-Text-Inhalt. Die semantische Rangfolge gilt für Textfelder (im Gegensatz zu Vektorfeldern) und eignet sich am besten für informative oder beschreibende Inhalte.

Auswählen eines Clients

Wählen Sie einen Suchclient aus, der die semantische Rangfolge unterstützt. Hier einige Optionen:

Hinzufügen einer semantischen Konfiguration

Eine semantische Konfiguration ist ein Abschnitt in Ihrem Index, der Feldeingaben für die semantische Rangfolge festlegt. Sie können eine semantische Konfiguration jederzeit und ohne erneute Erstellung hinzufügen oder aktualisieren. Wenn Sie mehrere Konfigurationen erstellen, können Sie eine Standardkonfiguration angeben. Geben Sie zur Abfragezeit in einer Abfrageanforderung eine semantische Konfiguration an, oder lassen Sie sie leer, um die Standardkonfiguration zu verwenden.

Eine semantische Konfiguration hat einen Namen und folgende Eigenschaften:

Eigenschaft Merkmale
Feld „Title“ (Titel) Eine kurze Zeichenfolge, idealerweise mit weniger als 25 Wörtern. Bei diesem Feld kann es sich um den Titel eines Dokuments, um den Namen eines Produkts oder um einen eindeutigen Bezeichner handeln. Falls Sie über kein geeignetes Feld verfügen, lassen Sie es leer.
Inhaltsfelder Längere Textblöcke in natürlicher Sprache. Hierfür gelten die maximalen Tokeneingabegrenzwerte der Machine Learning-Modelle. Gängige Beispiele sind der Textkörper eines Dokuments, die Beschreibung eines Produkts oder anderer Freitext.
Schlüsselwortfelder Eine Liste mit Schlüsselwörtern – beispielsweise die Tags in einem Dokument oder ein beschreibender Begriff (etwa die Kategorie eines Elements).

Sie können nur ein einzelnes Titelfeld angeben. Die Anzahl von Inhalts- und Schlüsselwortfeldern ist dagegen unbegrenzt. Listen Sie die Inhalts- und Schlüsselwortfelder in der Reihenfolge ihrer Priorität auf, da Felder mit niedrigerer Priorität möglicherweise abgeschnitten werden.

Bei allen Eigenschaften der semantischen Konfiguration gilt für die Felder, die Sie zuweisen, Folgendes:

  • Sie müssen über die Attribute searchable und retrievable verfügen.
  • Es muss sich um Zeichenfolgen vom Typ Edm.String oder Collection(Edm.String) bzw. um Zeichenfolgenunterfelder vom Typ Collection(Edm.ComplexType) handeln.
  1. Melden Sie sich beim Azure-Portal an, und navigieren Sie zu einem Suchdienst, für den die semantische Rangfolge aktiviert ist.

  2. Öffnen Sie in Indizes im linken Navigationsbereich einen Index.

  3. Wählen Sie Semantische Konfigurationen und dann Semantische Konfiguration hinzufügen aus.

    Die Seite Neue semantische Konfiguration wird geöffnet und enthält Optionen für das Auswählen eines Titelfelds, von Inhaltsfeldern und Schlüsselwortfeldern. Nur durchsuchbare und abrufbare Zeichenfolgenfelder sind berechtigt. Achten Sie darauf, Inhaltsfelder und Schlüsselwortfelder in der Prioritätsreihenfolge aufzulisten.

    Screenshot that shows how to create a semantic configuration in the Azure portal.

    Klicken Sie zum Speichern der Änderungen auf OK.

Migrieren von Vorschauversionen

Falls Ihr Code für die semantische Rangfolge Vorschau-APIs verwendet, erfahren Sie in diesem Abschnitt, wie Sie zu stabilen Versionen migrieren. Sie können die Änderungsprotokolle prüfen, um die allgemeine Verfügbarkeit zu überprüfen:

Verhaltensänderungen:

  • Seit dem 14. Juli 2023 ist der semantische Sortierer sprachunabhängig. Sie kann Ergebnisse aus mehrsprachigen Inhalten ohne Verzerrung in Richtung einer bestimmten Sprache neu priorisieren. In Vorschauversionen wurde die Priorität von Ergebnissen, die nicht der von der Feldanalyse angegebenen Sprache entsprachen, durch die semantische Rangfolge heruntergesetzt.

  • In 2021-04-30-Preview und allen höheren Versionen definiert für die REST-API und alle SDK-Pakete für dieselbe Version: semanticConfiguration (in einer Indexdefinition) definiert, welche Suchfelder in der semantischen Rangfolge verwendet werden. In der REST-API-Version 2020-06-30-Preview wurde zuvor searchFields (in einer Abfrageanforderung) für die Angabe und Priorisierung von Feldern verwendet. Dieser Ansatz funktionierte nur in 2020-06-30-Preview und ist in allen anderen Versionen veraltet.

Schritt 1: Entfernen von „queryLanguage“

Die Engine für die semantische Rangfolge ist jetzt sprachunabhängig. Wenn queryLanguage in Ihrer Abfragelogik angegeben ist, wird diese Angabe nicht mehr für die semantische Rangfolge verwendet. Sie gilt allerdings weiterhin für die Rechtschreibkorrektur.

Behalten Sie queryLanguage bei Verwendung der Rechtschreibprüfung bei, und wenn der Sprachwert von der Rechtschreibprüfung unterstützt wird. Die Rechtschreibprüfung verfügt über eingeschränkte Verfügbarkeit in verschiedenen Sprachen.

Andernfalls löschen Sie queryLanguage.

Schritt 2: Ersetzen von searchFields durch semanticConfiguration

Wenn Ihr Code die REST-API-Version 2020-06-30-Preview oder Beta-SDK-Pakete aufruft, die auf diese REST-API-Version ausgerichtet sind, verwenden Sie möglicherweise searchFields in einer Abfrageanforderung, um semantische Felder und Prioritäten anzugeben. In den ersten Betaversionen hatte searchFields einen doppelten Zweck, nämlich die Einschränkung der ursprünglichen Abfrage auf die in searchFields aufgeführten Felder und die Festlegung der Feldpriorität, wenn eine semantische Rangfolge verwendet wurde. In späteren Versionen behält searchFields ihren ursprünglichen Zweck bei, wird jedoch nicht mehr für die semantische Rangfolge verwendet.

Behalten Sie searchFields in Abfrageanforderungen bei, wenn Sie sie verwenden, um die Volltextsuche auf die Liste der benannten Felder zu beschränken.

Fügen Sie ein semanticConfiguration zu einem Indexschema hinzu, um die Feldpriorisierung anzugeben, und folgen Sie den Anweisungen in diesem Artikel.

Nächste Schritte

Testen Sie die semantische Konfiguration, indem Sie eine semantische Abfrage ausführen.