Import-Assistenten in Azure AI Search
Azure AI Search verfügt über zwei Import-Assistenten, die die Indizierung und Objektdefinitionen automatisieren, damit Sie sofort mit der Abfrage beginnen können. Falls Sie Azure KI Search noch nicht kennen, sollten Sie wissen, dass dies eine der leistungsstärksten Funktionen ist, die Ihnen zur Verfügung stehen. Mit minimalem Aufwand können Sie eine Indizierungs- oder Anreicherungspipeline erstellen, die den Großteil der Funktionen von Azure KI Search nutzt.
Der Assistent zum Importieren von Daten unterstützt nicht Vektorworkflows. Sie können alphanumerischen Text aus rohen Dokumenten extrahieren. Sie können auch angewendete KI und integrierte Fähigkeiten konfigurieren, die strukturieren und textsuchbare Inhalte aus Bilddateien und unstrukturierten Daten generieren.
Der Assistent zum Importieren und Vektorisieren von Daten unterstützt die Vektorisierung. Sie müssen eine vorhandene Bereitstellung eines Einbettungsmodells angeben, aber der Assistent stellt die Verbindung her, formuliert die Anforderung und behandelt die Antwort. Er generiert Vektorinhalte aus Text- oder Bildinhalten.
Falls Sie den Assistenten für Proof of Concept-Tests verwenden, wird in diesem Artikel auch die interne Arbeit des Assistenten erläutert, damit Sie ihn effektiver verwenden können.
Es handelt sich nicht um eine Schritt-für-Schritt-Anleitung. Hilfe zur Verwendung des Assistenten mit integrierten Beispieldaten finden Sie unter:
- Schnellstart: Erstellen eines Suchindex
- Schnellstart: Erstellen eines Skillsets für Textübersetzung und Entität
- Schnellstart: Erstellen eines Vektorindexes
- Schnellstart: Bildsuche (Vektoren)
Starten des Assistenten
Öffnen Sie im Azure-Portal im Dashboard die Seite mit dem Suchdienst, oder suchen Sie Ihren Dienst in der Liste mit den Diensten.
Wählen Sie oben auf der Seite "Dienstübersicht" die Option "Daten importieren" oder "Importieren und Vektorisieren von Daten" aus.
Der Assistent wird vollständig erweitert im Browserfenster geöffnet, damit Sie mehr Platz zum Arbeiten haben.
Wenn Sie Daten importieren ausgewählt haben, können Sie die Option Beispiele auswählen, um ein vordefiniertes Beispiel von Daten aus einer unterstützten Datenquelle zu verwenden.
Führen Sie die verbleibenden Schritte im Assistenten aus, um den Index und den Indexer zu erstellen.
Sie können den Import-Assistenten auch über andere Azure-Dienste wie etwa Azure Cosmos DB, Azure SQL-Datenbank, SQL Managed Instance und Azure Blob Storage starten. Suchen Sie auf der Übersichtsseite des Diensts im linken Navigationsbereich nach Azure KI Search hinzufügen.
Vom Assistenten erstellte Objekte
Der Assistent gibt die Objekte in der folgenden Tabelle aus. Nachdem die Objekte erstellt wurden, können Sie ihre JSON-Definitionen im Portal überprüfen oder über Code aufrufen.
Object | Beschreibung |
---|---|
Indexer | Ein Konfigurationsobjekt, das eine Datenquelle, einen Zielindex, eine optionale Qualifikationsgruppe, einen optionalen Zeitplan und optionale Konfigurationseinstellungen für die Fehlerbehandlung und Base-64-Codierung festlegt. |
Datenquelle | Speichert Verbindungsinformationen zu einer unterstützten Datenquelle in Azure. Ein Datenquellenobjekt wird ausschließlich mit Indexern verwendet. |
Index | Physische Datenstruktur, die für die Volltextsuche und andere Abfragen verwendet wird. |
Qualifikationsgruppe | Optional. Ein kompletter Satz von Anweisungen zum Bearbeiten, Transformieren und Strukturieren von Inhalten, einschließlich der Analyse und Extraktion von Informationen aus Bilddateien. Skillsets werden auch für die integrierte Vektorisierung verwendet. Sofern das Arbeitsvolumen nicht unter den Grenzwert von 20 Transaktionen pro Indexer pro Tag fällt, muss das Skillset einen Verweis auf eine Azure KI-Ressource für mehrere Dienste enthalten, die Anreicherung bietet. Für die integrierte Vektorisierung können Sie entweder Azure AI Vision oder ein Einbettungsmodell im Azure AI Studio-Modellkatalog verwenden. |
Wissensspeicher | Optional. Speichert Ausgaben aus einer KI-Anreicherungspipeline in Tabellen und Blobs in Azure Storage zur unabhängigen Analyse oder Downstreamverarbeitung. |
Vorteile
Bevor Sie Code schreiben, können Sie den Assistenten für Prototyping und Proof of Concept-Tests verwenden. Die Assistenten stellen eine Verbindung mit externen Datenquellen her, probieren Sie die Daten aus, um einen anfänglichen Index zu erstellen, und importieren sie anschließend und vektorisieren sie optional als JSON-Dokumente in einen Index in Azure AI Search.
Wenn Sie Skillsets auswerten, verarbeitet der Assistent alle Ausgabefeldzuordnungen und fügt Hilfsfunktionen hinzu, um nutzbare Objekte zu erstellen. Die Textaufteilung wird hinzugefügt, wenn Sie einen Analysemodus angeben. Textzusammenführung wird hinzugefügt, wenn Sie Bildanalyse ausgewählt haben, damit der Assistent Textbeschreibungen mit Bildinhalten wieder zusammenführen kann. Shaper-Skills wurden hinzugefügt, um gültige Projektionen zu unterstützen, wenn Sie die Option Wissensspeicher ausgewählt haben. Alle oben genannten Aufgaben haben eine Lernkurve. Wenn Sie mit der Anreicherung noch nicht fertig sind, können Sie mit der Möglichkeit, diese Schritte für Sie zu verarbeiten, den Wert eines Skills messen, ohne viel Zeit und Aufwand investieren zu müssen.
Beim Sampling handelt es sich um den Prozess, mit dem ein Indexschema abgeleitet wird. Es gelten einige Einschränkungen. Wenn die Datenquelle erstellt wurde, entscheidet der Assistent anhand einer Stichprobe von Dokumenten, welche Spalten Teil der Datenquelle sind. Nicht alle Dateien werden gelesen, da dies bei sehr großen Datenquellen möglicherweise Stunden dauern könnte. Bei einer Auswahl von Dokumenten werden Quellmetadaten verwendet, z.B. Feldname oder Typ, um eine Feldsammlung in einem Indexschema zu erstellen. Abhängig von der Komplexität der Quelldaten müssen Sie ggf. das ursprüngliche Schema zum Zwecke der Genauigkeit überarbeiten oder zur Vollständigkeit erweitern. Sie können die Änderungen auf der Indexdefinitionsseite inline vornehmen.
Insgesamt sind die Vorteile der Verwendung des Assistenten klar: Sofern die Anforderungen erfüllt sind, können Sie innerhalb weniger Minuten das Prototyping für einen abfragbaren Index vornehmen. Einige komplexe Schritte der Indizierung, z.B. das Serialisieren von Daten als JSON-Dokumente, werden vom Assistenten erledigt.
Begrenzungen
Auch für den Assistenten gelten Einschränkungen. Die Constraints sind wie folgt zusammengefasst:
Der Assistent unterstützt keine Iteration oder Wiederverwendung. Bei jedem Pass-Through erstellt der Assistent einen neue Index, eine neue Qualifikationsgruppe und eine neue Indexer-Konfiguration. Nur Datenquellen können persistent gespeichert und innerhalb des Assistenten wieder verwendet werden. Um andere Objekte zu bearbeiten oder zu verfeinern, löschen Sie entweder die Objekte, und starten Sie von vorn, oder verwenden Sie die REST-APIs oder das .NET SDK, um die Strukturen zu ändern.
Der Quellinhalt muss sich in einer unterstützten Datenquelle befinden.
Das Sampling erfolgt über eine Teilmenge der Quelldaten. Bei großen Datenquellen ist es möglich, dass der Assistent Felder auslässt. Sie müssen das Schema möglicherweise erweitern oder die abgeleiteten Datentypen korrigieren, wenn das Sampling unzureichend ist.
Die KI-Anreicherung, wie Sie im Portal verfügbar gemacht wird, ist auf eine Teilmenge integrierter Qualifikationen beschränkt.
Ein Wissensspeicher, der vom Assistenten erstellt werden kann, ist auf einige Standardprojektionen beschränkt und verwendet eine Standardnamenskonvention. Wenn Sie Namen oder Projektionen anpassen möchten, müssen Sie den Wissensspeicher über REST-API oder die SDKs erstellen.
Sichere Verbindungen
Die Import-Assistenten führen ausgehende Verbindungen über den Portalcontroller und öffentliche Endpunkte aus. Sie können die Assistenten nicht verwenden, wenn auf Azure-Ressourcen über eine private Verbindung oder über einen freigegebenen privaten Link zugegriffen wird.
Sie können die Assistenten über eingeschränkte öffentliche Verbindungen verwenden, aber nicht alle Funktionen sind verfügbar.
Für den Import der integrierten Beispieldaten in einem Suchdienst ist ein öffentlicher Endpunkt und keine Firewallregeln erforderlich.
Beispieldaten werden von Microsoft in bestimmten Azure-Ressourcen gehostet. Der Portalcontroller stellt eine Verbindung mit diesen Ressourcen über einen öffentlichen Endpunkt bereit. Wenn Sie Ihren Suchdienst hinter eine Firewall setzen, wird diese Fehlermeldung angezeigt, wenn Sie versuchen, die integrierten Beispieldaten abzurufen:
Import configuration failed, error creating Data Source
, gefolgt von"An error has occured."
.Auf unterstützten Azure-Datenquellen, die durch Firewalls geschützt sind, können Sie Daten abrufen, wenn die richtigen Firewallregeln vorhanden sind.
Die Azure-Ressource muss Netzwerkanforderungen von der IP-Adresse des Geräts zulassen, das für die Verbindung verwendet wird. Außerdem sollten Sie Azure AI Search als vertrauenswürdigen Dienst in der Netzwerkkonfiguration der Ressource auflisten. In Azure Storage können Sie z. B. als vertrauenswürdiger
Microsoft.Search/searchServices
Dienst auflisten.Bei Verbindungen mit einem Azure AI Multiservice-Konto, das Sie bereitstellen, oder bei Verbindungen zum Einbetten von Modellen, die in Azure AI Studio oder Azure OpenAI bereitgestellt werden, muss der öffentliche Internetzugriff aktiviert sein. Diese Azure-Ressourcen werden aufgerufen, wenn Sie integrierte Fähigkeiten im Assistenten zum Importieren von Daten oder integrierte Vektorisierung im Assistenten zum Importieren und Vektorisieren von Daten verwenden.
Im Assistenten zum Importieren und Vektorisieren von Daten ist der Fehler
"Access denied due to Virtual Network/Firewall rules."
Im Assistenten zum Importieren von Daten gibt es keinen Fehler, aber das Skillset wird nicht erstellt.
Wenn Firewalleinstellungen verhindern, dass Ihre Assistentenworkflows erfolgreich sind, sollten Sie stattdessen skriptgesteuerte oder programmgesteuerte Ansätze in Betracht ziehen.
Workflow
Der Assistent ist in vier Hauptschritte organisiert:
Herstellen einer Verbindung mit einer unterstützten Azure-Datenquelle.
Erstellen eines Indexschemas, das durch Sampling von Quelldaten abgeleitet wird.
Optional: Hinzufügen von KI-Anreicherungen, um Inhalte und Strukturen zu extrahieren oder zu generieren. Eingaben zum Erstellen eines Wissensspeichers werden in diesem Schritt gesammelt.
Führen Sie den Assistenten aus, um Objekte zu erstellen, optional Daten zu vektorisieren, Daten in einen Index zu laden, einen Zeitplan und andere Konfigurationsoptionen festzulegen.
Der Workflow ist eine Pipeline und daher unidirektional. Sie können den Assistenten nicht dazu verwenden, erstellte Objekte zu bearbeiten. Sie können jedoch andere Portaltools wie den Index- oder Indexer-Designer oder die JSON-Editoren für zulässige Updates verwenden.
Datenquellenkonfiguration im Assistenten
Der Datenimport-Assistent stellt mithilfe der von Azure KI Search-Indexern bereitgestellten internen Logik eine Verbindung mit einer externen unterstützten Datenquelle her. Diese Indexer sind für das Sampling der Quelle, zum Lesen von Metadaten, zum Entschlüsseln von Dokumenten, um Inhalt und Struktur zu lesen, sowie zum Serialisieren von Inhalten als JSON für den nachfolgenden Import in Azure KI Search ausgestattet.
Sie können eine Verbindung zu einer unterstützten Datenquelle in einem anderen Abonnement oder einer anderen Region einfügen, aber der Gültigkeitsbereich für die Option Vorhandene Verbindung auswählen ist auf das aktive Abonnement festgelegt.
Nicht alle Datenquellen der Vorschauversion sind im Assistenten garantiert verfügbar. Da jede Datenquelle das Potenzial hat, nachgelagerte Änderungen vorzunehmen, wird der Datenquellenliste nur dann eine Vorschaudatenquelle hinzugefügt, wenn sie alle Erfahrungen im Assistenten vollständig unterstützt, z. B. Skillsetdefinition und Indexschemarückschluss.
Sie können Daten nur aus einer einzelnen Tabelle, Datenbanksicht oder entsprechenden Datenstruktur importieren, die Struktur kann jedoch hierarchische oder geschachtelte Unterstrukturen enthalten. Weitere Informationen finden Sie unter Modellieren komplexer Datentypen in Azure Search.
Skillsetkonfiguration im Assistenten
Die Skillsetkonfiguration erfolgt nach der Datenquellendefinition, da der Typ der Datenquelle die Verfügbarkeit bestimmter integrierter Qualifikationen informiert. Insbesondere wenn Sie Dateien aus Blob Storage indizieren, bestimmt Ihre Wahl des Analysemodus dieser Dateien, ob die Stimmungsanalyse verfügbar ist.
Der Assistent fügt die von Ihnen ausgewählten Fähigkeiten hinzu. Außerdem werden weitere Fähigkeiten hinzugefügt, die für ein erfolgreiches Ergebnis erforderlich sind. Wenn Sie beispielsweise einen Wissensspeicher angeben, fügt der Assistent eine Shaper-Qualifikation hinzu, um Projektionen (oder physische Datenstrukturen) zu unterstützen.
Skillsets sind optional, und unten auf der Seite befindet sich eine Schaltfläche zum Überspringen, wenn Sie keine KI-Anreicherung wünschen.
Indexschemakonfiguration im Assistenten
Der Assistent verwendet Stichproben ihrer Datenquelle, um die Felder und den Feldtyp zu erkennen. Je nach Datenquelle können auch Felder für die Indizierung von Metadaten angeboten werden.
Da die Stichprobenentnahme unpräzise ist, überprüfen Sie den Index auf Folgendes:
Ist die Feldliste vollständig? Wenn Ihre Datenquelle Felder enthält, die bei der Stichprobenentnahme nicht verwendet wurden, können Sie manuell alle neuen Felder hinzufügen, die bei der Stichprobenentnahme übersehen wurden, und alle Felder entfernen, die keinen Mehrwert zu einer Suchfunktion hinzufügen oder nicht in einem Filterausdruck oder Bewertungsprofil verwendet werden.
Ist der Datentyp für die eingehenden Daten geeignet? Azure KI Search unterstützt die Datentypen des Entity Data Model (EDM). Für Azure SQL-Daten gibt es ein Zuordnungsdiagramm, in dem äquivalente Werte aufgeführt sind. Weitere Hintergrundinformationen finden Sie unter Feldzuordnungen und Transformationen.
Verfügen Sie über ein Feld, das als Schlüssel fungieren kann? Dieses Feld muss vom Typ „Edm.string“ sein und ein Dokument eindeutig identifizieren. Bei relationalen Daten kann dieses einem Primärschlüssel zugeordnet werden. Für Blobs kann es
metadata-storage-path
sein. Wenn Feldwerte Leerzeichen oder Bindestriche enthalten, muss im Schritt Indexer erstellen unter Erweiterte Optionen die Option Base64-codierte Schlüssel festgelegt werden, um die Überprüfung für diese Zeichen zu unterdrücken.Legen Sie Attribute fest, um zu bestimmen, wie das Feld in einem Index verwendet wird.
Nehmen Sie sich bei diesem Schritt Zeit, da Attribute den physischen Ausdruck von Feldern im Index bestimmen. Wenn Sie Attribute später ändern möchten, selbst programmgesteuert, müssen Sie fast immer den Index löschen und neu erstellen. Die Auswirkungen von Kernattributen wie Searchable und Retrievable auf den Speicher sind vernachlässigbar. Die Aktivierung von Filtern und die Verwendung von Vorschlagsfunktionen erhöht die Speicheranforderungen.
Durchsuchbar ermöglicht eine Volltextsuche. Jedes Feld, das in Freiformabfragen oder in Abfrageausdrücken verwendet wird, muss über dieses Attribut verfügen. Für jedes als Durchsuchbar markierte Feld werden invertierte Indizes erstellt.
Abrufbar gibt das Feld in Suchergebnissen zurück. Jedes Feld, das Inhalt für Suchergebnisse bereitstellt, muss über dieses Attribut verfügen. Das Festlegen dieses Felds wirkt sich nicht nennenswert auf die Indexgröße aus.
Filterbar ermöglicht die Verwendung von Verweisen auf das Feld in Filterausdrücken. Jedes Feld, das in einem Ausdruck vom Typ $filter verwendet wird, muss über dieses Attribut verfügen. Filterausdrücke werden für exakte Übereinstimmungen verwendet. Da Textzeichenfolgen intakt bleiben, ist zusätzlicher Speicher für die ausführlichen Inhalte erforderlich.
Facettierbar ermöglicht die Verwendung des Felds in einer Facettennavigation. Als Facettierbar können nur Felder markiert werden, die auch als Filterbar markiert sind.
Sortierbar ermöglicht die Verwendung des Felds in einer Sortierung. Jedes Feld, das in einem Ausdruck vom Typ $Orderby verwendet wird, muss über dieses Attribut verfügen.
Benötigen Sie lexikalische Analyse? Für Felder vom Typ „Edm.string“, die Searchable sind, können Sie ein Analysetool festlegen, wenn Sie spracherweiterte Indizierung und Abfrage benötigen.
Standardmäßig wird die Standardanalyse von Lucene verwendet. Sie können aber auch Englisch - Microsoft auswählen, wenn Sie das Analysetool von Microsoft für eine erweiterte lexikalische Verarbeitung (etwa zur Auflösung unregelmäßiger Nomen oder Verben) verwenden möchten. Im Portal können nur Sprachanalysen angegeben werden. Wenn Sie einen benutzerdefinierten Analysator oder einen Nicht-Sprachanalysator wie Keyword, Pattern usw. verwenden, müssen Sie ihn programmgesteuert erstellen. Weitere Informationen zu Analysetools finden Sie unter Hinzufügen von Sprachanalysen.
Benötigen Sie Vorschlagsfunktionen in Form von AutoVervollständigen oder vorgeschlagenen Ergebnissen? Aktivieren Sie das Kontrollkästchen Vorschlagsfunktion, um für ausgewählte Felder Eingabevorschläge für Abfragen und AutoVervollständigen zu aktivieren. Vorschlagsfunktionen erhöhen die Anzahl der tokenisierten Begriffe in Ihrem Index und verbrauchen somit mehr Speicher.
Indexerkonfiguration im Assistenten
Auf der letzten Seite des Assistenten werden Benutzereingaben für die Indexerkonfiguration gesammelt. Sie können einen Zeitplan angeben und andere Optionen festlegen, die je nach Datenquellentyp variieren.
Intern richtet der Assistent auch die folgenden Definitionen ein, die für den Indexer erst nach dem Erstellen sichtbar sind:
- Feldzuordnungen zwischen Datenquelle und Index
- Ausgabefeldzuordnungen zwischen der Qualifikationsausgabe und einem Index
Nächste Schritte
Am besten können Sie sich mit den Vorteilen und Einschränkungen des Assistenten vertraut machen, indem Sie ihn schrittweise zu durchlaufen. Hier ist eine Schnellstartanleitung, die jeden Schritt erläutert.