Liderzy opinii
Jak zbudowaÄ niezawodny RAG: GÅÄbokie wprowadzenie do 7 punktÃģw awaryjnych i ram ewaluacji
Retrieval-Augmented Generation (RAG) jest kluczowy dla nowoczesnej architektury AI, sÅuÅžÄ c jako podstawowa ramy budowy agentÃģw Åwiadomych kontekstu.
Ale przechodzenie od podstawowego prototypu do systemu gotowego do produkcji wymaga pokonania znaczÄ cych przeszkÃģd w odzyskiwaniu danych, konsolidacji kontekstu i syntezie odpowiedzi.
Ten artykuÅ zapewnia gÅÄbokie wprowadzenie do siedmiu typowych punktÃģw awaryjnych RAG i metryk ewaluacji z praktycznymi przykÅadami kodowania.
Anatomia awarii RAG â 7 punktÃģw awaryjnych (FP)
WedÅug badaczy Barnett et al., systemy RAG napotykajÄ siedem konkretnych punktÃģw awaryjnych (FP) na caÅej drodze.
PoniÅžszy diagram ilustruje te etapy:

Figure A. Procesy indeksowania i zapytaÅ wymagane do tworzenia systemu RAG. Proces indeksowania odbywa siÄ w czasie rozwoju, a zapytania w czasie wykonywania. Punkty awaryjne zidentyfikowane w tym badaniu sÄ pokazane w czerwonych prostokÄ tach (ÅšrÃģdÅo)
PrzejdÅšmy przez kaÅždy punkt awaryjny, uporzÄ dkowany wedÅug sekwencji potoku, postÄpujÄ c od lewego gÃģrnego rogu do prawego dolnego rogu, jak pokazano w Figure A.
FP1. BrakujÄ ca treÅÄ
BrakujÄ ca treÅÄ wystÄpuje, gdy system jest pytany o coÅ, co nie moÅže byÄ odpowiedziÄ , poniewaÅž odpowiednia informacja nie jest obecna w dostÄpnym magazynie wektorowym.
FP2. PominiÄte dokumenty najwyÅžej ocenione
Jest to sytuacja, w ktÃģrej poprawny dokument istnieje w magazynie wektorowym, ale odzyskiwacz nie jest w stanie nadaÄ mu wystarczajÄ co wysokiej oceny, aby umieÅciÄ go wÅrÃģd najlepszych dokumentÃģw k, ktÃģre sÄ podawane do LLM jako kontekst.
FP3. Nie w kontekÅcie (ograniczenia strategii konsolidacji)
Jest to sytuacja, w ktÃģrej poprawny dokument istnieje i jest odzyskany z magazynu wektorowego, ale jest wykluczony podczas procesu konsolidacji.
FP4. Nie wyodrÄbniony
Jest to sytuacja, w ktÃģrej LLM nie jest w stanie zidentyfikowaÄ poprawnej informacji w kontekÅcie, nawet jeÅli poprawna informacja byÅa w magazynie wektorowym i zostaÅa pomyÅlnie odzyskana i skonsolidowana.
FP5. BÅÄdny format
Jest to sytuacja, w ktÃģrej magazynowanie, odzyskiwanie, konsolidacja i interpretacja LLM sÄ obsÅugiwane pomyÅlnie, ale LLM nie jest w stanie postÄpowaÄ zgodnie ze specyficznymi instrukcjami formatowania podanymi w prompcie, takimi jak tabela, lista punktowa lub schemat JSON.
FP6. NiewÅaÅciwa szczegÃģÅowoÅÄ
Wydruk LLM jest technicznie obecny, ale albo zbyt ogÃģlny, albo zbyt zÅoÅžony w porÃģwnaniu z potrzebami uÅžytkownika.
FP7. NiedokoÅczone odpowiedzi
Jest to sytuacja, w ktÃģrej LLM generuje wydruk, ktÃģry nie jest koniecznie bÅÄdny, ale brakuje mu kluczowych elementÃģw informacji, ktÃģre byÅy dostÄpne w kontekÅcie.
Jak punkty awaryjne kompromitujÄ wydajnoÅÄ potoku RAG
KaÅždy z tych punktÃģw awaryjnych wpÅywa na wydajnoÅÄ potokÃģw RAG:
Awarie integralnoÅci danych i zaufania
Gdy brakuje lub jest niepoprawna informacja, system nie jest juÅž wiarygodnym ÅšrÃģdÅem informacji. GÅÃģwne punkty awaryjne obejmujÄ :
- FP1 (BrakujÄ ca treÅÄ): OdpowiedÅš nie jest w dokumencie od samego poczÄ tku.
- FP4 (Nie wyodrÄbniony): LLM decyduje siÄ zignorowaÄ poprawnÄ odpowiedÅš w dokumencie.
- FP7 (NiedokoÅczony): LLM podaje pÃģÅprawdy, brakuje mu waÅžnych elementÃģw.
WÄ skie gardÅa odzyskiwania i wydajnoÅci
Potok RAG moÅže byÄ niewydajny, gdy pomija kluczowe informacje w etapach odzyskiwania i konsolidacji. GÅÃģwne punkty awaryjne obejmujÄ :
- FP2 (PominiÄte dokumenty najwyÅžej ocenione): Model embeddings nie jest w stanie wybraÄ najlepszych dokumentÃģw k.
- FP3 (Ograniczenia strategii konsolidacji): Skrypt do obcinania dokumentÃģw, aby zmieÅciÄ siÄ w limitach LLM, usuwa najwaÅžniejsze czÄÅci.
BÅÄdy doÅwiadczenia uÅžytkownika i formatowania
ChociaÅž poprawny, wydruk z sÅabÄ czytelnoÅciÄ lub w niewÅaÅciwym formacie moÅže kompromitowaÄ doÅwiadczenie uÅžytkownika. GÅÃģwne punkty awaryjne obejmujÄ :
- FP5 (BÅÄdny format): LLM nie jest w stanie postÄpowaÄ zgodnie ze specyficznym formatem wyjÅciowym, takim jak JSON.
- FP6 (NiewÅaÅciwa szczegÃģÅowoÅÄ): LLM generuje obszerny wydruk dla prostej odpowiedzi tak/nie, lub odwrotnie (zbyt krÃģtkÄ odpowiedÅš na skomplikowane pytanie).
Stos ewaluacji: Ramy do Åagodzenia punktÃģw awaryjnych
Metryki ewaluacji sÄ
zaprojektowane w celu systematycznego Åagodzenia tych punktÃģw awaryjnych.
Ten rozdziaÅ bada gÅÃģwne metryki ewaluacji z praktycznymi przypadkami uÅžycia.
GÅÃģwne metryki ewaluacji RAG:
- DeepEval
- RAGAS
- TruLens
- Arize Phoenix
- Braintrust
DeepEval â Test jednostkowy przed wdroÅženiem
DeepEval oblicza wynik waÅžony na podstawie kryteriÃģw.
LLM-as-a-judge (np. GPT-4o) ocenia kaÅžde kryterium w stosunku do wyjÅcia LLM:

DeepEval wykorzystuje G-eval, ramÄ ÅaÅcucha myÅli (CoT), ktÃģra podejmuje wieloetapowe podejÅcie do oceny wyjÅcia:
- Definiuj kryterium do pomiaru (np. âspÃģjnoÅÄâ, âpoprawnoÅÄâ lub âistotnoÅÄâ).
- Generuj kroki ewaluacji (korzystajÄ c z LLM ewaluatora).
- PostÄpuj zgodnie z krokami ewaluacji i analizuj wejÅcie i wyjÅcie LLM.
- Oblicz oczekiwany waÅžony sumÄ wyniku kaÅždego kryterium.
Typowy przypadek w praktyce
- Sytuacja: Asystent techniczny (bot) dla zÅoÅžonego oprogramowania wydaje siÄ dziaÅaÄ kaÅždego razu, gdy zespÃģÅ inÅžynierÃģw aktualizuje kod.
- Problem: Brak iloÅciowego dowodu, czy bot moÅže nadal odpowiadaÄ na zapytanie uÅžytkownika (tylko âmyÅliszâ, Åže dziaÅaâĶ).
- RozwiÄ
zanie: Zintegruj funkcjÄ PyTest jako zestaw regresji CI/CD w Github Action, gdzie DeepEval uruchamia
G-Evali inne metryki nad przypadkiem testowym:
- Oczekiwane wyniki: JeÅli ktÃģrykolwiek wynik metryki spadnie poniÅžej progu (0,85), PyTest podnosi
AssertionErrorâ niezwÅocznie koÅczÄ c budowÄ CI, uniemoÅžliwiajÄ c cichÄ regresjÄ przed osiÄ gniÄciem produkcji.
Zalety i wady
- Istnieje wiele metryk (50+) w tym specjalistyczne sprawdzanie stronniczoÅci i toksycznoÅci.
- CaÅkowicie integruje siÄ z istniejÄ cymi potokami CI/CD.
- Brak odniesienia. Ocena wyjÅcia oparta wyÅÄ cznie na prompcie i dostarczonym kontekÅcie.
- JakoÅÄ oceny zaleÅžy wyÅÄ cznie od moÅžliwoÅci LLM sÄdziego.
- Obliczeniowo kosztowne, gdy LLM sÄdziego jest modelem wysokiej klasy.
Uwaga deweloperska â Przypadek testowy dla DeepEval
ZestawLLMTestCaseobiektÃģw definiuje przypadek testowy, ktÃģry DeepEval uruchamia.W praktyce ten przypadek testowy powinien zawieraÄ najwaÅžniejsze zapytania uÅžytkownikÃģw i etykietowane wyjÅcia z odzyskanym kontekstem.
MogÄ one byÄ pobrane z pliku JSON lub CSV.
RAGAS â Optymalizator igÅy w stogu siana
RAGAS ma na celu ocenÄ RAG bez zestawu danych z adnotacjami przez generowanie syntetycznych zestawÃģw testowych.
NastÄpnie oblicza flagowe metryki:

Figure B. Diagram triady oceny RAGAS ÅÄ czÄ cy pytanie, kontekst i odpowiedÅš za pomocÄ metryk precyzji, odzyskiwania, lojalnoÅci i istotnoÅci (stworzony przez Kuriko IWAI)
Flagowe metryki sÄ sklasyfikowane w trzy grupy:
- Potok odzyskiwania (czarna, ciÄ gÅa linia, Figure B): Precyzja kontekstu, odzyskiwanie kontekstu.
- Potok generacji (czarna, kropkowana linia, Figure B): LojalnoÅÄ, istotnoÅÄ odpowiedzi.
- Punkty odniesienia (czerwona skrzynka, Figure B): PodobieÅstwo semantyczne odpowiedzi, poprawnoÅÄ odpowiedzi.
Typowy przypadek w praktyce
- Sytuacja: System RAG dla umÃģw prawnych brakuje kluczowych klauzul. Nie jesteÅ pewien, czy problem leÅžy w wyszukiwaniu (odzyskiwacz) czy w czytaniu (generator).
- Problem: Brak pomysÅu na optymalny top-k (liczba pobranych fragmentÃģw).
- RozwiÄ zanie: UÅžyj RAGAS, aby utworzyÄ syntetyczny zestaw testowy z 100 par pytaÅ i dowodÃģw. NastÄpnie uruchom potok RAG na zestawie testowym, aby obliczyÄ precyzjÄ kontekstu i odzyskiwanie kontekstu:
- Oczekiwany wynik: W zaleÅžnoÅci od wynikÃģw metryk, plan dziaÅania moÅže byÄ nastÄpujÄ cy:
| Metryka | Wynik | Diagnoza | Plan dziaÅania |
| Precyzja kontekstu | Niski | Odzyskiwacz pominÄ Å poprawnÄ informacjÄ. | â ZwiÄksz top-k. â WyprÃģbuj wyszukiwanie hybrydowe (BM25 + Wektor). |
| Odzyskiwanie kontekstu | Niski | Najlepsze fragmenty k zawierajÄ zbyt wiele szumu i haÅasu â co myli LLM. | â Zmniejsz top-k â Zaimplementuj ponowne rangowanie (np. Cohere). |
| LojalnoÅÄ | Niski | Generator halucynuje, pomimo posiadania danych. | â Dostosuj prompty systemu. â SprawdÅš limity okna kontekstu. |
Tabela 1. Plan dziaÅania diagnostycznego RAGAS â Mapowanie wynikÃģw na dostosowania systemu.
Zalety i wady
- DoskonaÅy dla wczesnego etapu projektu bez zbiorÃģw danych odniesienia (jak widzieliÅmy w przykÅadzie kodu, RAGAS moÅže utworzyÄ syntetyczny zestaw testowy).
- Syntetyczny zestaw testowy moÅže nie uwzglÄdniaÄ nuansÃģw bÅÄdÃģw faktograficznych.
- Wymaga solidnego modelu ekstraktora, aby rozbiÄ odpowiedzi na poszczegÃģlne twierdzenia (w przykÅadzie uÅžyÅem
gpt-4o).
TruLens â Specjalista od pÄtli sprzÄÅženia zwrotnego
TruLens koncentruje siÄ na wewnÄtrznych mechanizmach procesu RAG, a nie tylko na koÅcowym wyjÅciu, uÅžywajÄ c funkcji sprzÄÅženia zwrotnego.
UÅžywa rÃģwnieÅž oceny LLM opartej na 4-punktowej skali Likerta (0-3), co sprawia, Åže jest lepszy w klasyfikowaniu jakoÅci rÃģÅžnych wynikÃģw wyszukiwania.
Typowy przypadek w praktyce
- Sytuacja: Bot doradcy medycznego odpowiada na pytanie uÅžytkownika poprawnie, ale dodaje wskazÃģwkÄ, ktÃģra nie jest w zweryfikowanej bazie PDF.
- Problem: Dodatkowa wskazÃģwka moÅže byÄ pomocna, ale nie jest uzasadniona.
- RozwiÄ
zanie: UÅžyj TruLens, aby zaimplementowaÄ funkcjÄ sprzÄÅženia zwrotnego z progiem, takim jak
score > 0.8.
- Oczekiwane wyniki: Gdy LLM generuje odpowiedÅš, ktÃģra zawiera informacje nieobecne w odzyskanych fragmentach, TruLens flaguje rekord w Twoim panelu.
Zalety i wady
- Wizualizuje ÅaÅcuch rozumowania, aby okreÅliÄ, gdzie exactly agent zboczyÅ z toru.
- Zapewnia wbudowane wsparcie dla ugruntowania, aby zÅapaÄ halucynacje w czasie rzeczywistym.
- ÅciÄ ga siÄ nauczenie definiowania niestandardowych funkcji sprzÄÅženia zwrotnego.
- Panel moÅže wydawaÄ siÄ ciÄÅžki dla prostych skryptÃģw.
Arize Phoenix â Cicha mapa awaryjna
Arize Phoenix to otwarte narzÄdzie obserwacyjne i ewaluacji do oceny wyjÅÄ LLM, w tym zÅoÅžonych systemÃģw RAG.
Zbudowany na OpenTelemetry przez Arize AI, koncentruje siÄ na obserwowalnoÅci, traktujÄ c ocenÄ LLM jako podzbiÃģr MLOps.
Typowy przypadek w praktyce
- Sytuacja: Bot wsparcia klienta dziaÅa dobrze dla zwrotÃģw, ale daje nonsensowne odpowiedzi na roszczenia gwarancyjne.
- Problem: Dziura w danych w magazynie wektorowym (nie moÅžna znaleÅšÄ w logach).
- RozwiÄ zanie: UÅžyj Arize Phoenix, aby wygenerowaÄ wizualizacjÄ Umap Embedding (UEV), 3D mapÄ dla magazynu wektorowego â aby naÅoÅžyÄ zapytania uÅžytkownikÃģw na fragmenty dokumentÃģw.
- Oczekiwane wyniki: Wizualnie zobacz klaster zapytaÅ uÅžytkownikÃģw lÄ dujÄ cych w strefie ciemnej, gdzie nie ma dokumentÃģw, co wskazuje, Åže niektÃģre dokumenty zostaÅy zapomniane i nie zostaÅy przesÅane do magazynu wektorowego.
Zalety i wady
- Rodzime OpenTelemetry; integruje siÄ z istniejÄ cymi firmowymi stosami monitorowania.
- Najlepsze narzÄdzie do wizualizacji sÅabych stron magazynu wektorowego.
- Mniej ukierunkowane na ocenianie, bardziej na obserwacjÄ.
- MoÅže byÄ zbyt wiele dla maÅych aplikacji lub narzÄdzi jednego agenta.
Braintrust â SieÄ bezpieczeÅstwa regresji promtu
Braintrust jest zaprojektowany do wysokoczÄstotliwoÅci cykli iteracji przy uÅžyciu porÃģwnania miÄdzy modelami.
Typowy przypadek w praktyce
- Sytuacja: ZespÃģÅ inÅžynierÃģw ulepsza prompty od âOdpowiedz na pytanieâ (przypadek A) do bardziej zÅoÅžonej 500-sÅownej instrukcji systemowej (przypadek B).
- Problem: Poprawienie promtu dla przypadku B moÅže nieumyÅlnie zÅamaÄ przypadek A.
- RozwiÄ
zanie: UÅžyj Braintrust, aby utworzyÄ zestaw danych z N idealnymi przykÅadami (np.
N = 50). PozwÃģl Braintrust uruchomiÄ porÃģwnanie rÃģwnolegÅe (SxS) za kaÅždym razem, gdy zespÃģÅ aktualizuje pojedyncze sÅowo w prompcie:
- Oczekiwany wynik: Raport rÃģÅžnic pokazujÄ cy, ktÃģre przypadki zostaÅy poprawione lub pogorszone dla kaÅždego z zestawu danych (N = 50).
Zalety i wady
- Ekstremalnie szybki do testowania przed wdroÅženiem.
- Åwietny interfejs dla nie-technicznych interesariuszy do przeglÄ dania i oceniania wyjÅcia.
- WÅasnoÅciowy/SaaS-ukierunkowany (chociaÅž majÄ komponenty open-source).
- Mniej wbudowanych metryk deep-tech w porÃģwnaniu z DeepEval lub RAGAS.
Podsumowanie
Gdy obsÅugiwane sÄ przez odpowiednie ramy ewaluacji, RAG moÅže byÄ konkurencyjnym narzÄdziem do zapewnienia LLM kontekstu najbardziej istotnego dla zapytania uÅžytkownika.
Strategia wdroÅženiowa: Mapowanie metryk na punkty awaryjne
ChociaÅž nie ma jednej uniwersalnej rozwiÄ zania, Tabela 2 pokazuje, ktÃģre metryki ewaluacji stosowaÄ dla kaÅždego punktu awaryjnego, ktÃģry omÃģwiliÅmy w tym artykule:
| Punkt awaryjny | PomysÅ na metrykÄ ewaluacji | Cecha do uÅžycia |
| FP1: BrakujÄ ca treÅÄ | RAGAS | LojalnoÅÄ / PoprawnoÅÄ odpowiedzi |
| FP2: PominiÄte dokumenty najwyÅžej ocenione | TruLens | Odzyskiwanie kontekstu / Precyzja |
| FP3: Konsolidacja | Arize Phoenix | Åledzenie odzyskiwania i analiza opÃģÅšnieÅ |
| FP4: Nie wyodrÄbniony | DeepEval | LojalnoÅÄ / Odzyskiwanie kontekstu |
| FP5: BÅÄdny format | DeepEval | G-Eval (Niestandardowa rubryka) |
| FP6: NiewÅaÅciwa szczegÃģÅowoÅÄ | Braintrust | RÄczna ocena i ewaluacja rÃģwnolegÅa |
| FP7: NiedokoÅczony | RAGAS | IstotnoÅÄ odpowiedzi |
Tabela 2. Macierz Åagodzenia punktÃģw awaryjnych â KtÃģre narzÄdzie rozwiÄ zuje ktÃģry punkt awaryjny?
DeepEval i RAGAS mogÄ wykorzystaÄ swoje metryki lojalnoÅci, aby zmierzyÄ awarie integralnoÅci danych (FP1, FP4, FP7).
TruLens wykorzystuje swojÄ precyzjÄ i odzyskiwanie kontekstu, aby zmierzyÄ istotnoÅÄ kontekstu w stosunku do wyjÅcia â skutecznie oceniajÄ c FP2.
Arize Phoenix zapewnia wizualny Ålad procesu odzyskiwania, co uÅatwia zobaczenie, czy odzyskany dokument zostaÅ utracony podczas konsolidacji (FP3).
Dla awarii UX, DeepEval tworzy niestandardowe metryki, aby oceniÄ awarie UX, podczas gdy Braintrust wyrÃģÅžnia siÄ w porÃģwnaniach zbiorÃģw danych odniesienia.












