Prototyp RAG jednego z programistów odmawiał odpowiedzi na każde zapytanie, którego podobieństwo cosinusowe było niższe niż 0,50. Działał bez zarzutu – dopóki nie zmieniono modelu osadzeń (embedding model). Wtedy mechanizm ochronny zaczął po cichu przepuszczać błędne odpowiedzi. Incydent ten dowodzi, że sztywno zakodowany próg podobieństwa może przestać działać po zmianie modelu, co stanowi ryzyko dla każdego systemu polegającego na podobieństwie osadzeń w celu weryfikacji bezpieczeństwa.
Dlaczego ten próg był istotny
Potoki Retrieval-augmented generation (RAG) często wykorzystują mechanizm ochronny oparty na podobieństwie: jeśli podobieństwo cosinusowe między zapytaniem a najbliższym dokumentem spadnie poniżej ustalonej wartości, system przerywa generowanie odpowiedzi. Mechanizm ten zapobiega halucynacjom modelu, gdy pobrany kontekst jest zbyt słaby. W pierwotnej konfiguracji próg 0,50 zapewniał rzetelność systemu – zapytania nie do udzielenia uzyskiwały wynik poniżej tej linii, a te możliwe do udzielenia – powyżej niej.
Gdy zmieniono backend osadzeń, ten sam próg 0,50 przestał rozdzielać obie grupy. Potok zaczął zwracać pewne siebie, ale błędne odpowiedzi, nie powodując przy tym żadnych awarii ani jawnych błędów. Awaria ta umknęła standardowym metrykom rankingu i ujawniła się dopiero wtedy, gdy człowiek zauważył dryf (drift).
Geometria nie jest uniwersalna
Każdy model osadzeń mapuje język do przestrzeni wielowymiarowej o własnej geometrii. W związku z tym wartości podobieństwa cosinusowego oznaczają co innego w zależności od modelu. Wynik 0,50 może znajdować się na krawędzi wyraźnej luki w jednym modelu, a głęboko w obszarze nakładania się danych w innym.
- Voyage-3 – linia 0,50 znajduje się między zapytaniami nie do udzielenia o niskich wynikach a zapytaniami możliwymi do udzielenia o wysokich wynikach. Mechanizm ochronny działa zgodnie z przeznaczeniem.
- BGE-Small – wiele zapytań nie do udzielenia uzyskuje wyniki powyżej 0,50, więc mechanizm ochronny nigdy się nie aktywuje. Podniesienie progu do 0,70 przywraca margines bezpieczeństwa.
- Hashing-64 – wyniki dla zapytań możliwych i niemożliwych do udzielenia mieszają się tak ściśle, że żaden pojedynczy próg ich nie rozdzieli; model jest zbyt słaby, aby w ogóle obsługiwać mechanizm ochronny oparty na podobieństwie.
Przypadki te ilustrują szerszą prawdę: próg należy do konkretnej pary model-dane, a nie jest uniwersalną regułą.
Ukryty koszt stałej wartości
Progi podobieństwa pojawiają się w wielu zadaniach w dalszych etapach potoku (downstream tasks):
- cache semantyczny (semantic caching)
- wykrywanie duplikatów
- sprawdzanie istotności dokumentów
- dopasowywanie encji (entity matching)
Stosowanie stałej wartości zakłada, że wszystkie modele osadzeń mają ten sam rozkład wyników – jest to niebezpieczne założenie. Gdy to założenie zawodzi, systemy po cichu generują odpowiedzi o fałszywej pewności, co podważa zaufanie użytkowników i dostarcza błędnych danych do procesów decyzyjnych.
Kalibracja mechanizmów ochronnych dla każdego modelu
Rozwiązanie jest proste: nigdy nie wdrażaj sztywno zakodowanej stałej. Traktuj próg jako hiperparametr, który należy dostroić dla każdego nowego modelu osadzeń.
- Przygotuj niewielki, etykietowany zestaw walidacyjny obejmujący zarówno zapytania możliwe do udzielenia, jak i te niemożliwe do udzielenia.
- Oblicz podobieństwa cosinusowe dla każdej pary zapytanie-dokument przy użyciu docelowego modelu.
- Wykreśl obie dystrybucje lub oblicz współczynnik fałszywej pewności (false-confident rate) – proporcję zapytań nie do udzielenia, które przekraczają proponowany próg.
- Wybierz najmniejszą wartość podobieństwa, która utrzymuje współczynnik fałszywej pewności poniżej akceptowalnego poziomu ryzyka.
Ponieważ celem jest zapobieganie nadmiernej pewności siebie modelu, tradycyjne metryki rankingu, takie jak średnia odwrotna ranga (MRR), są niewystarczające. Współczynnik fałszywej pewności bezpośrednio mierzy tryb awarii mechanizmu ochronnego.
Kontrargument: „Niektóre modele działają od razu po wyjęciu z pudełka”
To prawda, że niektóre dobrze zachowujące się modele, takie jak Voyage-3 w przykładzie, przypadkowo pasują do progu 0,50. Nie gwarantuje to jednak przyszłej stabilności. Aktualizacje modelu, dostrajanie (fine-tuning) lub nawet zmiany w korpusie źródłowym mogą zmienić rozkład podobieństwa, ponownie psując mechanizm ochronny. Poleganie na jednym szczęśliwym dopasowaniu sprzyja samozadowoleniu.
Na co zwrócić uwagę w przyszłości
-
-
-
Podsumowanie
Próg podobieństwa nie jest uniwersalnym bezpiecznikiem; to mechanizm ochronny specyficzny dla danego modelu, który należy kalibrować za każdym razem, gdy zmieniasz backend osadzeń lub dane, na których on pracuje. Ignorowanie tego faktu sprawia, że systemy RAG wpadają w stan cichej halucynacji, co podważa sam cel istnienia mechanizmu ochronnego. Jedyną niezawodną drogą naprzód jest systematyczna kalibracja dla każdego modelu oraz ciągłe monitorowanie współczynnika fałszywej pewności.
