Comparthing Logo
wyszukiwanie informacjiszukajNLPosadzeniasztuczna inteligencja

Rozszerzanie zapytań a stałe osadzenia zapytań

Rozszerzanie zapytań dynamicznie wzbogaca zapytania o dodatkowe terminy w czasie wykonywania, podczas gdy stałe osadzanie zapytań opiera się na wstępnie obliczonych reprezentacjach wektorowych, które pozostają niezmienne. Oba podejścia rozwiązują problem niedopasowania słownictwa w wyszukiwaniu informacji, ale różnią się znacząco pod względem elastyczności, kosztu obliczeniowego i adaptowalności do nowych treści.

Najważniejsze informacje

  • Rozszerzenie zapytania modyfikuje sam tekst zapytania, podczas gdy stałe osadzenia zapytania kodują go jednokrotnie w wektorze.
  • Rozszerzenie dostosowuje się do nowej zawartości w czasie wykonywania; stałe osadzenia pozostają zamrożone po zakończeniu szkolenia.
  • Stałe osadzenia są korzystniejsze pod względem szybkości wnioskowania, natomiast rozwinięcia są korzystniejsze pod względem obsługi rzadkiego słownictwa.
  • Systemy hybrydowe łączące oba podejścia zawsze dają lepsze wyniki niż którekolwiek z nich stosowane osobno.

Czym jest Rozszerzenie zapytania?

Technika wyszukiwania, która rozszerza oryginalne zapytanie o powiązane terminy, synonimy lub kontekst w celu poprawienia zapamiętania wyników wyszukiwania.

  • Rozszerzenie zapytania modyfikuje samo zapytanie wyszukiwania poprzez dodanie powiązanych słów, synonimów lub pseudoistotnych terminów przed dopasowaniem do dokumentów.
  • Do klasycznych metod zalicza się metodę sprzężenia zwrotnego relewancji Rocchio, która dostosowuje wagi zapytań na podstawie ocenionych relewancji dokumentów.
  • Nowoczesne podejścia neuronowe wykorzystują duże modele językowe do generowania na bieżąco rozszerzonych wariantów zapytań.
  • Technika ta została sformalizowana w latach 70. XX wieku przez badaczy, takich jak Rocchio i Salton, jako część systemu wyszukiwania informacji SMART.
  • Rozszerzanie zapytania zazwyczaj znacznie poprawia odwołanie, ale może pogorszyć precyzję, jeśli warunki rozszerzenia wprowadzają szum.

Czym jest Stałe osadzenia zapytań?

Wstępnie obliczone gęste reprezentacje wektorowe zapytań, które pozostają statyczne i można je ponownie wykorzystywać w różnych wyszukiwaniach bez konieczności modyfikacji w czasie wykonywania.

  • Stałe osadzenia zapytań kodują zapytanie do pojedynczego, gęstego wektora przy użyciu wytrenowanego modelu kodera, takiego jak BERT lub transformator zdań.
  • Po obliczeniu osadzenie nie zmienia się w zależności od korpusu ani sesji wyszukiwania.
  • Pobieranie odbywa się poprzez wyszukiwanie najbliższego sąsiada w oparciu o wstępnie zindeksowane osadzenia dokumentów.
  • Modele takie jak DPR (Dense Passage Retrieval) i Contriever spopularyzowały to podejście do odpowiadania na pytania w domenie otwartej.
  • Stałe osadzenia umożliwiają szybkie wnioskowanie, ale mają problemy z rzadkimi terminami lub terminami spoza słownika, których koder nie widział podczas uczenia.

Tabela porównawcza

Funkcja Rozszerzenie zapytania Stałe osadzenia zapytań
Mechanizm rdzenia Dodaje terminy do zapytania w czasie wykonywania Koduje zapytanie do wektora statycznego
Adaptowalność do nowej treści Wysoki — może zawierać nowe sygnały Niski — zamrożony w czasie treningu
Koszt obliczeniowy na zapytanie Umiarkowany do wysokiego (możliwe wezwania LLM) Niski — pojedynczy przebieg enkodera
Postępowanie z rzadkimi terminami Silne — wyraźne dopasowanie terminów Słabe — zależy od zasięgu tokenizatora
Kompromis między precyzją a odwołaniem Poprawia przywoływanie, może pogorszyć precyzję Zrównoważony, ale zależny od ciała
Wymagania dotyczące indeksowania Standardowy indeks odwrócony działa Wymaga indeksu wektora (FAISS, ScaNN)
Typowe przypadki użycia Przeszukiwanie leksykalne, wyszukiwanie hybrydowe Wyszukiwanie semantyczne, potoki RAG
Interpretowalność Wysoki — terminy są widoczne Niska — nieprzezroczysta przestrzeń wektorowa

Szczegółowe porównanie

Jak działają pod maską

Rozszerzanie zapytań działa na tekstowej reprezentacji zapytania, dodając synonimy, pojęcia pokrewne lub terminy wydobyte z dokumentów o najwyższej pozycji w rankingu. Stałe osadzanie zapytań podąża zasadniczo inną ścieżką: koder neuronowy mapuje zapytanie na ciągły wektor, a podobieństwo jest mierzone w tej przestrzeni osadzania. Pierwszy sposób pozostaje w świecie dyskretnych tokenów, podczas gdy drugi sprowadza znaczenie do geometrii.

Elastyczność i zdolność adaptacji

Ponieważ rozszerzenie zapytania generuje nowe terminy w trakcie wyszukiwania, może ono reagować na rzeczywistą kolekcję dokumentów, zachowanie użytkownika lub najnowsze trendy. Natomiast stałe osadzenia zapytań są wbudowywane w czasie treningu i nie mogą dostosować się do zmian słownictwa ani nowo zindeksowanej zawartości bez ponownego szkolenia. Dzięki temu rozszerzenie jest bardziej responsywne, ale jednocześnie bardziej zmienne w trakcie kolejnych uruchomień.

Rozważania dotyczące wydajności i kosztów

Stałe osadzenia sprawdzają się w aplikacjach wrażliwych na opóźnienia, ponieważ pojedyncze przejście przez enkoder jest tanie, a wynikowy wektor można buforować. Rozszerzanie zapytań, zwłaszcza w przypadku dużych modeli językowych, zwiększa narzut na każde zapytanie. Jednak rozszerzanie pozwala uniknąć wysokich kosztów infrastruktury związanych z utrzymaniem indeksu wektorowego, co może być realnym obciążeniem w przypadku obsługi miliardów dokumentów.

Jakość w różnych typach zapytań

Krótkie, niejednoznaczne zapytania często korzystają z rozszerzenia, ponieważ dodatkowy kontekst ujednoznacznia intencję. Długie, poprawnie sformułowane zapytania czasami cierpią z powodu rozszerzenia, ponieważ dodane terminy osłabiają oryginalny sygnał. Stałe osadzenia sprawnie radzą sobie z pytaniami w języku naturalnym, ale natrafiają na rzadkie nazwy własne, żargon techniczny lub nowo utworzone terminy, których koder nigdy się nie nauczył.

Podejścia hybrydowe i nowoczesne

Większość współczesnych systemów wyszukiwania danych produkcyjnych łączy oba te podejścia. Powszechny wzorzec wykorzystuje stałe osadzenia zapytań (Fixed Query Embeddings) do przywoływania semantycznego i rozszerzanie zapytań (Query Expansion) dla precyzji leksykalnej, a następnie łączy obie listy wyników. Najnowsze badania nad technikami takimi jak HyDE (Hypothetical Document Embeddings) jeszcze bardziej zacierają tę granicę, wykorzystując metodę LLM do generowania pseudodokumentu, który jest osadzany, skutecznie łącząc rozszerzanie i osadzanie w jednym kroku.

Zalety i wady

Rozszerzenie zapytania

Zalety

  • + Wysoka rozpoznawalność
  • + Terminy interpretowalne
  • + Obsługuje rzadkie słowa
  • + Nie potrzeba indeksu wektora

Zawartość

  • Może zaszkodzić precyzji
  • Większe opóźnienie
  • Ryzyko hałasu rozprężania
  • Trudno dostroić ciężarki

Stałe osadzenia zapytań

Zalety

  • + Szybkie wnioskowanie
  • + Dopasowanie semantyczne
  • + Łatwe do buforowania
  • + Mocny w zapytaniach naturalnych

Zawartość

  • Statyczny po treningu
  • Nieprzezroczyste zachowanie
  • Potrzebny indeks wektora
  • Słaby na rzadkich warunkach

Częste nieporozumienia

Mit

Rozszerzenie zapytania zawsze poprawia wyniki wyszukiwania.

Rzeczywistość

Rozszerzanie poprawia zapamiętywanie, ale często obniża precyzję, gdy dodawane terminy są nie na temat. Bezmyślne rozszerzanie może zagłuszyć istotne wyniki w szumie informacyjnym, dlatego współczesne systemy stosują selektywne lub wyuczone strategie rozszerzania.

Mit

Stałe osadzenia zapytań rozumieją każde słowo, które do nich wprowadzisz.

Rzeczywistość

Kodery są ograniczone przez swój tokenizator i dane treningowe. Błędy ortograficzne, nowe nazwy produktów lub żargon specyficzny dla danej dziedziny często zostają rozdzielone na podsłowa, których model nigdy nie widział, co prowadzi do słabych reprezentacji.

Mit

Przeszukiwanie wektorowe sprawia, że tradycyjna technologia IR staje się przestarzała.

Rzeczywistość

Metody leksykalne, takie jak BM25, nadal przewyższają wyszukiwanie gęste w wielu testach porównawczych, zwłaszcza w przypadku zapytań z dużą ilością słów kluczowych. Najsilniejsze systemy są hybrydowe, a nie czysto wektorowe.

Mit

Rozszerzanie zapytania to stara technika, która nie ma już znaczenia.

Rzeczywistość

Metody rozszerzania oparte na LLM, takie jak query2doc i HyDE, ożywiły tę dziedzinę, pokazując, że nowoczesne metody rozszerzania znacznie przewyższają naiwne podejścia oparte na workach słów.

Mit

Większe modele osadzenia zawsze oznaczają lepsze wyszukiwanie.

Rzeczywistość

Malejące zyski pojawiają się szybko, a dobrze dostrojony mały koder z twardym ujemnym wydobywaniem kryptowaluty często dopasowuje się do ogromnego modelu, przynosząc jedynie ułamek kosztów.

Często zadawane pytania

Jaka jest główna różnica pomiędzy rozszerzeniem zapytania a stałym osadzeniem zapytania?
Rozszerzenie zapytania dodaje dodatkowe terminy do zapytania w czasie wykonywania, aby poszerzyć zakres dopasowania, podczas gdy stałe osadzenia zapytania konwertują zapytanie na pojedynczy, gęsty wektor i wykorzystują go ponownie. Pierwsze z nich manipuluje tekstem, drugie manipuluje geometrią.
Które podejście jest szybsze w czasie zapytania?
Stałe osadzenia zapytań są zazwyczaj szybsze, ponieważ wymagają tylko jednego przebiegu kodera i wyszukiwania najbliższego sąsiada. Rozszerzanie zapytań może obejmować wiele wywołań LLM lub pętle sprzężenia zwrotnego pseudo-istotności, co zwiększa opóźnienie.
Czy można łączyć rozszerzanie zapytań i stałe osadzenia zapytań?
Tak, i coraz częściej jest to domyślne rozwiązanie w produkcji. Hybrydowe potoki danych uruchamiają zarówno mechanizmy wyszukiwania, jak i scalania wyników, wykorzystując wzajemne łączenie rang lub wyuczony mechanizm rerankingu, uwzględniając mocne strony każdego z nich.
Dlaczego osadzenia zapytań stałych mają problemy z rzadkimi terminami?
Kodery dzielą nieznane słowa na podsłowa, które mogą nie nieść zamierzonego znaczenia. Bez kontaktu z nimi podczas treningu, wynikowy wektor jest w zasadzie zgadywaniem, co obniża dokładność wyszukiwania w przypadku słownictwa technicznego lub zupełnie nowego.
Czy rozszerzanie zapytań jest nadal stosowane w nowoczesnych systemach AI?
Zdecydowanie. Techniki takie jak HyDE, query2doc i step-back prompting opierają się na zasadach rozszerzania, często wykorzystując duże modele językowe do generowania hipotetycznych odpowiedzi lub powiązanych koncepcji, które usprawniają późniejsze wyszukiwanie.
Czy osadzenia stałych zapytań wymagają ponownego szkolenia dla nowych domen?
Często tak. Kodery ogólnego przeznaczenia działają rozsądnie w różnych domenach, ale dziedziny specjalistyczne, takie jak medycyna czy prawo, korzystają z modeli dostosowanych do danej domeny. Dokładne dostrojenie do par zapytanie-dokument w obrębie danej domeny zazwyczaj przynosi znaczące korzyści.
Czym jest pseudo-istotne sprzężenie zwrotne w rozszerzeniu zapytania?
To technika, w której system zakłada, że dokumenty o najwyższej pozycji w rankingu z początkowego wyszukiwania są istotne, a następnie wyodrębnia z nich często występujące terminy, aby rozszerzyć zapytanie. Jest to automatyczne, ale może prowadzić do zwiększenia liczby błędów, jeśli początkowa pozycja w rankingu jest niska.
Która metoda lepiej radzi sobie z literówkami i błędami ortograficznymi?
Stałe osadzenia zapytań są zazwyczaj bardziej odporne na literówki, ponieważ kodery uczą się rozmytego dopasowania semantycznego. Rozszerzenie zapytania oparte na dokładnym dopasowaniu tokenów zakończy się niepowodzeniem w przypadku błędnie zapisanych terminów, chyba że wcześniej zostanie wprowadzona korekta pisowni.
W jaki sposób indeksy wektorowe, takie jak FAISS, wpisują się w stałe osadzenia zapytań?
Biblioteki FAISS, ScaNN i podobne umożliwiają szybkie, przybliżone wyszukiwanie najbliższego sąsiada w milionach, a nawet miliardach wektorów osadzania. Bez nich, dokładne wyszukiwanie podobieństw byłoby niezwykle powolne w dużej skali.
Czy rozszerzenie zapytania działa dobrze w przypadku krótkich zapytań?
Tak, krótkie zapytania często przynoszą największe korzyści, ponieważ na początku sygnał jest słaby. Dodanie powiązanych terminów daje wyszukiwarce więcej możliwości, choć należy zachować ostrożność, aby nie odbiegać od intencji użytkownika.

Wynik

Wybierz rozszerzenie zapytania, gdy Twój korpus jest duży, zapytania zawierają rzadkie lub techniczne terminy i potrzebujesz interpretowalnego, adaptowalnego wyszukiwania. Wybierz stałe osadzenia zapytań, gdy liczy się opóźnienie, zapytania są pytaniami w języku naturalnym i możesz sobie pozwolić na infrastrukturę indeksowania wektorów. W praktyce najsilniejsze systemy korzystają z obu rozwiązań jednocześnie, zamiast wybierać jedną opcję.

Powiązane porównania

Adaptacja domeny a szkolenie w obrębie domeny

W tym porównaniu analizuje się strategiczne wybory w uczeniu maszynowym między adaptacją domeny, która przenosi wiedzę z oznaczonego środowiska źródłowego do innego środowiska docelowego, a uczeniem w domenie, które buduje modele wyłącznie w oparciu o dane zebrane w konkretnym środowisku wdrożenia docelowego.

Adaptacja językowa w sztucznej inteligencji a systemy sztucznej inteligencji niezależne od języka

Adaptacja językowa w sztucznej inteligencji koncentruje się na uczeniu modeli obsługi konkretnych języków poprzez precyzyjne dostrajanie i transfer wiedzy, podczas gdy systemy sztucznej inteligencji niezależne od języka dążą do przetwarzania dowolnego języka bez szkolenia językowego. Oba podejścia radzą sobie z wyzwaniami wielojęzyczności, ale różnią się zasadniczo pod względem architektury, danych szkoleniowych i wdrożenia w warunkach rzeczywistych.

Adaptacyjne pobieranie a statyczne potoki pobierania

Adaptacyjne pobieranie dynamicznie dostosowuje sposób i rodzaj informacji pobieranych przez system na podstawie zapytania, podczas gdy statyczne potoki pobierania podążają za stałymi regułami niezależnie od kontekstu. Oba te rozwiązania napędzają nowoczesne aplikacje AI, ale różnią się znacząco elastycznością, kosztami i dokładnością. Wybór między nimi zależy od złożoności obciążenia i budżetu.

Agenci AI kontra tradycyjne aplikacje internetowe

Agenci AI to autonomiczne, zorientowane na cel systemy, które potrafią planować, wnioskować i wykonywać zadania w różnych narzędziach, podczas gdy tradycyjne aplikacje internetowe podążają za sztywnymi, sterowanymi przez użytkownika przepływami pracy. Porównanie podkreśla przejście od statycznych interfejsów do adaptacyjnych, kontekstowych systemów, które mogą proaktywnie wspierać użytkowników, automatyzować decyzje i dynamicznie wchodzić w interakcje z wieloma usługami.

Agenci AI zorientowani na zadania kontra modele językowe ogólnego przeznaczenia

Agenci AI zorientowani na zadania są stworzeni do autonomicznego wykonywania określonych przepływów pracy, podczas gdy uniwersalne modele językowe służą jako wszechstronne generatory tekstu, reagujące na szeroki zakres podpowiedzi. Wybór między nimi zależy od tego, czy potrzebujesz niezawodnego wykonywania zadań, czy elastycznej inteligencji konwersacyjnej.