Szybki start: wektoryzacja tekstu i obrazów przy użyciu witryny Azure Portal
Ten przewodnik Szybki start ułatwia rozpoczęcie zintegrowanej wektoryzacji przy użyciu kreatora Importowanie i wektoryzowanie danych w witrynie Azure Portal. Kreator fragmentuje zawartość i wywołuje model osadzania w celu wektoryzacji zawartości podczas indeksowania i zapytań.
Najważniejsze kwestie dotyczące kreatora:
Obsługiwane źródła danych to pliki i skróty usługi Azure Blob Storage, Azure Data Lake Storage (ADLS) Gen2 lub OneLake.
Obsługiwane modele osadzania są hostowane w usłudze Azure OpenAI, katalogu modeli usługi Azure AI Studio, wielomodalnego przetwarzania obrazów usługi Azure AI Vision.
Schemat indeksu zapewnia pola wektorowe i niewektorowe dla fragmentowanych danych.
Możesz dodawać pola, ale nie można usuwać ani modyfikować wygenerowanych pól.
Tryb analizowania dokumentów tworzy fragmenty (jeden dokument wyszukiwania na fragment).
Fragmentowanie nie jest konfigurowalne. Obowiązujące ustawienia to:
"textSplitMode": "pages", "maximumPageLength": 2000, "pageOverlapLength": 500, "maximumPagesToTake": 0, #unlimited "unit": "characters",
Wymagania wstępne
Subskrypcja platformy Azure. Utwórz je bezpłatnie.
Usługa Azure AI usługa wyszukiwania w tym samym regionie co usługa Azure AI. Zalecamy warstwę Podstawowa lub nowszą.
Azure Blob Storage, Azure Data Lake Storage (ADLS) Gen2 (konto magazynu z hierarchiczną przestrzenią nazw) lub usługą OneLake Lakehouse.
Usługa Azure Storage musi być standardowym kontem wydajności (ogólnego przeznaczenia w wersji 2). Warstwy dostępu mogą być gorące, chłodne i zimne.
Model osadzania na platformie Azure AI w tym samym regionie co usługa Azure AI Search. Instrukcje dotyczące wdrażania znajdują się w tym artykule.
Dostawca Obsługiwane modele Azure OpenAI Service osadzanie tekstu-ada-002, osadzanie tekstu-3-large lub osadzanie tekstu-3-small. Katalog modeli usługi Azure AI Studio Modele osadzania platform Azure, Cohere i Facebook. Konto wielousług usług Azure AI Multimodal usługi Azure AI Vision na potrzeby wektoryzacji obrazów i tekstu. Multimodal usługi Azure AI Vision jest dostępny w wybranych regionach. Zapoznaj się ze zaktualizowaną listą w dokumentacji . Aby użyć tego zasobu, konto musi znajdować się w dostępnym regionie i w tym samym regionie co usługa Azure AI Search.
W przypadku korzystania z usługi Azure OpenAI musi mieć skojarzona niestandardowa poddomena. Jeśli usługa została utworzona za pośrednictwem witryny Azure Portal, ta poddomena zostanie automatycznie wygenerowana w ramach konfiguracji usługi. Przed rozpoczęciem korzystania z integracji usługi Azure AI Search upewnij się, że usługa zawiera niestandardową poddomenę podrzędną.
Zasoby usługi Azure OpenAI Service (z dostępem do modeli osadzania), które zostały utworzone w programie AI Studio, nie są obsługiwane. Tylko zasoby usługi Azure OpenAI utworzone w witrynie Azure Portal są zgodne z integracją umiejętności osadzania usługi Azure OpenAI.
Wymagania dotyczące publicznego punktu końcowego
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.
Wymagania dotyczące kontroli dostępu opartej na rolach
Zalecamy przypisania ról dla połączeń usługi wyszukiwania z innymi zasobami.
W usłudze Azure AI Search włącz role.
Skonfiguruj usługę wyszukiwania tak, aby korzystała z tożsamości zarządzanej.
Na platformie źródła danych i dostawcy modelu osadzania utwórz przypisania ról, które umożliwiają usłudze wyszukiwania dostęp do danych i modeli. Przygotowanie przykładowych danych zawiera instrukcje dotyczące konfigurowania ról.
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 bezpieczniejszych połączeń:
- Użyj warstwy Podstawowa lub nowszej.
- Skonfiguruj tożsamość zarządzaną i użyj ról na potrzeby autoryzowanego dostępu.
Uwaga
Jeśli nie możesz przejść przez kreatora, ponieważ opcje nie są dostępne (na przykład nie można wybrać źródła danych lub modelu osadzania), przejdź ponownie do przypisań ról. Komunikaty o błędach wskazują, że modele lub wdrożenia nie istnieją, gdy w rzeczywistości prawdziwą przyczyną jest to, że usługa wyszukiwania nie ma uprawnień dostępu do nich.
Sprawdzanie ilości wolnego miejsca
Jeśli zaczynasz od bezpłatnej usługi, masz ograniczenie do trzech indeksów, źródeł danych, zestawów umiejętności i indeksatorów. Podstawowe ograniczenia do 15. Przed rozpoczęciem upewnij się, że dysponujesz miejscem na dodatkowe elementy. Ten przewodnik Szybki start tworzy jeden z każdego obiektu.
Sprawdzanie klasyfikatora semantycznego
Kreator obsługuje klasyfikację semantyczną, ale tylko w warstwie Podstawowa i wyższej i tylko wtedy, gdy semantyczny rangą jest już włączony w usłudze wyszukiwania. Jeśli używasz warstwy rozliczanej, sprawdź, czy jest włączony semantyczny rangą.
Przygotowywanie przykładowych danych
W tej sekcji przedstawiono dane, które działają na potrzeby tego przewodnika Szybki start.
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ż dokumenty PDF planu kondycji używane na potrzeby tego przewodnika Szybki start.
W okienku po lewej stronie w obszarze Kontrola dostępu przypisz rolę Czytelnik danych obiektu blob usługi Storage do tożsamości usługi wyszukiwania. Możesz też uzyskać parametry połączenia do konta magazynu ze strony Klucze dostępu.
Opcjonalnie zsynchronizuj usunięcia w kontenerze z usunięciami w indeksie wyszukiwania. Te następne kroki umożliwiają skonfigurowanie indeksatora na potrzeby wykrywania usuwania:
Włącz usuwanie nietrwałe na koncie magazynu.
Jeśli używasz natywnego usuwania nietrwałego, w usłudze Azure Storage nie są wymagane żadne dalsze kroki.
W przeciwnym razie dodaj niestandardowe metadane, które indeksator może skanować, aby określić, które obiekty blob są oznaczone do usunięcia. Nadaj właściwości niestandardowej nazwę opisową. Można na przykład nazwać właściwość "IsDeleted", ustawioną na false. Zrób to dla każdego obiektu blob w kontenerze. Później, gdy chcesz usunąć obiekt blob, zmień właściwość na true. Aby uzyskać więcej informacji, zobacz Wykrywanie zmian i usuwania podczas indeksowania z usługi Azure Storage
Konfigurowanie modeli osadzania
Kreator może używać osadzania modeli wdrożonych z poziomu usług Azure OpenAI, Azure AI Vision lub z katalogu modeli w usłudze Azure AI Studio.
Kreator obsługuje osadzanie tekstu-ada-002, osadzanie tekstu-3-large i osadzanie tekstu-3-small. Wewnętrznie kreator wywołuje umiejętności AzureOpenAIEmbedding w celu nawiązania połączenia z usługą Azure OpenAI.
Zaloguj się do witryny Azure Portal przy użyciu konta platformy Azure i przejdź do zasobu Azure OpenAI.
Konfigurowanie uprawnień:
W menu po lewej stronie wybierz pozycję Kontrola dostępu.
Wybierz pozycję Dodaj, a następnie wybierz pozycję Dodaj przypisanie roli.
W obszarze Role funkcji zadania wybierz pozycję Użytkownik openAI usług Cognitive Services, a następnie wybierz pozycję Dalej.
W obszarze Członkowie wybierz pozycję Tożsamość zarządzana, a następnie wybierz pozycję Członkowie.
Filtruj według subskrypcji i typu zasobu (usługi wyszukiwania), a następnie wybierz tożsamość zarządzaną usługi wyszukiwania.
Wybierz Przejrzyj + przypisz.
Na stronie Przegląd wybierz pozycję Kliknij tutaj, aby wyświetlić punkty końcowe lub kliknij tutaj, aby zarządzać kluczami, jeśli chcesz skopiować punkt końcowy lub klucz interfejsu API. Możesz wkleić te wartości do kreatora, jeśli używasz zasobu usługi Azure OpenAI z uwierzytelnianiem opartym na kluczach.
W obszarze Zarządzanie zasobami i wdrożenia modelu wybierz pozycję Zarządzaj wdrożeniami, aby otworzyć program Azure AI Studio.
Skopiuj nazwę
text-embedding-ada-002
wdrożenia lub inny obsługiwany model osadzania. Jeśli nie masz modelu osadzania, wdróż go teraz.
Uruchamianie 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 w celu użycia indeksu wyszukiwania.
Na stronie Konfigurowanie połączenia danych wybierz pozycję Azure Blob Storage.
Określ subskrypcję platformy Azure.
Wybierz konto magazynu i kontener, który udostępnia dane.
Określ, czy chcesz obsługiwać wykrywanie usuwania. Podczas kolejnych przebiegów indeksowania indeks wyszukiwania jest aktualizowany w celu usunięcia wszelkich dokumentów wyszukiwania opartych na obiektach blob usuniętych nietrwale w usłudze Azure Storage.
- Obiekty blob obsługują natywne usuwanie nietrwałe obiektów blob lub usuwanie nietrwałe przy użyciu danych niestandardowych.
- Wcześniej włączono usuwanie nietrwałe w usłudze Azure Storage i opcjonalnie dodano niestandardowe metadane , które indeksowanie może rozpoznać jako flagę usuwania. Aby uzyskać więcej informacji na temat tych kroków, zobacz Przygotowywanie przykładowych danych.
- Jeśli obiekty blob zostały skonfigurowane do usuwania nietrwałego przy użyciu danych niestandardowych, podaj parę nazwa-wartość właściwości metadanych w tym kroku. Zalecamy użycie polecenia "IsDeleted". Jeśli wartość "IsDeleted" jest ustawiona na wartość true w obiekcie blob, indeksator pominie odpowiedni dokument wyszukiwania w następnym uruchomieniu indeksatora.
Kreator nie sprawdza prawidłowych ustawień usługi Azure Storage ani nie zgłasza błędu, jeśli wymagania nie zostały spełnione. Zamiast tego wykrywanie usuwania nie działa, a indeks wyszukiwania prawdopodobnie z czasem będzie zbierał oddzielone dokumenty.
Określ, czy chcesz, aby usługa wyszukiwania łączyła się z usługą Azure Storage przy użyciu tożsamości zarządzanej.
- Zostanie wyświetlony monit o wybranie tożsamości zarządzanej przez system lub tożsamości zarządzanej przez użytkownika.
- Tożsamość powinna mieć rolę Czytelnik danych obiektu blob usługi Storage w usłudze Azure Storage.
- Nie pomijaj tego kroku. Podczas indeksowania występuje błąd połączenia, jeśli kreator nie może nawiązać połączenia z usługą Azure Storage.
Wybierz Dalej.
Wektoryzacja tekstu
W tym kroku określ model osadzania na potrzeby wektoryzacji danych fragmentowanych.
Na stronie Wektoryzowanie tekstu wybierz źródło modelu osadzania:
- Azure OpenAI
- Katalog modeli usługi Azure AI Studio
- Istniejący zasób wielomodalny usługi Azure AI Vision w tym samym regionie co usługa Azure AI Search. Jeśli w tym samym regionie nie ma konta usługi Azure AI Services, ta opcja nie jest dostępna.
Wybierz subskrypcję platformy Azure.
Dokonaj wyborów zgodnie z zasobem:
W przypadku usługi Azure OpenAI wybierz istniejące wdrożenie osadzania tekstu-ada-002, osadzanie tekstu-3-large lub osadzanie tekstu-3-small.
W przypadku katalogu usługi AI Studio wybierz istniejące wdrożenie modelu osadzania platformy Azure, Cohere i Serwisu Facebook.
W przypadku osadzania wielomodalnego usługi AI Vision wybierz konto.
Aby uzyskać więcej informacji, zobacz Konfigurowanie modeli osadzania we wcześniejszej sekcji tego artykułu.
Określ, czy chcesz, aby usługa wyszukiwania uwierzytelniła się przy użyciu klucza interfejsu API, czy tożsamości zarządzanej.
- Tożsamość powinna mieć rolę użytkownika openAI usług Cognitive Services na koncie usługi Azure AI z wieloma usługami.
Zaznacz pole wyboru, które potwierdza wpływ rozliczeń na korzystanie z tych zasobów.
Wybierz Dalej.
Wektoryzacja i wzbogacanie obrazów
Jeśli zawartość zawiera obrazy, możesz zastosować sztuczną inteligencję na dwa sposoby:
Użyj obsługiwanego modelu osadzania obrazów z katalogu lub wybierz interfejs API osadzania wielomodalnego usługi Azure AI Vision, aby wektoryzować obrazy.
Rozpoznawanie znaków optycznych (OCR) umożliwia rozpoznawanie tekstu na obrazach. Ta opcja wywołuje umiejętności OCR do odczytywania tekstu z obrazów.
Usługa Azure AI Search i zasób usługi Azure AI muszą znajdować się w tym samym regionie.
Na stronie Wektoryzacja obrazów określ rodzaj połączenia, które powinien wykonać kreator. W przypadku wektoryzacji obrazów kreator może nawiązać połączenie z osadzaniem modeli w usłudze Azure AI Studio lub Azure AI Vision.
Określ subskrypcję.
W katalogu modeli usługi Azure AI Studio określ projekt i wdrożenie. Aby uzyskać więcej informacji, zobacz Konfigurowanie modeli osadzania we wcześniejszej sekcji tego artykułu.
Opcjonalnie można złamać obrazy binarne (na przykład zeskanowane pliki dokumentów) i rozpoznawać tekst przy użyciu protokołu OCR .
Zaznacz pole wyboru, które potwierdza wpływ rozliczeń na korzystanie z tych zasobów.
Wybierz Dalej.
Dodawanie klasyfikacji semantycznej
Na stronie Ustawienia zaawansowane możesz opcjonalnie dodać semantyczną klasyfikację, aby ponownie korbować wyniki na końcu wykonywania zapytania. Reranking promuje najbardziej semantycznie istotne mecze do góry.
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. |
parent_id | Wektory tekstowe | Wygenerowane pole ciągu. Możliwe do pobrania, filtrowanie. Identyfikuje dokument nadrzędny, z którego pochodzi fragment. |
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. |
text_vector | Wektory tekstowe | Collection(Edm.single). Wektorowa reprezentacja fragmentu. 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 można opcjonalnie określić harmonogram uruchamiania indeksatora.
- Po zakończeniu pracy ze stroną Ustawienia zaawansowane wybierz pozycję Dalej.
Kończenie pracy kreatora
Na stronie Przeglądanie konfiguracji określ prefiks obiektów tworzonych przez kreatora. Wspólny prefiks pomaga zachować organizację.
Wybierz pozycję Utwórz.
Po zakończeniu konfiguracji kreator tworzy następujące obiekty:
Połączenie ze źródłem danych.
Indeksowanie z polami wektorowymi, wektoryzatorami, profilami wektorów i algorytmami wektorów. Nie można zaprojektować ani zmodyfikować indeksu domyślnego podczas przepływu pracy kreatora. Indeksy są zgodne z interfejsem API REST 2024-05-01-preview.
Zestaw umiejętności z umiejętnościami dzielenia tekstu na potrzeby fragmentowania i umiejętności osadzania na potrzeby wektoryzacji. Umiejętności osadzania to umiejętność AzureOpenAIEmbeddingModel dla usługi Azure OpenAI lub umiejętności AML dla katalogu modeli usługi Azure AI Studio. Zestaw umiejętności ma również konfigurację projekcji indeksów , która umożliwia mapowanie danych z jednego dokumentu w źródle danych do odpowiadających mu fragmentów w indeksie "podrzędnym".
Indeksator z mapowaniami pól i mapowaniami pól wyjściowych (jeśli ma zastosowanie).
Sprawdzanie wyników
Eksplorator wyszukiwania akceptuje ciągi tekstowe jako dane wejściowe, a następnie wektoryzuje tekst na potrzeby wykonywania zapytania wektorowego.
W witrynie Azure Portal przejdź do pozycji Indeksy zarządzania wyszukiwaniem>, a następnie wybierz utworzony indeks.
Opcjonalnie wybierz pozycję Opcje zapytania i ukryj wartości wektorów w wynikach wyszukiwania. Ten krok ułatwia odczytywanie wyników wyszukiwania.
W menu Widok wybierz widok JSON, aby można było wprowadzić tekst zapytania wektorowego w parametrze zapytania wektorowego
text
.Kreator oferuje domyślne zapytanie, które wystawia zapytanie wektorowe w
vector
polu i zwraca pięć najbliższych sąsiadów. Jeśli zdecydujesz się ukryć wartości wektorów, zapytanie domyślne zawiera instrukcjęselect
wykluczającąvector
pole z wyników wyszukiwania.{ "select": "chunk_id,parent_id,chunk,title", "vectorQueries": [ { "kind": "text", "text": "*", "k": 5, "fields": "vector" } ] }
text
Dla wartości zastąp gwiazdkę (*
) pytaniem związanym z planami zdrowotnymi, takimi jakWhich plan has the lowest deductible?
.Wybierz pozycję Wyszukaj , aby uruchomić zapytanie.
Powinno zostać wyświetlonych pięć dopasowań. Każdy dokument jest fragmentem oryginalnego pliku PDF. Pole
title
pokazuje, z którego pliku PDF pochodzi fragment.Aby wyświetlić wszystkie fragmenty z określonego dokumentu, dodaj filtr dla
title
pola dla określonego pliku PDF:{ "select": "chunk_id,parent_id,chunk,title", "filter": "title eq 'Benefit_Options.pdf'", "count": true, "vectorQueries": [ { "kind": "text", "text": "*", "k": 5, "fields": "vector" } ] }
Czyszczenie
Usługa Azure AI Search to zasób rozliczany. Jeśli nie potrzebujesz go już, usuń go 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 zintegrowanej wektoryzacji. Jeśli chcesz szczegółowo zapoznać się z poszczególnymi krokami, wypróbuj przykład zintegrowanej wektoryzacji.