Datenimport-Assistent in Azure KI Search

Der Datenimport-Assistent in Azure-Portal erstellt mehrere Objekte, die für die Indizierung und KI-Anreicherung in einem Suchdienst verwendet werden. 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.

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 Suchindexes oder Schnellstart: Erstellen einer Textübersetzung und eines Entitäts-Skillsets.

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 am oberen Rand der Übersichtsseite des Diensts Daten importieren aus.

Screenshot of the Import data command

Der Assistent wird vollständig erweitert im Browserfenster geöffnet, damit Sie mehr Platz zum Arbeiten haben.

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. 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.
Wissensspeicher Optional. Speichert Ausgaben aus einer KI-Anreicherungspipeline in Tabellen und Blobs in Azure Storage zur unabhängigen Analyse oder Downstreamverarbeitung.

Vorteile und Einschränkungen

Bevor Sie Code schreiben, können Sie den Assistenten für Prototyping und Proof of Concept-Tests verwenden. Der Assistent stellt eine Verbindung mit externen Datenquellen her, führt ein Sampling der Daten aus, um einen ersten Index zu erstellen, und importiert die Daten dann als JSON-Dokumente in einen Index in Azure KI 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.

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.

  • Der öffentliche Zugriff auf alle Netzwerke muss für die unterstützte Datenquelle aktiviert werden, während der Assistent verwendet wird, da das Portal während des Setups nicht auf die Datenquelle zugreifen kann, wenn der öffentliche Zugriff deaktiviert ist. Wenn für Ihre Datenquelle eine Firewall aktiviert ist oder Sie eine freigegebene private Verbindung festgelegt haben, müssen Sie diese daher deaktivieren, bevor Sie den Datenimport-Assistenten ausführen, und anschließend nach dem Setup des Assistenten wieder aktivieren. Falls dies für Sie nicht möglich ist, können Sie die Datenquelle, den Indexer, das Skillset und den Index für Azure KI Search über die REST-API oder die SDKs erstellen.

Workflow

Der Assistent ist in vier Hauptschritte organisiert:

  1. Herstellen einer Verbindung mit einer unterstützten Azure-Datenquelle.

  2. Erstellen eines Indexschemas, das durch Sampling von Quelldaten abgeleitet wird.

  3. 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.

  4. Führen Sie den Assistenten aus, um Objekte zu erstellen, Daten 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.

Screenshot of the Connect to your data tab.

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 Qualifikationen hinzu, die Sie auswählen, aber er fügt auch andere Qualifikationen hinzu, die zum Erzielen eines erfolgreichen Ergebnisses 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:

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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. Die Verwendung benutzerdefinierter oder sprachfremder Analysetools wie Schlüsselwort, Muster usw. muss programmgesteuert erfolgen. Weitere Informationen zu Analysetools finden Sie unter Hinzufügen von Sprachanalysen.

  6. 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:

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. In der folgenden Schnellstartanleitung werden die einzelnen Schritte erläutert.