Bearbeiten

Azure AI Search – Häufig gestellte Fragen (FAQ)

Hier finden Sie Antworten auf häufig gestellte Fragen zu Azure AI Search.

Allgemein

Was ist Azure KI Search?

Die Azure KI-Suche bietet eine dedizierte Suchmaschine und eine dauerhafte Speicherung Ihrer durchsuchbaren Inhalte für Volltext- und Vektorsuchszenarien. Es enthält auch optionale, integrierte KI, um mehr Text und Struktur aus Rohinhalten zu extrahieren und Inhalte für die Vektorsuche aufzuteilen und zu vektorisieren.

Wie arbeite ich mit der Azure KI-Suche?

Der primäre Workflow umfasst das Erstellen, Laden und Abfragen eines Indexes. Obwohl Sie das Portal für die meisten Aufgaben verwenden können, ist Azure AI Search für die programmgesteuerte Verwendung vorgesehen, um Anforderungen von Clientcode zu behandeln. Programmgesteuerte Unterstützung wird über REST-APIs und Clientbibliotheken in .NET, Python, Java und JavaScript SDKs für Azure bereitgestellt.

Sind „Azure Search“ und „Azure Cognitive Search“ und „Azure AI Search“ dasselbe Produkt?

Azure Search wurde im Oktober 2019 in Azure Cognitive Search umbenannt, um die erweiterte (optionale) Verwendung von kognitiven Skills und KI-Verarbeitung bei Dienstvorgängen widerzuspiegeln. Azure Cognitive Search wurde im Oktober 2023 in Azure AI Search umbenannt, um sich an den Azure AI-Diensten auszurichten.

Welche Sprachen werden jetzt unterstützt?

Das standardmäßig verwendete Analysetool für die Tokenisierung ist Lucene und es ist sprachunabhängig. Andernfalls wird die Sprachunterstützung durch Sprachanalysetools ausgedrückt, die linguistische Regeln auf eingehende Inhalte (Indizierung) und ausgehende Inhalte (Abfragen) anwenden. Einige Features, z. B. die Rechtschreibprüfung, sind nur für einen Teil der Sprachen verfügbar.

Wie kann ich die Suche in meine Lösung integrieren?

Clientcode sollte die Azure SDK Clientbibliotheken oder REST-APIs aufrufen, um eine Verbindung mit einem Suchindex herzustellen, Abfragen zu formulieren und Antworten zu verarbeiten. Sie können auch Code schreiben, der einen Index erstellt und aktualisiert oder Indexer programmgesteuert oder mit einem Skript ausführt.

Besitzen die verschiedenen APIs die gleichen Funktionen?

Nicht immer. Neue Features in Vorschau-API-Versionen werden immer zuerst in der REST-API implementiert. Nach und nach rufen die Clientbibliotheken in Azure SDKs neue Features ab, die jedoch nach einem eigenen Zeitplan veröffentlicht werden.

Auch wenn die neuesten Features zuerst über die REST-APIs verfügbar sind, bieten die Azure SDKs mehr Codeunterstützung. Daher wird deren Nutzung gegenüber REST empfohlen, sofern das entsprechende Feature verfügbar ist.

Kann ich den Dienst anhalten und so die Berechnung von Gebühren stoppen?

Sie können einen Suchdienst nicht anhalten. In Azure AI Search werden die Computingressourcen beim Erstellen des Dienstes zugeordnet. Es ist nicht möglich, diese Ressourcen je nach Bedarf freizugeben und dann erneut zu nutzen.

Kann ich den Dienst aktualisieren, herabstufen, umbenennen oder verschieben?

Dienstebene, Name und Region werden für die Lebensdauer des Diensts festgelegt.

Muss ich mit Ausfallzeiten rechnen, wenn ich meinen Suchdienst zu einem anderen Abonnement oder einer anderen Ressourcengruppe migriere?

Solange Sie der Checkliste folgen, bevor Sie Ressourcen verschieben, und sicherstellen, dass jeder Schritt abgeschlossen wird, sollte keine Downtime auftreten.

Indizierung

Was bedeutet „Indizierung“ in Azure AI Search?

Bezieht sich auf Erfassung, Analyse und Speicherung von Textinhalten und Token, die einen Suchindex auffüllen. Bei der Indizierung werden invertierte Indizes und andere physische Datenstrukturen erstellt, die das Abrufen von Informationen unterstützen.

Es erstellt Vektorindizes, wenn das Schema Vektorfelder enthält.

Kann ich Indizes verschieben, sichern und wiederherstellen?

Für die Portierung von Indizes ist keine native Unterstützung verfügbar. Suchindizes gelten als nachgeschaltete Datenstrukturen, die Inhalte aus anderen Datenquellen, die operative Daten sammeln, akzeptieren. Daher gibt es keine integrierte Unterstützung für das Sichern und Wiederherstellen von Indizes. Es wird davon ausgegangen, dass Sie einen gelöschten Index oder einen Index, der verschoben werden soll, aus den Quelldaten neu erstellen.

Wenn Sie jedoch einen Index von einem Suchdienst in einen anderen verschieben möchten, können Sie den Beispielcode index-backup-restore in diesem .NET-Beispielrepository für Azure AI Search ausführen. Es gibt auch eine Python-Version der Sicherung und Wiederherstellung.

Kann ich meinen Index oder Dienst wiederherstellen, nachdem er gelöscht wurde?

Nein, wenn Sie einen Index oder Dienst für Azure AI Search löschen, kann er nicht wiederhergestellt werden. Wenn Sie einen Suchdienst löschen, werden alle Indizes in diesem Dienst dauerhaft gelöscht.

Kann ich eine Indizierung aus SQL-Datenbankreplikaten erstellen?

Wenn Sie den Suchindexer für Azure SQL-Datenbank verwenden, gibt es für neu erstellte Indizes keine Einschränkungen hinsichtlich der Verwendung von primären oder sekundären Replikaten als Datenquelle. Wenn Sie einen Index mit inkrementellen Updates (basierend auf geänderten Datensätzen) aktualisieren, wird aber das primäre Replikat benötigt. Diese Anforderung stammt aus SQL-Datenbank und garantiert die ausschließliche Änderungsnachverfolgung für primäre Replikate. Wenn Sie versuchen, sekundäre Replikate für eine Workload zur Indexaktualisierung zu verwenden, ist nicht garantiert, dass Sie alle Daten erhalten.

Vektoren

Was ist die Vektorsuche?

Die Vektorsuche ist eine Technik, welche die ähnlichsten Dokumente findet, indem sie ihre Vektordarstellungen vergleicht. Da das Ziel einer Vektordarstellung darin besteht, die wesentlichen Merkmale eines Elements in einem numerischen Format zu erfassen, können Vektorabfragen ähnliche Inhalte identifizieren, auch wenn es keine expliziten Übereinstimmungen basierend auf Schlüsselwörtern oder Tags gibt. Wenn ein Benutzer eine Suche durchführt, wird die Abfrage in eine Vektordarstellung zusammengefasst, und die Vektorsuchmaschine identifiziert die ähnlichsten Dokumente. Um die Effizienz bei großen Datenbanken zu verbessern, stellt die Vektorsuche häufig die ungefähren Nearest-Neighbors für einen Abfragevektor bereit. In der Übersicht über die Vektorsuche finden Sie die Besonderheiten des Vektorangebots der Azure KI-Suche.

Unterstützt Azure AI Search die Vektorsuche?

Azure AI Search unterstützt Vektorindizierung und -abruf. Sie kann Abfragezeichenfolgen und -inhalte vektorisieren, wenn Sie die Vorschau- und Betabibliotheken verwenden.

Wie funktioniert die Vektorsuche in Azure AI Search?

Bei der eigenständigen Vektorsuche verwenden Sie zunächst ein eingebettetes Modell, um Inhalte in eine Vektordarstellung innerhalb eines einbettenden Raums zu transformieren. Anschließend können Sie diese Vektoren in einer Dokumentnutzlast für den Suchindex für die Indizierung bereitstellen. Um Suchanforderungen zu verarbeiten, verwenden Sie dasselbe DNN aus der Indizierung, um die Suchabfrage in eine Vektordarstellung zu transformieren, und die Vektorsuche findet die ähnlichsten Vektoren und gibt die entsprechenden Dokumente zurück.

In Azure AI Search können Sie Vektordaten als Felder in Dokumenten zusammen mit Text und anderen Inhaltstypen indizieren. Der Datentyp für ein Vektorfeld lautet Collection(Edm.Single).

Vektorabfragen können eigenständig oder in Kombination mit anderen Abfragetypen, einschließlich Ausdrucksabfragen und Filtern in derselben Suchanforderung, ausgestellt werden.

Kann Azure AI Search meine Inhalte oder Abfragen vektorisieren?

Die integrierte Vektorisierung befindet sich jetzt in der öffentlichen Vorschau.

Unterstützt mein Suchdienst die Vektorsuche?

Die meisten vorhandenen Dienste unterstützen die Vektorsuche. Wenn Sie ein Paket oder eine API verwenden, das die Vektorsuche unterstützt und die Indexerstellung fehlschlägt, unterstützt der zugrunde liegende Suchdienst die Vektorsuche nicht, und ein neuer Dienst muss erstellt werden. Dies kann für eine kleine Teilmenge von Diensten auftreten, die vor dem 1. Januar 2019 erstellt wurden.

Kann ich eine Vektorsuche zu einem vorhandenen Index hinzufügen?

Wenn Ihr Suchdienst die Vektorsuche unterstützt, können vorhandene und neue Indizes Vektorfelder berücksichtigen.

Warum sehe ich unterschiedliche Größenbeschränkungen für Vektorindizes bei meinen neuen Suchdiensten und vorhandenen Suchdiensten?

Wir führen verbesserte Größenbeschränkungen für Vektorindizes weltweit für neue Suchdienste aus, aber wir bauen weiterhin Infrastrukturkapazitäten in bestimmten Regionen auf. Neue Suchdienste, die in unterstützten Regionen erstellt wurden, erhalten erhöhte Grenzwerte für Vektorindexgrößen. Leider können wir vorhandene Dienste nicht zu den neuen Grenzwerten migrieren.

Wie aktiviere ich die Vektorsuche in einem Suchindex?

Um die Vektorsuche in einem Index zu aktivieren, sollten Sie Folgendes tun:

  • Fügen Sie einer Feldauflistung ein oder mehrere Vektorfelder hinzu.

  • Fügen Sie dem Indexschema einen Abschnitt „vectorSearch“ hinzu, der die Konfiguration angibt, die von Vektorsuchfeldern verwendet wird, einschließlich der Parameter des verwendeten Algorithmus für ungefähre Nearest-Neighbors, z. B. HNSW.

  • Verwenden Sie 2023-11-01 oder ein Azure SDK, um den Index zu erstellen oder zu aktualisieren, Dokumente zu laden und Abfragen auszustellen.

Abfragen

Wo erfolgt die Abfrageausführung?

Abfragen werden über einen einzigen, in Ihrem Suchdienst gehosteten Suchindex ausgeführt. Sie können nicht mehrere Indizes verknüpfen, um Inhalte in zwei oder mehr Indizes zu durchsuchen, aber Sie können Indizes mit demselben Namen in mehreren Suchdiensten abfragen.

Warum ergeben sich keine Übereinstimmungen für Begriffe, von denen ich weiß, dass sie gültig sind?

Häufig ist Benutzer*innen in diesem Zusammenhang nicht bekannt, dass jeder Abfragetyp unterschiedliche Suchverhalten und Grade der linguistischen Analyse unterstützt. Die Volltextsuche, bei der es sich um eine gängige Workload handelt, enthält eine Sprachanalysephase, in der Ausdrücke in ihre Grundformen unterteilt werden. Dieser Aspekt der Analyse von Abfragen bewirkt, dass sich mehr Möglichkeiten für potenzielle Übereinstimmungen ergeben, da der in Token unterteilte Ausdruck mit einer größeren Zahl von Varianten übereinstimmt.

Platzhalter-, Fuzzy- und RegEx-Abfragen werden jedoch nicht wie reguläre Begriffs- oder Ausdruckabfragen analysiert und können zu einem schlechten Abruf führen, wenn die Abfrage nicht mit der analysierten Wortform im Suchindex übereinstimmt. Weitere Informationen zur Abfragenanalyse und anderen Analysen finden Sie unter Abfragearchitektur.

Warum ist eine Platzhaltersuche so langsam?

Die meisten Platzhaltersuchabfragen wie Präfix-, Fuzzy- und RegEx-Abfragen werden intern mit übereinstimmenden Begriffen im Suchindex umgeschrieben. Diese zusätzliche Verarbeitung erhöht die Latenz. Darüber hinaus können weit gefasste Suchabfragen wie z. B. a*, die wahrscheinlich mit vielen Begriffen umschrieben werden, langsam sein. Für leistungsstarke Platzhaltersuchen sollten Sie die Definition eines benutzerdefinierten Analysetools in Betracht ziehen.

Kann ich übergreifend mehrere Indizes durchsuchen?

Nein, die Suche ist immer auf einen einzelnen Index beschränkt.

Warum lautet die Suchpunktzahl für jede Übereinstimmung immer 1,0?

Suchbewertungen werden für Volltextsuchabfragen basierend auf den statistischen Eigenschaften übereinstimmender Begriffe generiert und im Resultset in absteigender Reihenfolge angezeigt. Abfragetypen, bei denen es sich nicht um eine Volltextsuche handelt (Platzhalter-, Präfix- oder RegEx-Abfragen), werden nicht nach Relevanz geordnet. Es handelt sich hierbei um ein beabsichtigtes Verhalten. Durch eine konstante Bewertungspunktzahl können per Abfrageerweiterung ermittelte Übereinstimmungen in die Ergebnisse eingebunden werden, ohne dass die Rangfolge beeinträchtigt wird.

Beispiel: Angenommen, die Eingabe von „tour*“ für eine Platzhaltersuche in englischem Text führt zu den Übereinstimmungen „tours“, „tourettes“ und „tourmaline“. Aufgrund der Art dieser Ergebnisse lässt sich nicht sicher ableiten, welche Begriffe wertvoller als andere sind. Daher werden Begriffshäufigkeiten bei der Bewertung von Ergebnissen in Abfragen vom Typ „Platzhalter“, „Präfix“ und „RegEx“ (regulärer Ausdruck) ignoriert. Suchergebnisse erhalten basierend auf einer Teileingabe eine konstante Bewertung, um eine Bevorzugung von potenziell unerwarteten Übereinstimmungen zu vermeiden.

Sicherheit

Wo speichert Azure AI Search Kundendaten?

Ihre Daten werden überall dort gespeichert, wo Ihr Dienst bereitgestellt wird. Azure AI Search speichert Kundendaten nicht außerhalb der Bereitstellungsregion.

Werden Kundendaten von Azure AI Search zur Verarbeitung an andere Dienste gesendet?

Ja. Wenn Sie die auf Azure AI Services basierenden integrierten Skills verwenden, sendet der Indexer über das interne Netzwerk Anforderungen an Azure AI Services. Wenn Sie eine benutzerdefinierte Fähigkeit hinzufügen, sendet der Indexer Inhalte an den URI, der in der benutzerdefinierten Qualifikation über das öffentliche Netzwerk bereitgestellt wird.

Kann ich den Zugriff auf Suchergebnisse basierend auf der Benutzeridentität steuern?

Nicht unbedingt. In der Regel sind Benutzer mit der Berechtigung zum Ausführen Ihrer Anwendung auch berechtigt, alle Suchergebnisse anzuzeigen. Azure AI Search verfügt über keine integrierte Unterstützung für Berechtigungen auf Zeilen- oder Dokumentebene. Zur Umgehung des Problems können Sie jedoch Sicherheitsfilter implementieren.

Kann ich den Zugriff auf Vorgänge basierend auf der Benutzeridentität steuern?

Ja, Sie können die rollenbasierte Autorisierung für Datenebenenvorgänge über Inhalte verwenden.

Kann ich das Azure-Portal verwenden, um Suchinhalte anzuzeigen und zu verwalten, wenn der Suchdienst hinter einer IP-Firewall oder einem privaten Endpunkt liegt?

Sie können das Azure-Portal in einem netzwerkgeschützten Suchdienst verwenden, wenn Sie eine Netzwerkausnahme erstellen, die den Client- und Portalzugriff ermöglicht. Weitere Informationen finden Sie unter Herstellen einer Verbindung durch eine IP-Firewall oder Herstellen einer Verbindung über einen privaten Endpunkt.

Nächste Schritte

Wenn Ihre Frage hier nicht beantwortet wurde, finden Sie in den folgenden Quellen weitere Fragen und Antworten.

Stack Overflow: Azure AI Services
Funktionsweise der Volltextsuche in Azure AI Search
Was ist Azure AI Search?