Dryf embeddingów pojawia się, gdy ponowne indeksowanie zmienia model, tekst, ustawienia enkodera, ścieżkę numeryczną lub reguły porównywania używane do reprezentowania biblioteki.
Domowa baza wiedzy może zawierać te same pliki PDF, notatki, instrukcje i rodzinne archiwa przed przebudową i po niej, a mimo to zwracać innych najbliższych sąsiadów lub inne wyniki podobieństwa. Niektóre zmiany są rzeczywistym dryfem embeddingów: wektor wygenerowany dla identycznego wejścia uległ zmianie. Inne to dryf pozyskiwania danych, gdy tekst przekazywany do enkodera się zmienił, lub dryf wyszukiwania, gdy identyczne wektory są przeszukiwane przy użyciu innych metryk albo ustawień indeksu. Pierwszą granicą diagnostyczną powinno być zatem porównanie bajtów źródłowych, wyodrębnionego tekstu, tożsamości fragmentów, surowych wektorów i uporządkowanych wyników jako osobnych artefaktów.
Rzeczywisty dryf wektorów i pozorny dryf wyszukiwania to różne zjawiska
Rzeczywisty dryf oznacza, że ten sam znormalizowany tekst tworzy inny wektor. Pozorny dryf oznacza, że wektor pozostaje stabilny, ale zmieniają się przynależność fragmentów, metryka podobieństwa, filtrowanie, kwantyzacja lub przybliżone wyszukiwanie sąsiadów, przez co zmienia się kolejność wyników.
Kolekcje Qdrant definiują rozmiar wektora i metrykę odległości jako parametry na poziomie kolekcji. Przebudowanie indeksu w kolekcji z inną metryką może zmienić wyniki i ich kolejność bez zmiany samych wartości embeddingów.
Porównywanie wyłącznie najlepszych wyników wyszukiwania łączy te przyczyny w jedno zjawisko. Suma kontrolna surowych wektorów dla ustalonych ciągów testowych pozwala oddzielić dryf enkodera od dryfu indeksu lub rankingu.
N przypięta wersja modelu może zastąpić enkoder
Nazwa modelu nie zawsze oznacza niezmienny zestaw wag i plików konfiguracyjnych. Właściciel repozytorium może zaktualizować wagi, pliki tokenizera, konfigurację agregowania lub kod modelu, zachowując publiczną nazwę repozytorium.
Repozytoria Hugging Face są objęte kontrolą wersji, a pobieranie może korzystać z określonej rewizji zamiast stanu najnowszej gałęzi.
Ta przyczyna powoduje szerokie przesunięcie w obrębie stałego zestawu testowego, często wraz ze zmianą zatwierdzenia modelu, ścieżki pamięci podręcznej, skrótu konfiguracji lub zasobu tokenizera. Różni się to od dryfu dotyczącego konkretnych dokumentów, który wpływa tylko na pliki, w których zmieniło się wyodrębnianie treści lub dzielenie na fragmenty.
Opcje enkodera mogą zmieniać długość, skalę i geometrię wektora
Te same wagi mogą generować inne reprezentacje, gdy zmienią się agregowanie, normalizacja, precyzja, prefiksy promptów, maksymalna długość sekwencji lub wymiary wyjściowe.
Sentence Transformers udostępnia elementy sterujące enkoderem, w tym precyzję, normalizację, prompty i skrócone wymiary.
Zmiana normalizacji może zachować kierunek, jednocześnie zmieniając długość wektora; prefiks promptu może przenieść każdy dokument do innej przestrzeni zależnej od zadania; skracanie może usunąć całe wymiary. Są to zmiany konfiguracji, a nie losowa niestabilność.
Tekst przekazywany do enkodera może nie być taki sam
Ponowne indeksowanie może uruchomić inną wersję parsera, inną ścieżkę OCR, normalizację białych znaków, regułę kolejności stron lub strategię dzielenia na fragmenty, nawet gdy oryginalne pliki są identyczne bajt po bajcie.
Unstructured wykonuje dzielenie na fragmenty po podziale dokumentu na elementy i opisuje, jak rozmiar fragmentu, nakładanie i granice sekcji określają, jaki tekst trafia do poszczególnych fragmentów.
Jeśli jeden nagłówek zostanie wykryty na nowo albo jedna strona zostanie inaczej przetworzona przez OCR, granice wszystkich kolejnych fragmentów mogą się przesunąć. Powstałe wektory nie są zmienionymi reprezentacjami identycznego wejścia — reprezentują inne zakresy tekstu.
Niedeterministyczne wykonywanie może powodować niewielkie różnice numeryczne
Równoległe kernele, biblioteki sprzętowe, kolejność operacji i elementy losowe mogą powodować niewielkie różnice w kolejnych uruchomieniach wnioskowania, nawet przy tym samym modelu i wejściu.
PyTorch zaznacza, że pełna powtarzalność nie jest gwarantowana między wydaniami, platformami ani urządzeniami, oraz udostępnia dla obsługiwanych operacji elementy sterujące algorytmami deterministycznymi.
Ta przyczyna zwykle powoduje niewielkie różnice współrzędnych, a nie całkowitą reorganizację przestrzeni semantycznej. Jeśli podobieństwo cosinusowe między starymi i nowymi wektorami testowymi pozostaje wyjątkowo wysokie, zmiana może być szumem numerycznym widocznym wyłącznie w pobliżu remisów w rankingu.
Precyzja i kwantyzacja mogą zmieniać sąsiadów granicznych
Podczas przebudowy można przełączyć się z float32 na float16, int8 lub inny zoptymalizowany profil środowiska uruchomieniowego, aby zmniejszyć zużycie pamięci i zwiększyć przepustowość.
ONNX Runtime wyjaśnia, że konwersja do float16 może powodować różnice w dokładności wymagające testów tolerancji.
Wpływ semantyczny jest często niewielki, ale lokalna biblioteka może zawierać wiele podobnych fragmentów. Małe przesunięcia współrzędnych mogą zmienić kolejność sąsiadów, których początkowe wyniki były niemal identyczne.
Ponowne indeksowanie może łączyć stare i nowe generacje wektorów
Częściowo przebudowana kolekcja może zawierać wektory wygenerowane przy użyciu różnych zatwierdzeń modelu, ustawień fragmentów, wymiarów lub reguł normalizacji.
Wymieszane generacje powodują nieregularne zachowanie: niezmienione dokumenty mogą pozostać stabilne, podczas gdy zmienią się tylko ponownie przetworzone pliki, a wektory zapytań mogą być niezgodne z częścią przechowywanej kolekcji.
Przewodnik ZimaSpace dotyczący semantycznego indeksowania na serwerze NAS wyznacza powiązaną granicę: biblioteka źródłowa, wyodrębnione rekordy, embeddingi i indeks wyszukiwania to osobne warstwy i nie należy traktować ich jako jednego niezmiennego obiektu.
FAQ
Czy identyczny tekst zawsze powinien generować embeddingi identyczne bit po bicie?
Tylko przy przypiętym modelu, identycznej konfiguracji, deterministycznej ścieżce wykonywania oraz zgodnym środowisku sprzętowym i programowym. W przeciwnym razie nadal mogą wystąpić niewielkie różnice zmiennoprzecinkowe.
Czy niezmienione wyniki wyszukiwania dowodzą, że embeddingi nie uległy dryfowi?
Nie. Wektory mogą się przesunąć, nie przekraczając granic rankingu. Porównaj surowe wektory lub ich skróty oraz podobieństwa w ustalonym zestawie testowym.
Czy zmiana najbliższego sąsiada zawsze oznacza dryf modelu?
Nie. Dzielenie na fragmenty, filtry, metryki odległości, kwantyzacja i przybliżona konstrukcja indeksu mogą zmienić wyniki wyszukiwania, nawet gdy wyjście enkodera pozostaje stabilne.
Centrum Technologii i Sztucznej Inteligencji
Więcej do przeczytania

Co powoduje, że agent AI do planowania powtarza już wykonane kroki?
Śledź powtarzające się kroki planera, analizując trwałość stanu, dowody ukończenia, analizę wyników narzędzi, zachowanie kontekstu, ponowne próby, przeplanowywanie i warunki zatrzymania.

Co powoduje błędy uprawnień występujące wyłącznie w podprocesach agentów AI?
Porównaj tożsamość procesu nadrzędnego i podrzędnego, widok systemu plików, środowisko, uprawnienia, zasady bezpieczeństwa oraz ścieżkę pliku wykonywalnego, aby zdiagnozować odmowę występującą wyłącznie w podprocesie.

Co powoduje przeciążenie procesora, gdy sprzętowe transkodowanie i sztuczna inteligencja wideo działają jednocześnie?
Śledź wysycenie procesora w zakresie odciążania kodeków, konwersji pikseli, kopiowania klatek, wstępnego przetwarzania AI, dźwięku, napisów, pamięci masowej i planowania procesów.

