Wyszukiwarki internetowe coraz częściej sięgają po zaawansowane modele wektorowe do dopasowywania wyników do zapytań. Tradycyjne podejście oparte na słowach kluczowych ustępuje miejsca metodom wykorzystującym embeddingi – reprezentacje semantyczne tekstu w postaci wektorów liczbowych.
Nowe badanie naukowe zespołu z Google i DeepMind przedstawia przełomową technikę o nazwie CRISP, która pozwala drastycznie zredukować rozmiar takich modeli wektorowych nawet 11-krotnie przy minimalnej utracie jakości. Dla seowców oznacza to szybsze i bardziej precyzyjne wyszukiwanie, a za tym idzie lepsze dopasowanie treści do użytkowników.
Modele wektorowe
Modele wielowektorowe (multi-vector) to podejście w wyszukiwaniu opartym na sieciach neuronowych, w którym zapytania i dokumenty reprezentowane są nie jednym, lecz wieloma wektorami. Przykładem jest model ColBERT, w którym każde słowo (token) otrzymuje własny embedding. Zamiast kondensować całą stronę czy zapytanie do pojedynczego wektora, model wielowektorowy tworzy zbiór wektorów odzwierciedlających różne aspekty treści. Ten sam zespół przedstawił również rok wcześniej metodę MUVERA, czyli model wielowektorowy.
Dopasowanie zapytania do dokumentu odbywa się poprzez tzw. MaxSim (inaczej Chamfer Similarity), czy.i dla każdego wektora zapytania szukany jest najbardziej podobny wektor w dokumencie i te podobieństwa są sumowane. Dzięki temu wyszukiwarka może precyzyjniej uchwycić kontekst i znaczenie, na przykład dopasować stronę zawierającą synonimy czy powiązane pojęcia, nawet jeśli nie padają na niej dokładnie te same słowa co w zapytaniu. Modele wielowektorowe ustanowiły nowe rekordy jakości wyszukiwania, dając bardziej trafne i zrozumiałe wyniki niż podejścia jednowektorowe.
Niestety, ta dokładność ma swoją cenę. Reprezentowanie każdego dokumentu i zapytania przez wiele wektorów oznacza wykładniczy wzrost rozmiaru danych i kosztów obliczeniowych. Dla zobrazowania w popularnym zbiorze MS MARCO model ColBERTv2 generuje średnio ~80 wektorów na dokument i 32 wektory na zapytanie.
Taki rozrost indeksu oznacza poważne wymagania pamięciowe oraz wolniejsze wyszukiwanie, bo porównanie wektorów nie jest już prostym iloczynem skalarnym, lecz obejmuje wiele operacji maksymalizacji i sumowania, co rośnie kwadratycznie wraz z liczbą wektorów. W praktyce utrudnia to zastosowanie modeli wielowektorowych na masową skalę, np. w globalnej wyszukiwarce, która musi obsłużyć miliardy stron.
Oprócz kosztów, wielowektorowe reprezentacje cierpią na kilka problemów jakościowych z punktu widzenia modelu:
- Koszt obliczeniowy i pamięciowy: Więcej wektorów to więcej porównań. W przypadku metryki Chamfer/MaxSim złożoność rośnie wprost z iloczynem liczby wektorów zapytania i dokumentu. To oznacza duże obciążenie CPU/GPU oraz zajętość pamięci na przechowywanie gigantycznych indeksów.
- Nadmiarowość semantyczna: Jeśli w zapytaniu pewne słowa się powtarzają lub są bliskoznaczne, ich wektory mogą nadmiernie zawyżać ocenę dopasowania dokumentu, bo liczą się wielokrotnie. Idealnie chcielibyśmy, by wynik zależał od unikalnych koncepcji, a nie powielonych tokenów.
- Szum informacyjny: Każde słowo, niezależnie od tego czy niesie istotną treść czy jest tylko wypełniaczem, dostaje własny wektor. Traktowanie wszystkich tokenów jednakowo może wprowadzać szum, bo mało znaczące fragmenty tekstu mogą rozmywać istotne sygnały. W niektórych zadaniach wykazano, że zbyt wiele słabych wektorów potrafi nawet pogorszyć wyniki względem prostszego modelu jednowektorowego.
Seowcy już teraz obserwują wpływ semantycznego wyszukiwania, bo algorytmy starają się zrozumieć intencję i kontekst zapytań, a nie tylko dopasować słowa. Modele wielowektorowe są jednym z narzędzi, które to umożliwiają. Jednak by mogły być stosowane na szeroką skalę (np. w Google Search czy w wyszukiwarkach e-commerce), muszą zostać ”odchudzone” bez utraty swojej przewagi jakościowej. I tutaj na scenę wchodzi CRISP.
Na czym polega CRISP?
CRISP to skrót od Clustered Representations with Intrinsic Structure Pruning. Najprościej mówiąc, jest to nowa metoda trenowania modeli wielowektorowych, która wbudowuje proces klastrowania (grupowania) wektorów już w trakcie uczenia.
Zamiast najpierw wytrenować model generujący dziesiątki wektorów, a potem próbować je kompresować, CRISP uczy model od podstaw tak, by jego wektory dało się naturalnie pogrupować na mniejszą liczbę reprezentantów.
Tradycyjne podejścia do redukcji liczby wektorów opierały się na dwóch głównych strategiach:
- Pruning post-hoc (ucinanie po fakcie): Po wytrenowaniu modelu próbujemy usunąć mniej istotne wektory. Przykładowo, można odrzucić wektory o niskiej wadze uwagi albo zredukować zbiory wektorów poprzez zwykłe klastrowanie zamrożonych embeddingów już po treningu. Każdy utworzony klaster zastępuje się jednym wektorem (np. centroidem). Niestety, takie klastrowanie „na siłę” jest ograniczone – oryginalne wektory mogą być nieukładalne w zgrabne klastry, bo model nie był tego uczony.
- Fixed pruning (ucinanie według reguły): Tutaj model już podczas treningu zmuszany jest do koncentracji informacji w mniejszej liczbie miejsc. Przykładem może być branie tylko pierwszych lub ostatnich k tokenów z tekstu albo co któregoś tokenu (subsampling). Model uczy się, by najważniejsze informacje umieszczać w wybranych pozycjach. Wadą jest to, że sztywno narzucamy, które tokeny zostaną zachowane, bo ucina to istotny kontekst, jeśli pojawi się poza tym schematem.
CRISP różni się od obu tych podejść. Zamiast odrzucać pewne wektory całkowicie (jak pruning), scala je z innymi poprzez klastrowanie. W trakcie treningu wykorzystywany jest algorytm K-średnich, który grupuje podobne semantycznie wektory tokenów, a następnie zastępuje cały klaster jednym wektorem – centroidem (średnią).
Można to porównać do sytuacji, gdzie wiele zbliżonych znaczeniem słów (np. samochód, auto, pojazd) reprezentujemy jednym “uogólnionym” wektorem oddającym wspólny koncept. Dzięki temu redukujemy liczbę wektorów, a zarazem zachowujemy większość informacji, bo każdy klaster łączy tokeny o podobnym znaczeniu zamiast wyrzucać je do kosza.
Istotne jest to, że CRISP uczy model takich grupowań od początku. Wektory tokenów są więc wewnętrznie spójne i „klastrowalne”, bo model wie, że i tak zostaną zagregowane. To jak szkolenie zespołu pracowników, którzy od początku wiedzą, że będą pracować w małych grupach, dlatego uczą się lepiej dzielić zadania i eliminować duplikaty.
W rezultacie model CRISP po pełnym treningu potrafi reprezentować zapytania i dokumenty za pomocą znacznie mniejszej liczby wektorów niż model tradycyjny, przy minimalnym spadku (a czasem nawet wzroście) jakości.
W odróżnieniu od post-hoc clusteringu, gdzie klastrowanie było wymuszone na gotowych embeddingach, tutaj same embeddingi dostosowują się do klastrów. W efekcie CRISP omija ograniczenie „klastrowalności”, bo wektory są z natury bardziej uporządkowane. A w porównaniu do fixed pruning, CRISP nie zrzuca żadnej informacji całkowicie, bo dane każdego tokenu wchodzą w skład jakiegoś klastru, więc istotne detale mają szansę się przebić, jeśli tylko znajdą podobne kontekstowo elementy.
Wydajność CRIPS
Badacze z zespołu Google przetestowali CRISP na wymagającym zestawie benchmarków wyszukiwawczych BEIR, który obejmuje różnorodne zadania (od pytań z wiedzy ogólnej, przez wyszukiwanie naukowe, po zapytania z forów dyskusyjnych). Wyniki robią wrażenie.
Poniżej podsumowanie najważniejszych wyników:
- 3-krotna kompresja bez strat: Przy umiarkowanym poziomie klastrowania model CRISP zredukował liczbę wektorów ~3x, przewyższając jednocześnie jakością model oryginalny o +0,4% (miara nDCG@10). Oznacza to że model o 2,9x mniejszej reprezentacji dokumentów i 3,9x mniejszej reprezentacji zapytań osiągnął nieco lepsze wyniki od pełnej wersji!
- 11-krotna kompresja przy minimalnym spadku: Przy agresywniejszym ustawieniu CRISP uzyskano aż 11x mniej wektorów na dokument (i 7,9x mniej na zapytanie) kosztem jedynie ~3,6% spadku jakości w rankingu. Taka niewielka utrata jakości (praktycznie niezauważalna dla użytkownika) przy tak dużym zmniejszeniu modelu to ogromny sukces, bo tradycyjne metody klastrowania po treningu traciły podobną jakość już przy ~6x mniejszej reprezentacji!
- Lepszy trade-off niż dotychczasowe metody: Dla porównania, wcześniejsze podejścia post-hoc mogły co najwyżej o połowę zmniejszyć liczbę wektorów (2x) bez utraty jakości. Próba większej kompresji kończyła się poważnym pogorszeniem wyników – np. ~9% spadku jakości przy 6-krotnej redukcji wektorów. CRISP znacząco przewyższa te wyniki pod względem relacji kompresja/jakość.
- Efekt odszumiania (denoising): Okazało się, że grupowanie wektorów w CRISP nie tylko kompresuje model, ale też usuwa pewien szum i wzmacnia ważne sygnały. W niektórych trudnych podzadaniach (gdzie zapytania są długie lub pełne pobocznych informacji) okrojony model CRISP prześcignął oryginał i np. o +5,5% na zestawie ArguAna, +6,8% na SciDocs. To dowód, że konsolidacja podobnych tokenów pomaga skupić się modelowi na kluczowych konceptach, zamiast rozpraszać na detale.
Tabela prezentuje podsumowanie wyników osiąganych przez CRISP
Metoda | Kompresja | Jakość wyszukiwania |
Baseline (bez cięcia) | 100% wektorów (32Q, 80D) | 100% (bazowa jakość) |
Post-hoc clustering | ~50% wektorów (2x mniej) 🔻 | ~100% (bez większej zmiany) |
(Post-hoc przy 6x mniej) | (~17% wektorów) 🔻 | (~90% jakości) 🔻 |
CRISP umiarkowany (C8x32) | ~34% wektorów (3x mniej) 🔻 | ~100,4% (lekko lepiej) |
CRISP agresywny (C4x8) | ~9% wektorów (11x mniej) 🔻 | ~96,4% jakości 🔻 |
Legenda: W nawiasach podano przykładową konfigurację klastrów CRISP: C8x32 oznacza ~8 wektorów na dokument i 32 na zapytanie (≈3x kompresja dokumentów, 3,9x zapytań). Strzałka 🔻 oznacza redukcję względem bazowego modelu. Jakość mierzona była metryką NDCG@10 (100% = wynik modelu bazowego).

Jak widać, CRISP pozwala znacznie „odchudzić” model przy zachowaniu niemal pełnej skuteczności. Nawet skrajnie mała reprezentacja (raptem kilka wektorów na dokument) daje wyniki tylko nieznacznie gorsze od oryginału. To ogromny postęp w porównaniu do dotychczasowych metod kompresji.
Znaczenie wyników dla wyszukiwania
Co oznaczają te osiągnięcia w praktyce? Jeśli technika CRISP znajdzie zastosowanie w komercyjnych systemach wyszukiwania (a należy pamiętać, że stoi za nią zespół Google/DeepMind), możemy spodziewać się znacznych usprawnień:
- Szybsze wyszukiwanie semantyczne: Mniejsza liczba wektorów to mniejsze indeksy i mniej obliczeń przy dopasowywaniu zapytań do dokumentów. Wyszukiwarka oparta na modelu CRISP mogłaby działać bliżej szybkości klasycznych metod, zachowując jednocześnie zalety rozumienia języka. Dla użytkownika oznacza to szybsze odpowiedzi na zapytania, nawet te złożone i konwersacyjne.
- Lepsze dopasowanie treści: Modele wielowektorowe lepiej radzą sobie z rozumieniem kontekstu, co przekłada się na trafniejsze wyniki, np. znajdowanie stron odpowiadających na intencję pytania, a nie tylko zawierających dopasowane słowa. Dzięki CRISP takie zaawansowane dopasowanie może być używane częściej (bo spadną koszty). Dla SEO to sygnał, że jakość treści i jej semantyczne bogactwo będą jeszcze ważniejsze, bo algorytmy będą potrafiły wychwycić niuanse, powiązania tematyczne i odpowiadać na głębsze intencje użytkowników.
- Bardziej efektywne indeksowanie: Mniejszy rozmiar modelu to także mniej zasobów potrzebnych do przetwarzania i przechowywania danych. W praktyce wyszukiwarka może zaoszczędzone moce obliczeniowe przeznaczyć np. na częstsze aktualizacje indeksu, uwzględnianie większej liczby sygnałów rankingowych lub obsługę bardziej złożonych zapytań (np. wieloczłonowych pytań, zapytań głosowych itp.). Może to przełożyć się na szybsze indeksowanie nowych treści (ważne dla SEO gdy świeże treści szybciej pojawią się w wynikach).
- Lżejsze systemy rekomendacji i wyszukiwania wewnętrznego: Nie tylko wyszukiwarki internetowe mogą skorzystać. Wyobraźmy sobie systemy rekomendacji produktów czy treści (np. na dużych platformach e-commerce, serwisach z newsami), one również używają wektorowych reprezentacji, często generując po kilka wektorów na użytkownika czy przedmiot dla uchwycenia różnych preferencji. Z CRISP takie systemy mogłyby działać sprawniej na mniejszych infrastrukturach, co obniży próg wejścia dla firm chcących wdrożyć zaawansowane personalizacje. Dla marketerów oznacza to, że inteligentne rekomendacje staną się bardziej powszechne, a więc dotarcie z właściwą treścią do użytkownika jeszcze łatwiejsze.
Wyzwania i perspektywy dla CRIPS
Czy CRISP jest gotowy do produkcyjnego wdrożenia? Warto zauważyć, że CRISP to na razie wynik badań, chociaż autorzy to praktycy z Google, co sugeruje, że pomysł ma realne podstawy wdrożeniowe. Zanim zobaczymy CRISP w działaniu np. w Google Search, musi on przejść testy w warunkach produkcyjnych.
Niemniej jednak skala osiągniętej kompresji przy tak małym spadku jakości jest bardzo zachęcająca. Możliwe, że elementy CRISP lub inspiracje z niego zostaną wdrożone w istniejących modelach (np. jako dodatkowy etap trenowania modeli typu ColBERT czy Twin Towers).
Jakie są ograniczenia tej metody? Jak każda technika, CRISP ma swoje granice. Po pierwsze, wymaga przebudowania procesu treningowego – integracja klastrowania K-średnich w trakcie uczenia to dodatkowa złożoność. Trening takiego modelu może być bardziej czasochłonny lub wymagać skomplikowanych dostrojeń (np. ile klastrów wybrać dla zapytań i dokumentów, by znaleźć złoty środek między jakością a kompresją).
Po drugie, ekstremalna kompresja (np. wspomniane 11x) choć imponująca, w pewnych przypadkach jednak obniża jakość i dla krytycznych zastosowań być może nie będzie sięgać aż tak daleko.
Wreszcie, CRISP skupia się na redukcji wektorów, ale nie rozwiązuje np. kwestii samej szybkości wyszukiwania, bo choć mniej wektorów przyspiesza porównania, nadal wykorzystuje złożoną metrykę porównawczą (MaxSim). Dlatego w praktyce zapewne łączyłoby się CRISP z innymi optymalizacjami (strukturami danych dla szybkiego wyszukiwania w wektorach, kompresją wartości wektorów itp.).
Czy mniejsze modele to gorsze zrozumienie zapytań? Wyniki sugerują, że niekoniecznie. Co prawda odrzucamy część informacji (poprzez uśrednienie wektorów w klastrach), ale okazuje się, że model często pozbywa się głównie redundancji i szumu. Unikalne, ważne pojęcia nadal są reprezentowane.
Dla seowców to cenna wskazówka, bo liczy się jakość informacji, nie „lanie wody”. Jeżeli treść strony koncentruje się na konkretnych, unikalnych wartościach dla użytkownika, model (nawet skompresowany) wychwyci to i doceni. Natomiast nadmiar powtarzających się fraz czy mało istotnych szczegółów może być traktowany jako szum, który nowoczesne algorytmy starają się filtrować.
Potencjał komercyjny: Wydaje się, że CRISP jest krokiem w stronę uczynienia zaawansowanych modeli wyszukiwawczych bardziej przystępnymi dla przemysłu. Być może doczekamy się open-source’owych wdrożeń tej metody, co pozwoli społeczności SEO/IT eksperymentować z nią np. w silnikach e-commerce opartych o Elasticsearch/Vector Search.
Pojawiły się już pierwsze próby implementacji CRISP przez niezależnych programistów, co świadczy o rosnącym zainteresowaniu społeczności tą metodą. Jeśli testy potwierdzą wyniki Google na większych zbiorach danych, klastrowanie wielowektorowe może stać się standardowym elementem nowych modeli NLP dla wyszukiwania.
Źródło
CRISP: Clustering Multi-Vector Representations for Denoising and Pruning – João Veneroso, Rajesh Jayaram, Jinmeng Rao, Gustavo Hernández Ábrego, Majid Hadian, Daniel Cer, 2025. Preprint dostępny na arXiv. Pełna publikacja (w języku angielskim) do pobrania tutaj: arXiv:2505.11471.
Zapisz się na newsletter wypełniając pola poniżej. Będziesz na bieżąco ze wszystkimi wydarzeniami związanymi z Silesia SEM i informacjami o marketingu internetowym w sieci. Nie spamujemy.
Zostanie wysłany do Ciebie e-mail potwierdzający: przeczytaj zawarte w nim instrukcje, aby potwierdzić subskrypcję.
Artur Strzelecki
Ostatnie wpisy Artur Strzelecki (zobacz wszystkie)
- CRISP – nowa metoda Google na klastrowanie wektorów dla szybszego wyszukiwania - 18 sierpnia 2025
- Czym jest PageRank? Algorytm, na którym stało Google - 15 sierpnia 2025
- Co wyciek systemowego prompta GPT-5 oznacza dla SEO? - 11 sierpnia 2025