Kreator importowania danych w usłudze Azure AI Search

Kreator importu danych w witrynie Azure Portal tworzy wiele obiektów używanych do indeksowania i wzbogacania sztucznej inteligencji w usłudze wyszukiwania. Jeśli dopiero zaczynasz korzystać z usługi Azure AI Search, jest to jedna z najbardziej zaawansowanych funkcji. Przy minimalnym nakładzie pracy można utworzyć potok indeksowania lub wzbogacania, który wykonuje większość funkcji usługi Azure AI Search.

Jeśli używasz kreatora do testowania weryfikacji koncepcji, w tym artykule opisano wewnętrzne działania kreatora, dzięki czemu można go efektywniej używać.

Ten artykuł nie jest krok po kroku. Aby uzyskać pomoc dotyczącą korzystania z kreatora z wbudowanymi przykładowymi danymi, zobacz przewodnik Szybki start: tworzenie indeksu wyszukiwania lub szybki start: tworzenie zestawu umiejętności tłumaczenia tekstu i jednostki.

Uruchamianie kreatora

W witrynie Azure Portal otwórz stronę usługi wyszukiwania z pulpitu nawigacyjnego lub znajdź swoją usługę na liście usług. Na stronie Przegląd usługi u góry wybierz pozycję Importuj dane.

Screenshot of the Import data command

Kreator zostanie otwarty w pełni rozwinięty w oknie przeglądarki, aby mieć więcej miejsca do pracy.

Możesz również uruchomić polecenie Importuj dane z innych usług platformy Azure, w tym usług Azure Cosmos DB, Azure SQL Database, SQL Managed Instance i Azure Blob Storage. Wyszukaj pozycję Dodaj usługę Azure AI Search w okienku nawigacji po lewej stronie na stronie przeglądu usługi.

Obiekty utworzone przez kreatora

Kreator wyświetli obiekty w poniższej tabeli. Po utworzeniu obiektów możesz przejrzeć ich definicje JSON w portalu lub wywołać je z kodu.

Obiekt opis
Indeksator Obiekt konfiguracji określający źródło danych, indeks docelowy, opcjonalny zestaw umiejętności, opcjonalny harmonogram i opcjonalne ustawienia konfiguracji służące do przekazywania błędów i kodowania base-64.
Źródło danych Utrwala informacje o połączeniu z obsługiwanym źródłem danych na platformie Azure. Obiekt źródła danych jest używany wyłącznie z indeksatorami.
Indeks Fizyczna struktura danych używana do wyszukiwania pełnotekstowego i innych zapytań.
Skillset Opcjonalny. Kompletny zestaw instrukcji dotyczących manipulowania, przekształcania i kształtowania zawartości, w tym analizowania i wyodrębniania informacji z plików obrazów. O ile ilość pracy nie mieści się w limicie 20 transakcji na indeksator dziennie, zestaw umiejętności musi zawierać odwołanie do zasobu wieloasłużowego usługi Azure AI, który zapewnia wzbogacanie.
Magazyn wiedzy Opcjonalny. Przechowuje dane wyjściowe z potoku wzbogacania sztucznej inteligencji w tabelach i obiektach blob w usłudze Azure Storage na potrzeby niezależnej analizy lub przetwarzania podrzędnego.

Korzyści i ograniczenia

Przed napisaniem jakiegokolwiek kodu możesz użyć kreatora do tworzenia prototypów i testowania koncepcji weryfikacji koncepcji. Kreator łączy się z zewnętrznymi źródłami danych, próbkuje dane w celu utworzenia indeksu początkowego, a następnie importuje dane jako dokumenty JSON do indeksu w usłudze Azure AI Search.

Jeśli oceniasz zestawy umiejętności, kreator będzie obsługiwać wszystkie mapowania pól wyjściowych i dodawać funkcje pomocnika, aby tworzyć obiekty użyteczne. Podział tekstu jest dodawany, jeśli określisz tryb analizowania. Scalanie tekstu jest dodawane w przypadku wybrania analizy obrazów, aby kreator mógł ponownie połączyć opisy tekstu z zawartością obrazu. Umiejętności kształtatora dodane do obsługi prawidłowych projekcji, jeśli wybrano opcję magazynu wiedzy. Wszystkie powyższe zadania mają krzywą szkoleniową. Jeśli dopiero zaczynasz wzbogacać, możliwość obsługi tych kroków pozwala zmierzyć wartość umiejętności bez konieczności inwestowania dużo czasu i wysiłku.

Próbkowanie to proces, za pomocą którego schemat indeksu jest wnioskowany i ma pewne ograniczenia. Po utworzeniu źródła danych kreator wybiera losową próbkę dokumentów, aby zdecydować, które kolumny są częścią źródła danych. Nie wszystkie pliki są odczytywane, ponieważ potencjalnie może to potrwać wiele godzin w przypadku bardzo dużych źródeł danych. Biorąc pod uwagę wybór dokumentów, metadanych źródłowych, takich jak nazwa pola lub typ, służy do tworzenia kolekcji pól w schemacie indeksu. W zależności od złożoności danych źródłowych może być konieczne zmodyfikowanie początkowego schematu pod kątem dokładności lub rozszerzenie go pod kątem kompletności. Zmiany można wprowadzić w tekście na stronie definicji indeksu.

Ogólnie rzecz biorąc, zalety korzystania z kreatora są jasne: o ile wymagania są spełnione, można utworzyć prototyp indeksu z możliwością wykonywania zapytań w ciągu kilku minut. Niektóre złożoności indeksowania, takie jak serializowanie danych jako dokumenty JSON, są obsługiwane przez kreatora.

Kreator nie jest bez ograniczeń. Ograniczenia są sumowane w następujący sposób:

  • Kreator nie obsługuje iteracji ani ponownego użycia. Każdy przepływ pracy kreatora tworzy nowy indeks, zestaw umiejętności i konfigurację indeksatora. Tylko źródła danych można utrwalać i używać ponownie w kreatorze. Aby edytować lub uściślić inne obiekty, usuń obiekty i zacznij od nowa albo użyj interfejsów API REST lub zestawu SDK platformy .NET, aby zmodyfikować struktury.

  • Zawartość źródłowa musi znajdować się w obsługiwanym źródle danych.

  • Próbkowanie znajduje się w podzestawie danych źródłowych. W przypadku dużych źródeł danych kreator może przegapić pola. Może być konieczne rozszerzenie schematu lub poprawienie wywnioskowanych typów danych, jeśli próbkowanie jest niewystarczające.

  • Wzbogacanie sztucznej inteligencji, jak pokazano w portalu, jest ograniczone do podzbioru wbudowanych umiejętności.

  • Magazyn wiedzy, który można utworzyć przez kreatora, jest ograniczony do kilku domyślnych projekcji i używa domyślnej konwencji nazewnictwa. Jeśli chcesz dostosować nazwy lub projekcje, musisz utworzyć magazyn wiedzy za pomocą interfejsu API REST lub zestawów SDK.

  • Publiczny dostęp do wszystkich sieci musi być włączony w obsługiwanym źródle danych, gdy jest używany kreator, ponieważ portal nie będzie mógł uzyskać dostępu do źródła danych podczas konfigurowania, jeśli dostęp publiczny jest wyłączony. Oznacza to, że jeśli źródło danych ma włączoną zaporę lub ustawiono udostępniony link prywatny, należy je wyłączyć, uruchomić Kreatora importu danych, a następnie włączyć go po zakończeniu instalacji kreatora. Jeśli nie jest to opcja, możesz utworzyć źródło danych usługi Azure AI Search, indeksator, zestaw umiejętności i indeks za pomocą interfejsu API REST lub zestawów SDK.

Workflow

Kreator jest podzielony na cztery główne kroki:

  1. Połączenie do obsługiwanego źródła danych platformy Azure.

  2. Utwórz schemat indeksu, wywnioskowany przez dane źródła próbkowania.

  3. Opcjonalnie dodaj wzbogacania sztucznej inteligencji, aby wyodrębnić lub wygenerować zawartość i strukturę. Dane wejściowe do tworzenia magazynu wiedzy są zbierane w tym kroku.

  4. Uruchom kreatora, aby utworzyć obiekty, załadować dane, ustawić harmonogram i inne opcje konfiguracji.

Przepływ pracy jest potokiem, więc jest jednym ze sposobów. Nie można użyć kreatora do edytowania żadnych utworzonych obiektów, ale możesz użyć innych narzędzi portalu, takich jak indeks lub projektant indeksatora lub edytorów JSON, w celu uzyskania dozwolonych aktualizacji.

Konfiguracja źródła danych w kreatorze

Kreator importu danych łączy się z zewnętrznym obsługiwanym źródłem danych przy użyciu wewnętrznej logiki udostępnionej przez indeksatory usługi Azure AI Search, które są wyposażone w próbkowanie źródła, odczytywania metadanych, łamania dokumentów w celu odczytywania zawartości i struktury oraz serializowania zawartości jako kodu JSON na potrzeby późniejszego importowania do usługi Azure AI Search.

Możesz wkleić połączenie z obsługiwanym źródłem danych w innej subskrypcji lub regionie, ale selektor Wybierz istniejące połączenie ma zakres aktywnej subskrypcji.

Screenshot of the Connect to your data tab.

Nie wszystkie źródła danych w wersji zapoznawczej mają gwarancję dostępności w kreatorze. Ponieważ każde źródło danych może wprowadzać inne zmiany podrzędne, źródło danych w wersji zapoznawczej zostanie dodane tylko do listy źródeł danych, jeśli w pełni obsługuje wszystkie środowiska kreatora, takie jak definicja zestawu umiejętności i wnioskowanie schematu indeksu.

Można importować tylko z jednej tabeli, widoku bazy danych lub równoważnej struktury danych, jednak struktura może zawierać hierarchiczne lub zagnieżdżone podstruktury. Aby uzyskać więcej informacji, zobacz How to model complex types (Jak modelować złożone typy).

Konfiguracja zestawu umiejętności w kreatorze

Konfiguracja zestawu umiejętności występuje po definicji źródła danych, ponieważ typ źródła danych poinformuje o dostępności określonych wbudowanych umiejętności. W szczególności, jeśli indeksujesz pliki z usługi Blob Storage, wybór trybu analizowania tych plików określi, czy analiza tonacji jest dostępna.

Kreator doda wybrane umiejętności, ale doda również inne umiejętności niezbędne do osiągnięcia pomyślnego wyniku. Jeśli na przykład określisz magazyn wiedzy, kreator doda umiejętności kształtowania do obsługi projekcji (lub struktur danych fizycznych).

Zestawy umiejętności są opcjonalne i w dolnej części strony znajduje się przycisk, który można pominąć, jeśli nie chcesz wzbogacania sztucznej inteligencji.

Konfiguracja schematu indeksu w kreatorze

Kreator próbkuje źródło danych, aby wykryć pola i typ pola. W zależności od źródła danych może również oferować pola do indeksowania metadanych.

Ponieważ próbkowanie jest nieprecyzyjnym ćwiczeniem, zapoznaj się z indeksem, aby zapoznać się z następującymi zagadnieniami:

  1. Czy lista pól jest dokładna? Jeśli źródło danych zawiera pola, które nie zostały pobrane w próbkowaniu, możesz ręcznie dodać wszystkie nowe pola, które próbkowanie nie zostały pobrane, i usunąć wszystkie, które nie dodają wartości do środowiska wyszukiwania lub które nie będą używane w wyrażeniu filtru lub profilu oceniania.

  2. Czy typ danych jest odpowiedni dla danych przychodzących? Usługa Azure AI Search obsługuje typy danych modelu danych jednostki (EDM). W przypadku danych usługi Azure SQL istnieje wykres mapowania, który zawiera równoważne wartości. Aby uzyskać więcej informacji, zobacz Mapowania pól i przekształcenia.

  3. Czy masz jedno pole, które może służyć jako klucz? To pole musi być ciągiem Edm.string i musi jednoznacznie zidentyfikować dokument. W przypadku danych relacyjnych może zostać zamapowany na klucz podstawowy. W przypadku obiektów blob może to być .metadata-storage-path Jeśli wartości pól zawierają spacje lub kreski, należy ustawić opcję Klucz kodowania Base-64 w kroku Tworzenie indeksatora w obszarze Opcje zaawansowane, aby pominąć sprawdzanie poprawności tych znaków.

  4. Ustaw atrybuty, aby określić sposób użycia tego pola w indeksie.

    Pośmiń czas na wykonanie tego kroku, ponieważ atrybuty określają fizyczne wyrażenie pól w indeksie. Jeśli chcesz zmienić atrybuty później, nawet programowo, prawie zawsze musisz usunąć i ponownie skompilować indeks. Podstawowe atrybuty, takie jak Wyszukiwanie i Pobieranie, mają niewielki wpływ na magazyn. Włączanie filtrów i używanie sugestorów zwiększa wymagania dotyczące magazynu.

    • Funkcja wyszukiwania umożliwia wyszukiwanie pełnotekstowe. Każde pole używane w zapytaniach wolnych formularzy lub w wyrażeniach zapytań musi mieć ten atrybut. Odwrócone indeksy są tworzone dla każdego pola oznaczonego jako Wyszukiwanie.

    • Funkcja pobierania zwraca pole w wynikach wyszukiwania. Każde pole, które udostępnia zawartość do wyników wyszukiwania, musi mieć ten atrybut. Ustawienie tego pola nie ma znacznie wpływu na rozmiar indeksu.

    • Filtrowalne umożliwia odwołowanie się do pola w wyrażeniach filtru. Każde pole używane w wyrażeniu $filter musi mieć ten atrybut. Wyrażenia filtru są przeznaczone dla dokładnych dopasowań. Ponieważ ciągi tekstowe pozostają nienaruszone, do obsługi zawartości dosłownej jest wymagana większa ilość miejsca do magazynowania.

    • Funkcja facetable umożliwia korzystanie z pola nawigacji aspektowej. Jako możliwe do filtrowania można oznaczyć tylko pola jako możliwe do filtrowania.

    • Możliwość sortowania umożliwia użycie pola w sortowaniu. Każde pole używane w wyrażeniu $Orderby musi mieć ten atrybut.

  5. Czy potrzebujesz analizy leksykalnej? W przypadku pól Edm.string, które można wyszukiwać, możesz ustawić analizator, jeśli chcesz indeksować i wykonywać zapytania w języku.

    Wartość domyślna to Standard Lucene , ale możesz wybrać język angielski firmy Microsoft, jeśli chcesz użyć analizatora firmy Microsoft do zaawansowanego przetwarzania leksyktycznego, takiego jak rozpoznawanie nieregularnych form rzeczowników i czasowników. W portalu można określić tylko analizatory języków. Za pomocą analizatora niestandardowego lub analizatora niejęzycznego, takiego jak Słowo kluczowe, Wzorzec itd., należy wykonać programowo. Aby uzyskać więcej informacji na temat analizatorów, zobacz Dodawanie analizatorów języka.

  6. Czy potrzebujesz funkcji typeahead w postaci autouzupełniania lub sugerowanych wyników? Zaznacz pole wyboru Sugestor, aby włączyć sugestie dotyczące zapytań typowych i autouzupełnianie w wybranych polach. Sugestory dodają do indeksu liczbę tokenizowanych terminów, a tym samym zużywają więcej miejsca do magazynowania.

Konfiguracja indeksatora w kreatorze

Ostatnia strona kreatora zbiera dane wejściowe użytkownika dla konfiguracji indeksatora. Możesz określić harmonogram i ustawić inne opcje, które będą się różnić w zależności od typu źródła danych.

Wewnętrznie kreator konfiguruje również następujące definicje, które nie są widoczne w indeksatorze do momentu jego utworzenia:

Następne kroki

Najlepszym sposobem zrozumienia korzyści i ograniczeń kreatora jest przejście przez niego. W poniższym przewodniku Szybki start opisano każdy krok.