Freigeben über


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 Azure-Portal für die meisten Aufgaben verwenden können, ist Azure KI-Suche 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?

Bei Vektoren bestimmen die verwendeten Einbettungsmodelle die linguistische Erfahrung.

Bei nicht Vektorzeichenfolgen und Zahlen ist der standardanalysator, der für die Tokenisierung verwendet wird, der Standard lucene, der sprachagnostisch ist. Andernfalls wird die Sprachunterstützung durch Sprachanalysetools ausgedrückt, die linguistische Regeln auf eingehende Inhalte (Indizierung) und ausgehende Inhalte (Abfragen) anwenden. Einige Features wie Rechtschreibprüfung und Abfrageumschreibung sind auf eine Teilmenge der Sprachen beschränkt.

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 oder herabstufen?

Dienste, die vor April 2024 in ausgewählten Regionen erstellt wurden, können auf Cluster mit höherer Kapazität aktualisiert werden. Das Herabstufen Ihres Diensts wird nicht unterstützt.

Um mehr Kapazität zu erhalten, können Sie auch zu einem höheren Preisniveau wechseln. Ihre Region kann keine Kapazitätsbeschränkungen auf der höheren Ebene haben, und Sie können nur zwischen den Ebenen "Basic" und "Standard" (S1, S2 und S3) nach oben wechseln, z. B. von "Einfach" zu "S1". Derzeit können Sie nicht zu einer niedrigeren Ebene wechseln.

Kann ich den Dienst umbenennen oder verschieben?

Der Dienstname und die 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.

Warum werden unterschiedliche Speichergrenzwerte für Suchdienste auf derselben Ebene angezeigt?

Speichergrenzwerte können je nach Erstellungsdatum des Diensts variieren. In den meisten unterstützten Regionen weisen neuere Dienste höhere Speichergrenzwerte als ältere Dienste auf, auch wenn sie sich auf derselben Ebene befinden. Möglicherweise können Sie jedoch Ihren alten Dienst aktualisieren , um auf die neuen Grenzwerte zuzugreifen.

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 aufteilen und vektorisieren, wenn Sie die integrierte Vektorisierung verwenden und eine Abhängigkeit von Indexern und Skillsets besteht.

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 Einbettungsmodell, um die Suchabfrage in eine Vektordarstellung zu transformieren. 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. Es gibt mehrere Datentypen für Vektorfelder.

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 ist jetzt allgemein verfügbar.

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?

In Azure KI-Suche wurden global verbesserte Größenbeschränkungen für Vektorindizes für neue Suchdienste eingeführt, aber in einigen Regionen treten Kapazitätseinschränkungen auf, und einige Regionen verfügen nicht über die erforderliche Infrastruktur. Neue Suchdienste, die nach Mai 2024 in unterstützten Regionen erstellt wurden, sollten erhöhte Größenbeschränkungen für Vektorindexe sehen. Alternativ können Sie, wenn Sie über einen vorhandenen Dienst in einer unterstützten Region verfügen, Ihren Dienst aktualisieren , um auf die neuen Grenzwerte zuzugreifen.

Warum zeigt mein Vektorindex null Speicher an?

Nur Vektorindizes, die den Algorithmus für hierarchische Navigable Small World (HNSW) verwenden, berichten über die Vektorindexgröße im Azure-Portal. Wenn Ihr Index vollständige KNN verwendet, wird als Vektorindexgröße 0 (null) gemeldet, obwohl der Index Vektoren enthält.

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 die neueste stabile Version , 2024-07-01 oder ein Azure SDK, um den Index zu erstellen oder zu aktualisieren, Dokumente zu laden und Abfragen auszustellen. Weitere Informationen finden Sie unter Erstellen eines Vektorindex.

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?

Es speichert Ihre Daten in der Geografie (geografischer Raum), in der Ihr Dienst bereitgestellt wird. Microsoft repliziert Ihre Daten möglicherweise innerhalb desselben geografischen Raums für hohe Verfügbarkeit und Dauerhaftigkeit. Weitere Informationen finden Sie unter Datenresidenz in Azure.

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

Ja, Skills und Vektorisierer führen ausgehende Anrufe von der Azure KI-Suche an andere Azure-Ressourcen oder externe Modelle aus, die Sie für das Einbetten oder Chatten angeben. Aufrufe dieser APIs enthalten in der Regel unformatierten Inhalt, der verarbeitet werden soll, oder Abfragen, die durch ein Einbettungsmodell vektorisiert werden. Bei Azure-zu-Azure-Verbindungen sendet der Dienst Anforderungen über das interne Netzwerk. Wenn Sie einen benutzerdefinierten Skill oder Vektorisierer hinzufügen, sendet der Indexer Inhalte an den URI, der in der benutzerdefinierten Qualifikation über das öffentliche Netzwerk bereitgestellt wird, es sei denn, Sie konfigurieren eine freigegebenen private Verbindung.

Verarbeitet die Azure KI-Suche Kundendaten in anderen Regionen?

Die Verarbeitung (Vektorisierung oder angewendete KI-Transformationen) wird im geografischen Raum durchgeführt, der die von Skills verwendeten Azure KI-Dienste hostet, oder in den Azure-Apps oder -Funktionen, die benutzerdefinierte Skills hosten, oder in der Azure OpenAI- oder Azure KI Foundry-Region, die Ihre bereitgestellten Modelle hostet. Diese Ressourcen werden von Ihnen angegeben, sodass Sie auswählen können, ob sie in demselben Geografischen Bereich wie Ihr Suchdienst bereitgestellt werden sollen.

Wenn Sie Daten an externe Modelle oder Dienste (nicht Azure) senden, wird der Verarbeitungsspeicherort vom externen Dienst bestimmt.

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

Das können Sie, wenn Sie eine Lösung implementieren, die Dokumente einer Benutzeridentität zuordnet. 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. Schritte und Skripts finden Sie unter Erste Schritte mit dem Python Enterprise-Chatbeispiel mit RAG.

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?