Schnellstart: Suche nach Bildern mit dem Suchexplorer im Azure-Portal

Dieser Schnellstart zeigt Ihnen die ersten Schritte für die Bildersuche mithilfe des Assistenten zum Importieren und Vektorisieren von Daten im Azure-Portal. Außerdem wird gezeigt, wie Sie mithilfe des Such-Explorers bildbasierte Abfragen ausführen.

Die Beispieldaten bestehen aus Bilddateien im Repository azure-search-sample-data. Sie können jedoch andere Bilder verwenden und dennoch die exemplarische Vorgehensweise befolgen.

Voraussetzungen

  • Ein Azure-Abonnement. Erstellen Sie ein kostenloses Konto.

  • Ein Konto mit mehreren Azure KI Services-Diensten für die Bildvektorisierung und optische Zeichenerkennung (OCR) Für die Bildvektorisierung sind multimodale Einbettungen von Azure KI Vision erforderlich. Eine aktualisierte Regionenliste finden Sie in der Dokumentation.

  • Azure KI-Suche für Indizierung und Abfragen Die Ebene kann beliebig sein, aber es muss die gleiche Region wie für Azure KI mit mehreren Diensten verwendet werden.

    Die Dienstebene bestimmt, wie viele Blobs indiziert werden können. Um diese exemplarische Vorgehensweise zu erstellen und den Inhalt auf zehn JPG-Dateien zu beschränken, wurde der Free-Tarif verwendet.

  • Azure Storage zum Speichern von Bilddateien als Blobs Verwenden Sie Azure Blob Storage oder Azure Data Lake Storage Gen2 (ein Speicherkonto mit einem hierarchischen Namespace), ein Standardleistungskonto (universell V2). Sie können die heiße oder kalte Zugriffsebene oder eine Zugriffsebene vom Typ „Cold“ verwenden.

Für alle vorherigen Ressourcen muss der öffentliche Zugriff aktiviert sein, damit die Portalknoten darauf zugreifen können. Andernfalls tritt im Assistenten ein Fehler auf. Sobald der Assistent ausgeführt wird, können Sie Firewalls und private Endpunkte für die Integrationskomponenten für die Sicherheit aktivieren. Weitere Informationen finden Sie unter Sichere Verbindungen in den Import-Assistenten.

Wenn private Endpunkte bereits vorhanden sind und Sie diese nicht deaktivieren können, besteht die alternative Option darin, den entsprechenden End-to-End-Flow von einem Skript oder Programm auf einer VM auszuführen. Die VM muss sich im selben virtuellen Netzwerk wie der private Endpunkt befinden. Hier ist ein Python-Codebeispiel für die integrierte Vektorisierung. Im gleichen GitHub-Repository gibt es Beispiele in anderen Programmiersprachen.

Ein Suchdienst im Free-Tarif bietet Unterstützung für die rollenbasierte Zugriffssteuerung für Verbindungen mit Azure KI-Suche, jedoch nicht für verwaltete Identitäten bei ausgehenden Verbindungen mit Azure Storage oder Azure KI Vision. Diese Ebene des Supports bedeutet, dass Sie die schlüsselbasierte Authentifizierung für Verbindungen zwischen einem kostenlosen Suchdienst und anderen Azure-Diensten verwenden müssen. Für Verbindungen, die sicherer sind:

Überprüfen des Speicherplatzes

Wenn Sie mit dem kostenlosen Tarif beginnen, sind Sie auf drei Indizes, drei Datenquellen, drei Skillsets und drei Indexer beschränkt. Stellen Sie sicher, dass Sie über ausreichend Platz für zusätzliche Elemente verfügen, bevor Sie beginnen. In diesem Schnellstart wird jeweils eines dieser Objekte erstellt.

Vorbereiten der Beispieldaten

  1. Laden Sie den Bildordner „unsplash-signs“ in einen lokalen Ordner herunter, oder suchen Sie nach eigenen Bildern. Verwenden Sie bei einem Suchdienst im Free-Tarif unter 20 Bilddateien, damit Sie für die Verarbeitung von Anreicherungen innerhalb des Kontingents des Free-Tarifs bleiben.

  2. Melden Sie sich mit Ihrem Azure-Konto beim Azure-Portal an und wechseln Sie zu Ihrem Azure Storage-Konto.

  3. Wählen Sie im linken Bereich unter Datenspeicher die Option Container aus.

  4. Erstellen Sie einen neuen Container, und laden Sie anschließend die Bilder hoch.

Starten des Assistenten

Wenn Ihr Suchdienst und Azure KI Services sich in derselben unterstützten Region und im selben Mandanten befinden und Ihr Azure Storage Blob-Container die Standardkonfiguration verwendet, können Sie den Assistenten starten.

  1. Melden Sie sich mit Ihrem Azure-Konto beim Azure Portal an und wechseln Sie zu Ihrem Azure AI Search-Dienst.

  2. Wählen Sie auf der Seite Übersicht die Option Importieren und Vektorisieren von Daten aus.

    Screenshot des Befehls zum Öffnen des Assistenten zum Importieren und Vektorisieren von Daten.

Herstellen einer Verbindung mit Ihren Daten

Der nächste Schritt besteht darin, eine Verbindung mit einer Datenquelle herzustellen, die die Bilder bereitstellt.

  1. Wählen Sie auf der Seite Datenverbindung einrichten Azure Blob Storage aus.

  2. Geben Sie das Azure-Abonnement an.

  3. Wählen Sie für Azure Storage das Konto und den Container aus, die die Daten bereitstellen. Verwenden Sie für die verbleibenden Felder die Standardwerte.

    Screenshot der Seite des Assistenten zum Einrichten einer Datenverbindung.

  4. Wählen Sie Weiter aus.

Vektorisieren Ihres Texts

Wenn unformatierter Inhalt Text enthält oder das Skillset Text erzeugt, ruft der Assistent ein Texteinbettungsmodell auf, um Vektoren für diesen Inhalt zu generieren. Bei dieser Übung wird Text aus dem OCR-Skill erstellt, den Sie im nächsten Schritt hinzufügen.

Azure KI Vision bietet Texteinbettungen, weswegen diese Ressource für die Textvektorisierung verwendet wird.

  1. Wählen Sie auf der Seite Ihren Text vektorisieren KI Vision-Vektorisierung aus. Sollten Sie diese Option nicht auswählen können, stellen Sie sicher, dass Azure KI-Suche und Ihr Konto mit mehreren Azure KI-Suche-Diensten sich in einer Region befinden, die Unterstützung für multimodale KI Vision-APIs bietet.

    Screenshot der Assistentenseite zum Vektorisieren von Text.

  2. Wählen Sie Weiter aus.

Vektorisieren und Anreichern Ihrer Bilder

Verwenden Sie Azure KI Vision, um eine Vektordarstellung der Bilddateien zu generieren.

In diesem Schritt können Sie KI ebenfalls anwenden, um Text aus Bildern zu extrahieren. Der Assistent verwendet die OCR von Azure KI Services für die Texterkennung in Bilddateien.

Zwei weitere Ausgaben werden im Index angezeigt, wenn die OCR dem Workflow hinzugefügt wird:

  • Das Feld chunk wird mit einer OCR-generierten Zeichenfolge eines beliebigen Texts aufgefüllt, der im Bild enthalten ist.
  • Das Feld text_vector wird mit einer Einbettung aufgefüllt, die die Zeichenfolge chunk darstellt.

Der Einschluss von Nur-Text in das Feld chunk ist hilfreich, wenn Sie Relevanzfeatures verwenden möchten, die mit Zeichenfolgen arbeiten, z. B. semantische Priorisierung und Bewertungsprofile.

  1. Aktivieren Sie auf der Seite Ihre Bilder vektorisieren das Kontrollkästchen Bilder vektorisieren, und wählen Sie anschließend KI Vision-Vektorisierung aus.

  2. Wählen Sie Denselben KI-Dienst verwenden, der für die Textvektorisierung ausgewählt ist aus.

  3. Wählen Sie im Abschnitt „Anreicherung“ Text aus Bildern extrahieren und Denselben KI-Dienst verwenden, der für die Bildvektorisierung ausgewählt ist aus.

    Screenshot der Assistentenseite zum Vektorisieren von Bildern und anreichern von Daten.

  4. Wählen Sie Weiter aus.

Neue Felder zuordnen

Auf der Seite Erweiterte Einstellungen können Sie optional neue Felder hinzufügen. Standardmäßig generiert der Assistent die folgenden Felder mit diesen Attributen:

Feld Gilt für: Beschreibung
chunk_id Text- und Bildvektoren Generiertes Zeichenfolgenfeld. Durchsuchbar, abrufbar, sortierbar. Dies ist der Dokumentschlüssel für den Index.
text_parent_id Bildvektoren Generiertes Zeichenfolgenfeld. Abrufbar, filterbar. Gibt das übergeordnete Dokument an, aus dem der Block stammt.
image_parent_id Bildvektoren Generiertes Zeichenfolgenfeld. Abrufbar, filterbar. Gibt das übergeordnete Dokument an, aus dem das Bild stammt.
Block Text- und Bildvektoren Zeichenfolgenfeld. Eine für Menschen lesbare Version des Datenblocks. Durchsuchbar und abrufbar, aber nicht filterbar, facettierbar oder sortierbar.
title Text- und Bildvektoren Zeichenfolgenfeld. Lesbarer Dokumenttitel oder Seitentitel oder Seitenzahl. Durchsuchbar und abrufbar, aber nicht filterbar, facettierbar oder sortierbar.
image_vector Bildvektoren Collection(Edm.single). Vektordarstellung des Bilds. Durchsuchbar und abrufbar, aber nicht filterbar, facettierbar oder sortierbar.

Sie können die generierten Felder oder deren Attribute nicht ändern, aber Sie können neue Felder hinzufügen, wenn ihre Datenquelle sie bereitstellt. Beispielsweise stellt Azure Blob Storage eine Sammlung von Metadatenfeldern bereit.

  1. Wählen Sie Neue hinzufügen aus.

  2. Wählen Sie ein Quellfeld aus der Liste der verfügbaren Felder aus, geben Sie einen Feldnamen für den Index ein, und übernehmen Sie den Standarddatentyp, oder überschreiben Sie Ihn nach Bedarf.

    Metadatenfelder sind durchsuchbar und abrufbar, aber nicht filterbar, facettierbar oder sortierbar.

  3. Wählen Sie Zurücksetzen aus, wenn Sie das Schema auf die ursprüngliche Version wiederherstellen möchten.

Planen der Indizierung

  1. Geben Sie auf der Seite erweiterte Einstellungen unter Zeitplanindizierung einen Ausführungszeitplan für den Indexer an. Wir empfehlen Einmal für diese Übung. Für Datenquellen, in denen die zugrunde liegenden Daten flüchtig sind, können Sie jedoch die Indizierung planen, damit die Änderungen übernommen werden.

    Screenshot der Assistentenseite für die Planung der Indizierung.

  2. Wählen Sie Weiter aus.

Beenden Sie den Assistenten.

  1. Geben Sie auf der Seite Überprüfen Ihrer Konfiguration ein Präfix für die Objekte an, die der Assistent erstellen wird. Ein allgemeines Präfix hilft Ihnen, den Überblick zu behalten.

    Screenshot der Assistentenseite zum Überprüfen und Abschließen der Konfiguration.

  2. Klicken Sie auf Erstellen.

Wenn der Assistent die Konfiguration abschließt, erstellt er die folgenden Objekte:

  • Ein Indexer, der die Indizierungspipeline steuert

  • Eine Datenquellenverbindung mit Azure Blob Storage.

  • Einen Index mit Vektorfeldern, Textfeldern, Vektorisierungen, Vektorprofilen und Vektoralgorithmen Sie können den Standardindex während des Assistentenworkflows nicht ändern. Indizes entsprechen der 2024-05-01-Preview-REST-API, sodass Sie Previewfunktionen verwenden können.

  • Ein Skillset mit den folgenden fünf Skills:

Überprüfen der Ergebnisse

Der Such-Explorer akzeptiert Text, Vektoren und Bilder als Abfrageeingaben. Sie können ein Bild in den Suchbereich ziehen oder auswählen. Der Such-Explorer vektorisiert Ihr Bild und sendet den Vektor als Abfrageeingabe an die Suchmaschine. Bei der Bildvektorisierung wird davon ausgegangen, dass Ihr Index über eine Vektorisierungsdefinition verfügt, die der Assistent zum Importieren und Vektorisieren von Daten aus Ihren Eingaben erstellt.

  1. Wechseln Sie im Azure-Portal zu Suchverwaltung>Indizes, und wählen Sie dann den von Ihnen erstellten Index aus. Der Such-Explorer ist die erste Registerkarte.

  2. Wählen Sie im Menü Ansicht den Befehl Bilderansicht aus.

    Screenshot des Befehls zum Auswählen der Bildansicht.

  3. Bewegen Sie ein Bild aus dem lokalen Ordner, der die Beispielbilddateien enthält. Öffnen Sie alternativ den Dateibrowser, um eine lokale Bilddatei auszuwählen.

  4. Wählen Sie Suchen aus, um die Abfrage auszuführen.

    Die obere Übereinstimmung sollte das Bild sein, nach dem Sie gesucht haben. Da eine Vektorsuche mit ähnlichen Vektoren übereinstimmt, gibt die Suchmaschine jedes Dokument zurück, das der eingegebenen Suchanfrage hinreichend ähnlich ist, bis zu einer Anzahl von k Ergebnissen. Sie können für erweiterte Abfragen, die die Relevanzoptimierung enthalten, zur JSON-Ansicht wechseln.

    Screenshot der Suchergebnisse.

  5. Probieren Sie andere Abfrageoptionen aus, um die Suchergebnisse zu vergleichen:

    • Blenden Sie Vektoren für eine bessere Lesbarkeit der Ergebnisse aus (Empfohlen).
    • Wählen Sie ein Vektorfeld aus, für das eine Abfrage ausgeführt werden soll. Der Standardwert ist „Textvektoren“. Sie können jedoch den Bildvektor angeben, um Textvektoren aus der Abfrageausführung auszuschließen.

Bereinigung

Diese Demo verwendet abrechenbare Azure-Ressourcen. Wenn Sie die Ressourcen nicht mehr benötigen, löschen Sie sie aus Ihrem Abonnement, um Gebühren zu vermeiden.

Nächster Schritt

In diesem Schnellstart wurden Sie in den Assistenten zum Importieren und Vektorisieren von Daten eingeführt, der alle für die Bildersuche erforderlichen Objekte erstellt. Wenn Sie jeden Schritt im Detail untersuchen möchten, probieren Sie eines der integrierten Vektorisierungsbeispiele aus.