Gevinster:
- Definere beregninger som måler oppbevaring og generasjonskvalitet separat
- Sett opp et gullspørsmål og kjør automatisk evaluering med LLM-som-dommer
- Opprettholde kvalitet gjennom tilbakemelding, overvåking og regresjonstesting i produksjon
Setningen "Jeg installerte assistenten, den ser ut til å fungere bra" er ikke en teknisk uttalelse. RAG-systemer bryter sammen lydløst: en ny dokumenttype lurer hentingen, en umiddelbar endring reduserer nøyaktigheten, indeksen blir foreldet. Den eneste måten å realisere dette på er å måle. I denne enheten dekker vi hvordan man kan måle RAG-kvalitet (henting og generering separat), automatisk evaluering (LLM-as-judge) og opprettholde kvalitet i produksjonen (overvåking, regresjon). "Du kan ikke forbedre det du ikke måler" er mottoet til denne enheten.
Mål to separate ting
RAG har to ben og må måles separat fordi problemet kan være i en av dem:
- Hentingskvalitet: Kom riktig del?
- Generasjonskvalitet: Ble det riktige svaret produsert fra det innkommende stykket?
Hvis svaret er dårlig, må du først vite hvilket ben som er dårlig. Hvis den riktige delen aldri kommer, kan ikke selv den beste ledeteksten lagre (hentingsproblem). Hvis den riktige delen kom, men modellen leste den feil, er det nytteløst å forbedre gjenfinningen (generasjonsproblem).
Hentingsmålinger
Henting er et sorterings-/tilgangsproblem; målt ved hjelp av klassisk informasjonsinnhenting. For dette må du ha den gylne klyngen: kunnskapen om hvilken brikke som er "riktig" for hvert spørsmål.
metrisk
Hvilke tiltak
Enkel definisjon
Recall@k
Er det riktige stykket i toppen k?
Riktig delfangsthastighet
presisjon@k
Hvor mange av de k stykkene som returneres er relevante?
Rengjøring av det medbrakte
MRR (Mean Reciprocal Rank)
I hvilken rekkefølge er det riktige stykket?
Belønner å være i de øverste rekkene
Treffrate
Kom det minst ett riktig stykke?
Det mest grunnleggende målet for suksess
Praktisk kommentar: Hvis Recall@k er lav, bør chunking- eller søkestrategi (hybrid, k, omrangering) omarbeides. Hvis presisjonen er lav, men tilbakekallingen er høy, er det et godt grep å legge til omrangering.
Generasjonsmålinger
Når den riktige delen kommer, måler vi kvaliteten på responsen produsert av modellen. Tre grunnleggende dimensjoner:
- Trofasthet: Er hver påstand i svaret støttet av kontekst? Er det noe passende? Det er et direkte mål på hallusinasjoner.
- Svarrelevans: Svarer svaret faktisk på spørsmålet eller er det utenfor temaet?
- Fullstendighet: Er all relevant informasjon i sammenhengen brukt eller mangler den?
Disse blir ofte skåret på en gradert basis (f.eks. 1-5), i stedet for binære som "sant/usant."
Tips: Spor trofasthet som en egen beregning. Hvis trofastheten avtar når nøyaktigheten avtar, er problemet generasjon; Hvis trofastheten er høy, men svaret er feil, er problemet feil brikke (henting). Sammen er disse to metrikkene et kompass som viser plasseringen av feilen.
Etablering av et gyldent spørsmålssett
Hver måling krever et gyldent sett / evalueringsdatasett: realistiske spørsmål + forventede riktige svar + riktige kildedeler. Å starte med 30-50 velvalgte spørsmål er bedre enn 500 tilfeldige spørsmål. Ta med følgende i settet: ofte stilte virkelige spørsmål, kjente vanskelige spørsmål, fellespørsmål uten svar (man bør si "jeg vet ikke"), spørsmål med motstridende kilder.
# Golden cluster-eksempel (konseptuelt)[ {"question": "Hvor mange dager med årlig ferie?", "expected_answer": "14 dager for 1-5 års ansiennitet", "correct_part_id": "two-part-3", "category": "permisjon"}, {"question": "Where is the company's "felle_NO_answer:IN?", #expeded IN?" Jeg vet ikke "correct_part_id": null, "category": "trap"}]
LLM-as-Judge: Automatisk vurdering
Å score hundrevis av svar for hånd er slitsomt. LLM-as-judge-modell er når en modell skårer og begrunner en annen modells svar basert på visse kriterier. En god dommeroppfordring definerer kriteriene tydelig, gir eksempler og ber om begrunnelse.
# LLM-as-judge prompt (konseptuell) Du er en upartisk evaluator. Vurder SVARET nedenfor i henhold til gitt KONTEKST og FORVENTET SVAR. Score (1-5) og begrunn:- trofasthet: støttes hver påstand i svaret i kontekst?- nøyaktighet: stemmer svaret med forventet svar?- fullstendighet: er den relevante informasjonen fullstendig? Spesielt: hvis svaret inneholder informasjon som ikke er i konteksten, gi trofasthet1 og angi hvilken påstand som er oppdiktet. KONTEKST: {kontekst} FORVENTET: {forventet}SVAR: {svar}Utdata: {trofasthet, nøyaktighet, fullstendighet, begrunnelse}
Forsiktig: LLM-som-dommer er ikke perfekt; De kan ha sine egne skjevheter (langt svar, foretrekker sin egen stil). Bekreft også dommer: få noen svar scoret av både dommeren og mennesket og mål samsvaret mellom dem. Hvis Judge er konsistent med menneskelige poeng, kan du stole på ham.
Svak/sterk vurdering
Svak ("det var bra for meg"):
Jeg stilte noen spørsmål og svarene virket bra. Jeg har det live.# Problem: ingen målinger, regresjon umerkelig, forbedring blind.
Kraftig (gullklynge + diskrete beregninger + automatisk vurdering + regresjon):
Gylden klynge med 40 spørsmål. Med hver endring, recall@5, måles trofasthet og nøyaktighet automatisk. Hvis poengsummen faller, rulles endringen tilbake. I produksjonen samles brukertilbakemeldinger og legges til settet.
Overvåking og regresjon i produksjon
Evaluering gjøres ikke én gang og fullført. Tre konstante praksiser:
- Regresjonstesting: Kjør gyllen klynge automatisk ved hver melding/henting/modellendring. Hvis poengsummen reduseres, reverseres endringen. Dette forhindrer "å bryte det mens du prøver å gjøre det bedre".
- Produksjonsovervåking: "Jeg kunne ikke finne informasjon" rate i reelle spørsmål, gjennomsnittlig forsinkelse, kostnad, tilbakemeldinger fra brukere (👍/👎) overvåkes. En plutselig økning i "jeg vet ikke" er ofte det første tegn på en indeks- eller gjenfinningsfeil.
- Tilbakemeldingssløyfe: De virkelige spørsmålene fra brukeren 👎 gjennomgås og legges til den gylne haugen; Dermed blir settet rikere over tid og systemets blindsoner lukkes.
Tre minivesker
Tilfelle 1 - Stille regresjon. Et team endret forespørselen for å "forbedre" den; Generell nøyaktighet økte, men trofastheten ble redusert med 30 % i fellespørsmål (modellen begynte å passe mer). Det hadde ikke blitt lagt merke til hvis det ikke var for fellespørsmålene i den gylne klyngen; Regresjonstesting snudde endringen.
Tilfelle 2 — Rette ut feil ben. Hos en assistent var svarene dårlige; Teamet jobbet på oppfordringen i flere uker. Da vi målte gjenfinningsberegningene, var recall@5 bare 48 % - problemet var gjenfinning, ikke generering. Når hybrid + omrangering ble lagt til, økte tilbakekallingen til 89 % og nøyaktigheten økte også.
Sak 3 — Produksjonsvarsel. En dag hoppet "Jeg fant ikke informasjon"-raten for en støtteassistent fra 6 % til 34 %. Styreflaten advarte; Årsaken var at indekseringsjobben, som kjører om natten, stille mislyktes og nye artikler ble ikke lastet opp. Uten overvåking ville uriktige "jeg vet ikke"-utsagn ha fortsatt i flere dager.
Vanlige feil
- Å være fornøyd med "det fungerte bra for meg": Uten måling går regresjon ubemerket.
- Ikke skille gjenfinning og generasjon: Du vil korrigere feil bein og kaste bort tid.
- Ikke stille fellespørsmål: Tendensen til å finne på ting vises ikke i den gylne klyngen.
- Ikke bekreftende dommer: En partisk jury gir falsk tillit.
- Overvåker ikke produksjonen: Indekssvikt, kostnadseksplosjon fortsetter stille.
Oppsummert
- I RAG måles uthenting og generasjonskvalitet separat; Det må først avgjøres hvilket ben som er skadet.
- recall@k, precision@k, MRR for henting; Trofasthet, egnethet, fullstendighet brukes til generasjon.
- Hver måling krever en gullklynge; Sett ekte, vanskelige, felle og motstridende spørsmål i den.
- LLM-som-dommer store sett auto-scores; men dommeren selv må rettferdiggjøres mot mennesket.
- Regresjonstesting, produksjonsovervåking og en tilbakemeldingssløyfe opprettholder kvaliteten over tid.
Søknadsoppgave
(1) Lag et gyldent sett med minst 15 spørsmål til din egen assistent: ta med minst 3 feller (ingen svar), 3 vanskelige, 2 motstridende kildespørsmål. Skriv forventet svar og riktig del for hvert spørsmål. (2) Sammenlign to forskjellige promptversjoner manuelt med dette settet; Gi hvert svar 1-5 poeng for trofasthet og nøyaktighet. (3) Tilpass LLM-as-dommer-forespørselen ovenfor til dine egne kriterier. (4) Identifiser 3 beregninger du vil spore i produksjonen og for hver spør "ved hvilken terskel alarmerer jeg?" skriv verdien.
sjekkliste
- [ ] Jeg kan måle oppbevaring og generasjonskvalitet med separate beregninger.
- [ ] Jeg vet hva beregninger som recall@k, trofasthet betyr.
- [ ] Jeg kan bygge en gylden klynge som inkluderer ekte, vanskelige, felle og motstridende spørsmål.
- [ ] Jeg kan sette opp automatisk evaluering og verifisere dommeren med LLM-som-dommer.
- [ ] Jeg kan betjene regresjonstesting, produksjonsovervåking og tilbakemeldingssløyfe.