Szybki start: wyszukiwanie obrazów przy użyciu Eksploratora wyszukiwania w witrynie Azure Portal
W tym przewodniku Szybki start pokazano, jak rozpocząć wyszukiwanie obrazów przy użyciu kreatora Importowanie i wektoryzowanie danych w witrynie Azure Portal. Pokazano również, jak używać Eksploratora wyszukiwania do uruchamiania zapytań opartych na obrazach.
Przykładowe dane składają się z plików obrazów w repozytorium azure-search-sample-data , ale można używać różnych obrazów i nadal postępować zgodnie z przewodnikiem.
Wymagania wstępne
Subskrypcja platformy Azure. Utwórz je bezpłatnie.
Konto wielousług usług Azure AI do użycia na potrzeby wektoryzacji obrazów i optycznego rozpoznawania znaków (OCR). Wektoryzacja obrazów wymaga wielomodalnych osadzeń usługi Azure AI Vision. Zapoznaj się ze zaktualizowaną listą regionów w dokumentacji .
Usługa Azure AI Search umożliwia indeksowanie i zapytania. Może on znajdować się w dowolnej warstwie, ale musi znajdować się w tym samym regionie co wielousługi usługi Azure AI.
Warstwa usługi określa, ile obiektów blob można indeksować. Użyliśmy warstwy Bezpłatna do utworzenia tego przewodnika i ograniczyliśmy zawartość do 10 plików JPG.
Usługa Azure Storage do przechowywania plików obrazów jako obiektów blob. Użyj usługi Azure Blob Storage lub Azure Data Lake Storage Gen2 (konta magazynu z hierarchiczną przestrzenią nazw), konta standardowej wydajności (ogólnego przeznaczenia w wersji 2). Warstwy dostępu mogą być gorące, chłodne i zimne.
Wszystkie powyższe zasoby muszą mieć włączony dostęp publiczny, aby węzły portalu mogły uzyskiwać do nich dostęp. W przeciwnym razie kreator zakończy się niepowodzeniem. Po uruchomieniu kreatora można włączyć zapory i prywatne punkty końcowe w składnikach integracji na potrzeby zabezpieczeń. Aby uzyskać więcej informacji, zobacz Bezpieczne połączenia w kreatorach importu.
Jeśli prywatne punkty końcowe są już obecne i nie można ich wyłączyć, alternatywną opcją jest uruchomienie odpowiedniego kompleksowego przepływu ze skryptu lub programu na maszynie wirtualnej. Maszyna wirtualna musi znajdować się w tej samej sieci wirtualnej co prywatny punkt końcowy. Oto przykładowy kod w języku Python na potrzeby zintegrowanej wektoryzacji. To samo repozytorium GitHub zawiera przykłady w innych językach programowania.
Bezpłatna usługa wyszukiwania obsługuje kontrolę dostępu opartą na rolach na połączeniach z usługą Azure AI Search, ale nie obsługuje tożsamości zarządzanych w przypadku połączeń wychodzących z usługą Azure Storage lub Azure AI Vision. Ten poziom obsługi oznacza, że musisz używać uwierzytelniania opartego na kluczach na połączeniach między bezpłatną usługą wyszukiwania i innymi usługami platformy Azure. W przypadku połączeń, które są bezpieczniejsze:
- Użyj warstwy Podstawowa lub nowszej.
- Skonfiguruj tożsamość zarządzaną i przypisania ról, aby przyznać żądania z usługi Azure AI Search w innych usługach platformy Azure.
Sprawdzanie ilości wolnego miejsca
Jeśli zaczynasz od bezpłatnej usługi, masz ograniczenie do trzech indeksów, trzech źródeł danych, trzech zestawów umiejętności i trzech indeksatorów. Przed rozpoczęciem upewnij się, że dysponujesz miejscem na dodatkowe elementy. Ten przewodnik Szybki start tworzy jeden z każdego obiektu.
Przygotowywanie przykładowych danych
Pobierz folder obrazu unsplash-signs do folderu lokalnego lub znajdź własne obrazy. W bezpłatnej usłudze wyszukiwania zachowaj pliki obrazów poniżej 20, aby pozostać w ramach bezpłatnego limitu przydziału na potrzeby przetwarzania wzbogacania.
Zaloguj się do witryny Azure Portal przy użyciu konta platformy Azure i przejdź do konta usługi Azure Storage.
W okienku po lewej stronie w obszarze Magazyn danych wybierz pozycję Kontenery.
Utwórz nowy kontener, a następnie przekaż obrazy.
Uruchamianie kreatora
Jeśli usługa wyszukiwania i usługa Azure AI znajdują się w tym samym obsługiwanym regionie i dzierżawie, a kontener obiektów blob usługi Azure Storage używa konfiguracji domyślnej, możesz uruchomić kreatora.
Zaloguj się do witryny Azure Portal przy użyciu konta platformy Azure i przejdź do usługa wyszukiwania usługi Azure AI.
Na stronie Przegląd wybierz pozycję Importuj i wektoryzuj dane.
Nawiązywanie połączenia z danymi
Następnym krokiem jest nawiązanie połączenia ze źródłem danych, które udostępnia obrazy.
Na stronie Konfigurowanie połączenia danych wybierz pozycję Azure Blob Storage.
Określ subskrypcję platformy Azure.
W polu Azure Storage wybierz konto i kontener, które udostępniają dane. Użyj wartości domyślnych dla pozostałych pól.
Wybierz Dalej.
Wektoryzacja tekstu
Jeśli nieprzetworzona zawartość zawiera tekst lub zestaw umiejętności tworzy tekst, kreator wywołuje model osadzania tekstu w celu wygenerowania wektorów dla tej zawartości. W tym ćwiczeniu tekst zostanie wygenerowany z umiejętności OCR dodanych w następnym kroku.
Usługa Azure AI Vision udostępnia osadzanie tekstu, więc użyj tego zasobu do wektoryzacji tekstu.
Na stronie Wektoryzowanie tekstu wybierz pozycję Wektoryzacja obrazów sztucznej inteligencji. Jeśli nie jest dostępna, upewnij się, że usługa Azure AI Search i konto wielousług usługi Azure AI znajdują się razem w regionie obsługującym wielomodalne interfejsy API usługi AI Vision.
Wybierz Dalej.
Wektoryzacja i wzbogacanie obrazów
Użyj usługi Azure AI Vision, aby wygenerować wektorową reprezentację plików obrazów.
W tym kroku można również zastosować sztuczną inteligencję, aby wyodrębnić tekst z obrazów. Kreator używa protokołu OCR z usług Azure AI do rozpoznawania tekstu w plikach obrazów.
Dwa kolejne dane wyjściowe są wyświetlane w indeksie po dodaniu OCR do przepływu pracy:
- Pole
chunk
jest wypełniane ciągiem wygenerowanym przez OCR dowolnego tekstu znalezionego na obrazie. - Pole
text_vector
jest wypełniane osadzeniem reprezentującymchunk
ciąg.
Włączenie zwykłego tekstu w chunk
polu jest przydatne, jeśli chcesz użyć funkcji istotności działających na ciągach, takich jak semantyczne klasyfikacje i profile oceniania.
Na stronie Wektoryzacja obrazów zaznacz pole wyboru Wektoryzacja obrazów, a następnie wybierz pozycję Wektoryzacja obrazów sztucznej inteligencji.
Wybierz pozycję Użyj tej samej usługi sztucznej inteligencji wybranej dla wektoryzacji tekstu.
W sekcji wzbogacania wybierz pozycję Wyodrębnij tekst z obrazów i Użyj tej samej usługi sztucznej inteligencji wybranej do wektoryzacji obrazów.
Wybierz Dalej.
Mapowanie nowych pól
Na stronie Ustawienia zaawansowane możesz opcjonalnie dodać nowe pola. Domyślnie kreator generuje następujące pola z następującymi atrybutami:
Pole | Dotyczy | opis |
---|---|---|
chunk_id | Wektory tekstowe i obrazowe | Wygenerowane pole ciągu. Można wyszukiwać, pobierać i sortować. Jest to klucz dokumentu dla indeksu. |
text_parent_id | Wektory obrazów | Wygenerowane pole ciągu. Możliwe do pobrania, filtrowanie. Identyfikuje dokument nadrzędny, z którego pochodzi fragment. |
image_parent_id | Wektory obrazów | Wygenerowane pole ciągu. Możliwe do pobrania, filtrowanie. Identyfikuje dokument nadrzędny, z którego pochodzi obraz. |
chunk | Wektory tekstowe i obrazowe | Pole ciągu. Czytelna dla człowieka wersja fragmentu danych. Można wyszukiwać i pobierać, ale nie można filtrować, aspektów lub sortowania. |
title | Wektory tekstowe i obrazowe | Pole ciągu. Czytelny dla człowieka tytuł dokumentu lub tytuł strony lub numer strony. Można wyszukiwać i pobierać, ale nie można filtrować, aspektów lub sortowania. |
image_vector | Wektory obrazów | Collection(Edm.single). Wektorowa reprezentacja obrazu. Można wyszukiwać i pobierać, ale nie można filtrować, aspektów lub sortowania. |
Nie można modyfikować wygenerowanych pól ani ich atrybutów, ale możesz dodać nowe pola, jeśli źródło danych je udostępni. Na przykład usługa Azure Blob Storage udostępnia kolekcję pól metadanych.
Wybierz Dodaj nowy.
Wybierz pole źródłowe z listy dostępnych pól, podaj nazwę pola dla indeksu i zaakceptuj domyślny typ danych lub przesłoń w razie potrzeby.
Pola metadanych można przeszukiwać, ale nie można ich pobierać, filtrować, aspektów lub sortować.
Wybierz pozycję Resetuj , jeśli chcesz przywrócić schemat do oryginalnej wersji.
Indeksowanie harmonogramu
Na stronie Ustawienia zaawansowane w obszarze Planowanie indeksowania określ harmonogram uruchamiania indeksatora. Zalecamy użycie polecenia Raz w tym ćwiczeniu. W przypadku źródeł danych, w których dane bazowe są niestabilne, można zaplanować indeksowanie w celu pobrania zmian.
Wybierz Dalej.
Kończenie pracy kreatora
Na stronie Przeglądanie konfiguracji określ prefiks dla obiektów, które zostanie utworzony przez kreatora. Wspólny prefiks pomaga zachować organizację.
Wybierz pozycję Utwórz.
Po zakończeniu konfiguracji kreator tworzy następujące obiekty:
Indeksator, który napędza potok indeksowania.
Połączenie ze źródłem danych z usługą Azure Blob Storage.
Indeks z polami wektorowymi, polami tekstowymi, wektoryzatorami, profilami wektorów i algorytmami wektorów. Nie można zmodyfikować indeksu domyślnego podczas przepływu pracy kreatora. Indeksy są zgodne z interfejsem API REST 2024-05-01-preview, dzięki czemu można korzystać z funkcji w wersji zapoznawczej.
Zestaw umiejętności z następującymi pięcioma umiejętnościami:
- Umiejętność OCR rozpoznaje tekst w plikach obrazów.
- Umiejętność scalania tekstu łączy różne dane wyjściowe przetwarzania OCR.
- Umiejętność dzielenia tekstu dodaje fragmentowanie danych. Ta umiejętność jest wbudowana w przepływ pracy kreatora.
- Umiejętność osadzania wielomodalnego usługi Azure AI Vision służy do wektoryzacji tekstu wygenerowanego na podstawie OCR.
- Umiejętność osadzania wielomodalnego usługi Azure AI Vision jest wywoływana ponownie w celu wektoryzacji obrazów .
Sprawdzanie wyników
Eksplorator wyszukiwania akceptuje tekst, wektory i obrazy jako dane wejściowe zapytania. Możesz przeciągnąć lub wybrać obraz w obszarze wyszukiwania. Eksplorator wyszukiwania wektoryzuje obraz i wysyła wektor jako dane wejściowe zapytania do aparatu wyszukiwania. Wektoryzacja obrazów zakłada, że indeks ma definicję wektoryzatora, która importuje i wektoryzuje dane tworzone na podstawie danych wejściowych modelu osadzania.
W witrynie Azure Portal przejdź do pozycji Indeksy zarządzania wyszukiwaniem>, a następnie wybierz utworzony indeks. Eksplorator wyszukiwania to pierwsza karta.
W menu Widok wybierz pozycję Widok obrazu.
Przeciągnij obraz z folderu lokalnego zawierającego przykładowe pliki obrazów. Możesz też otworzyć przeglądarkę plików, aby wybrać lokalny plik obrazu.
Wybierz pozycję Wyszukaj , aby uruchomić zapytanie.
Najlepszym dopasowaniem powinien być obraz, którego szukano. Ponieważ wyszukiwanie wektorów jest zgodne z podobnymi wektorami, aparat wyszukiwania zwraca dowolny dokument, który jest wystarczająco podobny do danych wejściowych zapytania, do
k
liczby wyników. Możesz przełączyć się do widoku JSON, aby uzyskać bardziej zaawansowane zapytania, które obejmują dostrajanie istotności.Wypróbuj inne opcje zapytania, aby porównać wyniki wyszukiwania:
- Ukryj wektory w celu uzyskania bardziej czytelnych wyników (zalecane).
- Wybierz pole wektora do przesłania zapytania. Wartość domyślna to wektory tekstowe, ale można określić wektor obrazu, aby wykluczyć wektory tekstowe z wykonywania zapytania.
Czyszczenie
W tym pokazie są używane rozliczane zasoby platformy Azure. Jeśli nie potrzebujesz już zasobów, usuń je z subskrypcji, aby uniknąć naliczania opłat.
Następny krok
W tym przewodniku Szybki start przedstawiono kreatora Importowanie i wektoryzowanie danych , który tworzy wszystkie niezbędne obiekty do wyszukiwania obrazów. Jeśli chcesz szczegółowo zapoznać się z poszczególnymi krokami, wypróbuj przykład zintegrowanej wektoryzacji.