Ewaluacja RAG: Ragas vs DeepEval vs TruLens vs LangSmith

Tłumaczenie automatyczne

Ten artykuł został automatycznie przetłumaczony z angielskiego oryginału.

Pojedynczy wynik nie wyjaśnia, czy system generowania wspomaganego wyszukiwaniem (RAG) działa poprawnie. Problem może wystąpić podczas parsowania dokumentów, dzielenia ich na fragmenty, wyszukiwania lub rerankingu dowodów, generowania odpowiedzi, dołączania cytowań albo stosowania filtrów. Mierz każdy etap osobno, aby regresja wskazywała konkretną część pipeline’u.

Zacznij od metryk wyszukiwania na niewielkim, oznaczonym zbiorze danych. Wybierz jedno narzędzie zapewniające funkcje, których brakuje w obecnym programie uruchamiającym testy. Ragas udostępnia metryki RAG, DeepEval zapewnia sprawdzenia w stylu testów, a TruLens wiąże informacje zwrotne z poszczególnymi uruchomieniami. LangSmith to kolejna opcja, jeśli chcesz mieć ślady i zbiory danych w jednym miejscu. Dodaj własne sprawdzenia dla błędów specyficznych dla produktu.

Wybieraj według wymaganych metryk, integracji z programem uruchamiającym testy, możliwości przeglądu śladów i miejsc, w których wolno przetwarzać dane ewaluacyjne.

Tabela decyzyjna

PotrzebaPunkt wyjściaDlaczego
Tanie testy regresji wyszukiwaniaMetryki lokalneRecall@k, MRR, nDCG, fałszywe wykluczenia przez filtry oraz poprawność identyfikatorów cytowań i cytowanych fragmentów można oprzeć na stałych etykietach lub regułach.
Biblioteka metryk RAGRagasUdostępnia metryki precyzji kontekstu, pełności kontekstu, trafności odpowiedzi, zgodności z kontekstem i powiązane metryki.
Bramki CI dla aplikacji LLMDeepEvalInterfejs w stylu przypadków testowych dobrze sprawdza się, gdy ewaluacje powinny blokować PR lub wdrożenie.
Wyjaśnialna informacja zwrotna z aplikacjiTruLensTriada RAG rozdziela trafność kontekstu, oparcie w źródłach i trafność odpowiedzi.
Ewaluacje produktu oparte na śladachLangSmithZbiory danych, narzędzia oceniające, adnotacje, ślady i procesy sprawdzania regresji znajdują się w jednym miejscu.
Jakość specyficzna dla domenyWłasne ewaluacjeOgólne metryki rzadko znają Twoją ontologię, filtry, politykę cytowań, ograniczenia parsera lub reguły odmowy.

Metryki według etapu pipeline’u

EtapPierwsze metryki do dodaniaDlaczego
Parsowaniekompletność ekstrakcji, zachowanie tabel, pokrycie stronWyszukiwarka nie może zwrócić tekstu pominiętego podczas parsowania.
Podział na fragmentymożliwość udzielenia odpowiedzi na podstawie fragmentów, utrata informacji na granicach fragmentów, współczynnik duplikatówPodział powiązanych faktów może uniemożliwić pobranie wystarczającego kontekstu.
WyszukiwanieRecall@k, MRR, nDCG@k, precyzja kontekstu, pełność kontekstuSprawdź, które oczekiwane źródła trafiają do modelu generującego odpowiedź.
RerankingPrecision@1, zmiana nDCG, dodatkowe opóźnienieZachowaj reranker, gdy lepsza kolejność uzasadnia dodatkowy czas wykonania.
Generowaniezgodność z kontekstem, oparcie w źródłach, trafność odpowiedziZgodność z kontekstem sprawdza oparcie w kontekście; trafność odpowiedzi sprawdza, czy odpowiedź odnosi się do pytania.
Cytowaniapokrycie twierdzeń, wsparcie cytowaniami, współczynnik niepopartych twierdzeńUgruntowana odpowiedź bez użytecznych cytowań nadal może być nieakceptowalna produktowo.
Produkcjaodsetek odpowiedzi zastępczych, współczynnik korekt, p95 opóźnienia, koszt odpowiedziJakość w testach lokalnych jest niepełna bez telemetrii operacyjnej.

Uwagi dotyczące narzędzi

Recall@k mierzy, ile elementów oznaczonych jako trafne pojawia się w pierwszych k wynikach. MRR mierzy pozycję pierwszego trafnego elementu; nDCG uwzględnia również różne poziomy trafności. Te metryki wyszukiwania wymagają etykiet trafności. Sędzia LLM, który uznaje odpowiedź za zgodną z kontekstem, nie może ich zastąpić.

Ragas udostępnia metryki precyzji kontekstu, pełności kontekstu, zgodności z kontekstem i trafności odpowiedzi. Jego metryka pełności kontekstu wymaga referencyjnej odpowiedzi lub referencyjnych kontekstów. Precyzja kontekstu ma warianty zarówno z referencjami, jak i bez nich. Zgodność z kontekstem porównuje odpowiedź z pobranym kontekstem; nie wymaga referencyjnej odpowiedzi. Przed przygotowaniem zbioru danych sprawdź wymagane dane wejściowe każdej metryki. Kalibruj sędziów opartych na modelach względem przejrzanych przykładów i zapisuj ich prompty, wersje modeli oraz koszt.

DeepEval dobrze pasuje do procesów inżynierskich, w których ewaluacja powinna działać jak testy. Jest przydatny do testów regresji w CI, szczególnie dla znanych przypadków błędów. Należy jednak pamiętać, że testy w tym stylu są tak dobre, jak przypadki, które utrzymujesz.

TruLens sprawdza się, gdy chcesz powiązać funkcje informacji zwrotnej z rekordami aplikacji. Triada RAG jest użyteczna, ponieważ oddziela trafność kontekstu, oparcie w źródłach i trafność odpowiedzi zamiast kompresować je do jednej nieprzejrzystej liczby.

LangSmith jest praktyczny, gdy ślady, uruchomienia, zbiory danych i proces przeglądu już znajdują się w ekosystemie LangChain/LangGraph. Obsługuje również inne frameworki. Lokalny program uruchamiający testy może być prostszy, jeśli wszystkie dane ewaluacyjne i wykonanie testów muszą pozostać na Twoim komputerze.

Dodaj własne sprawdzenia dla ograniczeń, których nie obejmują ogólne metryki. Jeśli system RAG filtruje dokumenty według uprawnień, jurysdykcji, daty, linii produktowej lub ontologii, mierz bezpośrednio błędne wykluczenia i błędy stosowania reguł.

Rozsądny pierwszy stack

  1. Zbuduj zbiór referencyjny obejmujący ważne przekroje zapytań i oczekiwane ID źródeł. Kilkadziesiąt przypadków może ujawnić pierwsze regresje; rozszerzaj zbiór, aż przedziały ufności i pokrycie błędów będą wystarczające do podjęcia decyzji o wydaniu.
  2. Najpierw lokalnie śledź deterministyczne metryki wyszukiwania, a dopiero potem dodawaj sędziów LLM.
  3. Wybierz jedną bibliotekę lub platformę, jeśli potrzebujesz sędziego oceniającego oparcie w źródłach, integracji testów albo przeglądu śladów, których nie zapewnia Twój program uruchamiający testy.
  4. Używaj jej razem z własnymi testami filtrów, cytowań, jakości parsera i zachowania przy odmowie.
  5. Zapisuj wyniki i przeglądaj próbki. Dodaj kolejne narzędzie dopiero wtedy, gdy potrafisz wskazać brakującą funkcję.

Sprawdzenie, czy ID cytowania istnieje albo czy cytowany fragment występuje w tekście, jest testem deterministycznym. Nie dowodzi ono, że źródło faktycznie potwierdza twierdzenie. Do tego potrzebujesz przejrzanych etykiet relacji twierdzenie–źródło albo skalibrowanego sędziego semantycznego. Jak wskazuje triada RAG TruLens, odpowiedź może odnosić się do pytania, a jednocześnie nie mieć oparcia w dostarczonym kontekście.

Częsty błąd

Nie kończ pomiarów na zgodności z kontekstem. Zgodność z kontekstem zadaje jedno wąskie pytanie: czy odpowiedź jest zgodna z pobranym kontekstem? Nie powie Ci, czy wyszukiwarka znalazła właściwe źródło. Nie wykrywa też utraconych tabel, niepoprawnych filtrów uprawnień ani cytowań wskazujących niewłaściwy fragment.

Lektura uzupełniająca

Referencje