Omówienie składników wyszukiwania
Rozwiązanie do wyszukiwania sztucznej inteligencji składa się z wielu składników, z których każdy odgrywa ważną rolę w procesie wyodrębniania, wzbogacania, indeksowania i wyszukiwania danych.
Źródło danych
Większość rozwiązań wyszukiwania zaczyna się od źródła danych zawierającego dane, które chcesz wyszukać. Usługa Azure AI Search obsługuje wiele typów źródeł danych, w tym:
- Pliki bez struktury w kontenerach usługi Azure Blob Storage.
- Tabele w usłudze Azure SQL Database.
- Dokumenty w usłudze Cosmos DB.
Usługa Azure AI Search może ściągać dane z tych źródeł danych na potrzeby indeksowania.
Alternatywnie aplikacje mogą wypychać dane JSON bezpośrednio do indeksu bez ściągania ich z istniejącego magazynu danych.
Zestaw umiejętności
W podstawowym rozwiązaniu do wyszukiwania można indeksowania danych wyodrębnionych ze źródła danych. Informacje, które można wyodrębnić, zależą od źródła danych. Na przykład podczas indeksowania danych w bazie danych pola w tabelach bazy danych mogą zostać wyodrębnione; lub podczas indeksowania zestawu dokumentów metadane pliku, takie jak nazwa pliku, data modyfikacji, rozmiar i autor mogą zostać wyodrębnione wraz z zawartością tekstową dokumentu.
Chociaż podstawowe rozwiązanie do wyszukiwania, które indeksuje wartości danych wyodrębnione bezpośrednio ze źródła danych, może być przydatne, oczekiwania nowoczesnych użytkowników aplikacji napędzały potrzebę bogatszego wglądu w dane. W usłudze Azure AI Search możesz zastosować umiejętności sztucznej inteligencji (AI) w ramach procesu indeksowania, aby wzbogacić dane źródłowe o nowe informacje, które mogą być mapowane na pola indeksu. Umiejętności używane przez indeksator są hermetyzowane w zestawie umiejętności, który definiuje potok wzbogacania, w którym każdy krok zwiększa dane źródłowe ze szczegółowymi informacjami uzyskanymi przez określoną umiejętność sztucznej inteligencji. Przykłady rodzaju informacji, które można wyodrębnić za pomocą umiejętności sztucznej inteligencji:
- Język, w którym jest zapisywany dokument.
- Kluczowe frazy, które mogą pomóc w określeniu głównych motywów lub tematów omówionych w dokumencie.
- Wynik tonacji, który kwantyfikuje, jak pozytywny lub negatywny jest dokument.
- Określone lokalizacje, osoby, organizacje lub punkty orientacyjne wymienione w zawartości.
- Wygenerowane przez sztuczną inteligencję opisy obrazów lub tekstu obrazu wyodrębnione przez optyczne rozpoznawanie znaków.
- Niestandardowe umiejętności opracowywane w celu spełnienia określonych wymagań.
Indeksator
Indeksator to aparat, który napędza ogólny proces indeksowania. Pobiera on dane wyjściowe wyodrębnione przy użyciu umiejętności w zestawie umiejętności wraz z danymi i wartościami metadanych wyodrębnianymi z oryginalnego źródła danych i mapuje je na pola w indeksie.
Indeksator jest uruchamiany automatycznie po jego utworzeniu i można go zaplanować w regularnych odstępach czasu lub uruchamiać na żądanie, aby dodać więcej dokumentów do indeksu. W niektórych przypadkach, na przykład podczas dodawania nowych pól do indeksu lub nowych umiejętności do zestawu umiejętności, może być konieczne zresetowanie indeksu przed ponownym uruchomieniem indeksatora.
Indeks
Indeks jest wynikiem przeszukiwania procesu indeksowania. Składa się z kolekcji dokumentów JSON z polami zawierającymi wartości wyodrębnione podczas indeksowania. Aplikacje klienckie mogą wysyłać zapytania do indeksu w celu pobrania, filtrowania i sortowania informacji.
Każde pole indeksu można skonfigurować przy użyciu następujących atrybutów:
- key: Pola definiujące unikatowy klucz dla rekordów indeksu.
- wyszukiwanie: pola, do których można wykonywać zapytania przy użyciu wyszukiwania pełnotekstowego.
- filtrowalne: pola, które można uwzględnić w wyrażeniach filtru, aby zwracać tylko dokumenty zgodne z określonymi ograniczeniami.
- sortowalne: pola, których można użyć do zamawiania wyników.
- facetable: pola, które mogą służyć do określania wartości aspektów (elementy interfejsu użytkownika używane do filtrowania wyników na podstawie listy znanych wartości pól).
- pobieranie: pola, które można uwzględnić w wynikach wyszukiwania (domyślnie wszystkie pola są pobierane, chyba że ten atrybut zostanie jawnie usunięty).