Ranking semantyczny w Wyszukiwanie AI platformy Azure

Uwaga

Wyszukiwanie AI platformy Azure jest dostępna za pośrednictwem portalu Azure, interfejsów API REST i Azure SDKs. Jest także podstawą Foundry IQ — zarządzanej warstwy wiedzy, która przekształca treści przedsiębiorstwa w bazy wiedzy wielokrotnego użytku z uwzględnieniem uprawnień dla agentów w portalu Microsoft Foundry.

W Wyszukiwanie AI platformy Azure semantyczny ranker jest funkcją, która w mierzalny sposób poprawia istotność wyszukiwania, wykorzystując modele rozumienia języka Microsoft do ponownego porządkowania wyników wyszukiwania. Ranga semantyczna jest również wbudowana w agentic retrieval. Ten artykuł stanowi ogólne wprowadzenie, które ułatwia zrozumienie zachowań i korzyści rankera semantycznego.

Semantyczny ranker to funkcja premium, która jest rozliczana na podstawie użycia, ale można z niej korzystać bezpłatnie z zastrzeżeniem limitów usługi dla darmowej warstwy. Zalecamy ten artykuł jako wprowadzenie, ale jeśli wolisz zacząć, wykonaj następujące kroki.

Co to jest klasyfikacja semantyczna?

Ranker semantyczny to zbiór funkcji po stronie zapytania, które poprawiają jakość początkowego wyniku wyszukiwania sklasyfikowanego przez BM25 lub wyniku wyszukiwania sklasyfikowanego przez RRF dla zapytań opartych na tekście, części tekstowej zapytań wektorowych i zapytań hybrydowych. Klasyfikacja semantyczna rozszerza potok wykonywania zapytania na trzy sposoby:

  • Po pierwsze, zawsze dodaje pomocniczy ranking w początkowym zestawie wyników, który został oceniany przy użyciu BM25 lub wzajemnego łączenia rangi (RRF). Ten pomocniczy ranking używa wielojęzycznych modeli uczenia głębokiego dostosowanych od Microsoft Bing do promowania najbardziej semantycznie odpowiednich wyników.

  • Po drugie, zwraca podpisy i opcjonalnie wyodrębnia odpowiedzi, które można wyświetlić na stronie wyszukiwania, aby poprawić doświadczenie wyszukiwania użytkownika.

  • Po trzecie, jeśli włączysz ponowne zapisywanie zapytania, rozszerza początkowy ciąg zapytania na wiele semantycznie podobnych ciągów zapytania.

Dodatkowa klasyfikacja i "odpowiedzi" mają zastosowanie do odpowiedzi na zapytanie. Ponowne zapisywanie zapytań jest częścią żądania zapytania.

Poniżej przedstawiono możliwości semantycznego klasyfikatora ponownego sortowania.

Możliwości Opis
Ranking L2 Używa kontekstu lub semantycznego znaczenia zapytania, aby obliczyć nowy wynik istotności względem wstępnie sklasyfikowanych wyników.
Semantyczne podpisy i wyróżnienia Wyodrębnia zdania dosłowne i frazy z pól, które najlepiej podsumowują zawartość, z wyróżnionymi fragmentami kluczowymi w celu łatwego skanowania. Podpisy, które podsumowują wynik, są przydatne, gdy poszczególne pola zawartości są zbyt gęste dla strony wyników wyszukiwania. Wyróżniony tekst podnosi poziom najbardziej odpowiednich terminów i fraz, dzięki czemu użytkownicy mogą szybko określić, dlaczego dopasowanie zostało uznane za istotne.
Odpowiedzi semantyczne Dodatkowa i opcjonalna struktura podrzędna wynikająca z zapytania semantycznego. Zapewnia bezpośrednią odpowiedź na zapytanie, które wygląda jak pytanie. Wymaga to, aby dokument miał tekst z cechami odpowiedzi.
Ponowne zapisywanie zapytań Używając zapytań tekstowych lub części tekstowej zapytania wektorowego, semantyczny ranker tworzy do 10 wariantów zapytania, być może poprawiając literówki lub błędy pisowni, czy też przeformułowując zapytanie przy użyciu wygenerowanych synonimów. Przepisane zapytanie jest uruchamiane w wyszukiwarce. Wyniki są punktowane przy użyciu metody BM25 lub RRF, a następnie ponownie oceniane przez semantyczny ranking.

Jak działa semantyczny ranker

Semantyczny ranker przyjmuje zapytanie i wyniki, a następnie wysyła je do modeli zrozumienia języka hostowanych przez Microsoft. Skanuje w poszukiwaniu lepszych dopasowań.

Na poniższej ilustracji wyjaśniono koncepcję. Rozważ termin "kapitał". Ma różne znaczenie w zależności od tego, czy kontekst to finanse, prawo, geografia czy gramatyka. Poprzez rozumienie języka rzędu semantycznego wykrywa kontekst i promuje wyniki zgodne z zamiarem zapytania.

Ilustracja przedstawiająca reprezentację wektorów dla kontekstu.

Klasyfikacja semantyczna korzysta z wielu zasobów i czasu. Aby zakończyć przetwarzanie zgodnie z oczekiwanym opóźnieniem operacji zapytania, system konsoliduje i zmniejsza dane wejściowe do semantycznego klasyfikatora. Takie podejście umożliwia ukończenie etapu ponownego uporządkowania tak szybko jak to możliwe.

Klasyfikacja semantyczna ma trzy kroki:

  1. Zbieranie i podsumowywanie danych wejściowych
  2. Rankingowanie wyników przy użyciu semantycznego rankera
  3. Wyprowadzać wyniki, podpisy i odpowiedzi po ponownym przeliczeniu

Jak system zbiera i podsumowuje dane wejściowe

W klasyfikacji semantycznej podsystem zapytania przekazuje wyniki wyszukiwania jako dane wejściowe do modeli podsumowania i klasyfikowania. Ponieważ modele klasyfikacji mają ograniczenia rozmiaru danych wejściowych i intensywnie przetwarzają, wyniki wyszukiwania muszą mieć rozmiar i strukturę (podsumowaną) w celu wydajnej obsługi.

  1. Semantyczny klasyfikator rozpoczyna się od wyniku rankingowego BM25 z zapytania tekstowego lub wyniku rankingowego RRF z wektora lub zapytania hybrydowego. Ćwiczenie polegające na ponownym rankingu używa wyłącznie tekstu. Nawet jeśli wyniki obejmują więcej niż 50 pozycji, tylko 50 najlepszych przechodzi do semantycznego rankingu. Zazwyczaj klasyfikacja semantyczna używa pól informacyjnych i opisowych.

  2. Dla każdego dokumentu w wynikach wyszukiwania model podsumowania akceptuje maksymalnie 2000 tokenów, gdzie token ma około 10 znaków. Model tworzy dane wejściowe z pól "title", "keyword" i "content" wymienionych w konfiguracji semantycznej.

  3. System przycina zbyt długie ciągi, aby upewnić się, że ogólna długość spełnia wymagania wejściowe kroku podsumowania. To ćwiczenie przycinania pokazuje, dlaczego ważne jest dodawanie pól do konfiguracji semantycznej w porządku priorytetowym. Jeśli masz bardzo duże dokumenty z polami z dużą ilością tekstu, system ignoruje wszystko po maksymalnym limicie.

    Pole semantyczne Limity tokenów
    tytuł 128 tokenów
    "słowa kluczowe 128 tokenów
    "zawartość" pozostałe tokeny
  4. Wynik podsumowania jest ciągiem podsumowania dla każdego dokumentu, składającym się z najbardziej istotnych informacji z każdego pola. System wysyła ciągi znaków z podsumowaniem do rankera w celu oceny oraz do modeli rozumienia maszynowego w celu generowania podpisów i odpowiedzi.

    Od listopada 2024 r. maksymalna długość każdego wygenerowanego ciągu podsumowania przekazanego do semantycznego rankera wynosi 2048 tokenów. Wcześniej było to 256 tokenów.

Jak wyniki są oceniane

System ocenia wyniki na podstawie podpisu i dowolnej innej zawartości z ciągu podsumowania wypełniającego długość 2,048 tokenów.

  1. System ocenia podpisy pod kątem istotności koncepcyjnej i semantycznej względem podanego zapytania.

  2. System przypisuje @search.rerankerScore do każdego dokumentu na podstawie semantycznej istotności dokumentu dla określonego zapytania. Wyniki wahają się od 4 do 0 (wysoki do niskich), gdzie wyższy wynik wskazuje na większe znaczenie.

    Wynik Znaczenie
    4.0 Dokument jest bardzo istotny i całkowicie odpowiada na pytanie, choć fragment może zawierać dodatkowy tekst niezwiązany z pytaniem.
    3.0 Dokument jest istotny, ale nie zawiera szczegółów, które umożliwiłyby jego ukończenie.
    2.0 Dokument jest nieco istotny; odpowiada na pytanie częściowo lub tylko na niektóre aspekty pytania.
    1.0 Dokument jest związany z pytaniem i odpowiada na niewielką część tego pytania.
    0.0 Dokument jest nieistotny.
  3. System wymienia dopasowania w kolejności malejącej według wyniku i uwzględnia je w zawartości odpowiedzi na zapytanie. Pakiet zawiera odpowiedzi, tekst bez formatowania i wyróżnione napisy oraz wszystkie pola oznaczone jako możliwe do pobrania lub określone w klauzuli wybierz.

Uwaga

W przypadku dowolnego zapytania rozkłady @search.rerankerScore mogą wykazywać niewielkie zmiany ze względu na warunki na poziomie infrastruktury. Aktualizacje modelu klasyfikacji mogą również mieć wpływ na dystrybucję. Z tych powodów, jeśli piszesz kod niestandardowy dla minimalnych progów lub ustawiasz właściwość progową dla wektorów i zapytań hybrydowych, nie ograniczaj zbyt szczegółowych limitów.

Dane wyjściowe semantycznego rangatora

Z każdego podsumowania modele zrozumienia przez maszynę znajdują fragmenty, które są najbardziej reprezentatywne.

Dane wyjściowe to:

  • Semantyczny podpis dokumentu. Każdy podpis jest dostępny w wersji zwykłego tekstu oraz wersji wyróżnionej i często jest krótszy niż 200 wyrazów na dokument.

  • Opcjonalna odpowiedź semantyczna, przy założeniu answers , że określono parametr, zapytanie zostało zadane jako pytanie, a fragment znajduje się w długim ciągu, który zapewnia prawdopodobną odpowiedź na pytanie.

Podpisy i odpowiedzi są zawsze tekstem dosłownym z indeksu. W tym przepływie pracy nie ma modelu sztucznej inteligencji, który generuje lub tworzy nową zawartość.

Możliwości i ograniczenia semantyczne

Co może zrobić semantyczny klasyfikator:

  • Promowanie dopasowań, które są semantycznie bliższe intencji pierwotnego zapytania.

  • Znajdź ciągi, które mają być używane jako podpisy i odpowiedzi. Odpowiedź zwraca podpisy i odpowiedzi, które można renderować na stronie wyników wyszukiwania.

Co semantyczny ranker nie może zrobić, to ponownie przeszukać cały korpus, aby znaleźć semantycznie istotne wyniki. Klasyfikacja semantyczna ponownie korbuje istniejący zestaw wyników, składający się z 50 najlepszych wyników według domyślnego algorytmu klasyfikacji. Ponadto semantyczny ranking nie może tworzyć nowych informacji ani ciągów. Modele językowe wyodrębniają podpisy i odpowiedzi dosłownie z Twojej zawartości, więc jeśli wyniki modelu nie zawierają tekstu podobnego do odpowiedzi, nie zostanie on wygenerowany.

Mimo że klasyfikacja semantyczna nie jest korzystna w każdym scenariuszu, niektóre treści mogą znacznie korzystać z jego możliwości. Modele językowe w semantycznym rankerze najlepiej sprawdzają się w zawartości z możliwością wyszukiwania, która jest bogata w informacje i ustrukturyzowana jako proza. Baza wiedzy, dokumentacja online lub dokumenty, które zawierają opisową zawartość, widzą największe korzyści z semantycznych funkcji rangatora.

Podstawowa technologia pochodzi od Bing i Microsoft Research, a także jest zintegrowana z infrastrukturą Wyszukiwanie AI platformy Azure jako funkcja dodatkowa. Aby uzyskać więcej informacji na temat badań i inwestycji w sztuczną inteligencję na potrzeby semantycznego rankera, zobacz Jak sztuczna inteligencja z usługi Bing wspiera Wyszukiwanie AI platformy Azure (blog Microsoft Research).

Poniższy film wideo zawiera omówienie możliwości.

Jak semantyczny ranker używa map synonimów

Jeśli włączysz obsługę map synonimów skojarzonych z polem w indeksie wyszukiwania i uwzględnisz to pole w konfiguracji semantycznego rangatora, semantyczny rangator automatycznie stosuje skonfigurowane synonimy podczas procesu ponownego korbowania.

Dostępność i cennik

Ranker semantyczny jest dostępny w wybranych regionach. Może być używane jako samodzielna funkcja lub jako wbudowany komponent agentowego pobierania danych. Każda funkcja jest rozliczana niezależnie.

Ranger semantyczny oferuje bezpłatny plan (domyślnie) z miesięcznym bezpłatnym limitem i standardowym planem płatności w systemie pay-as-you-go po zużyciu bezpłatnego limitu. Aby uzyskać więcej informacji, zobacz Włączanie lub wyłączanie rozliczeń semantycznego rankera.

Opłaty za semantycznego rankera są ponoszone, gdy zapytania obejmują queryType=semantic, a ciąg wyszukiwania jest niepusty (na przykład search=pet friendly hotels in New York). Jeśli ciąg wyszukiwania jest pusty (search=*), opłaty nie są naliczane, nawet jeśli właściwość queryType jest ustawiona na semantyczną.

Jak rozpocząć

  1. Sprawdź dostępność regionalną.

  2. (Opcjonalnie) Przejdź do standardowego planu rozliczeniowego dla użycia poza bezpłatnym miesięcznym limitem przydziału.

  3. Skonfiguruj semantyczny ranker w indeksie wyszukiwania.

  4. Konfigurowanie zapytań do zwracania podpisów i wyróżnień semantycznych.

  5. (Opcjonalnie) Zwracanie odpowiedzi semantycznych.