Dobički:
- Definiranje metrik, ki ločeno merijo kakovost zadrževanja in ustvarjanja
- Nastavite zlati niz vprašanj in zaženite samodejno ocenjevanje z LLM-as-judge
- Ohranjanje kakovosti s povratnimi informacijami, spremljanjem in regresijskim testiranjem v proizvodnji
Stavek "Namestil sem pomočnika, zdi se, da dobro deluje" ni inženirska izjava. Sistemi RAG se tiho pokvarijo: nova vrsta dokumenta preslepi iskanje, hitra sprememba zmanjša natančnost, indeks postane zastarel. Edini način, da to spoznate, je merjenje. V tej enoti pokrivamo, kako izmeriti kakovost RAG (ločeno pridobivanje in ustvarjanje), samodejno vrednotenje (LLM-as-judge) in vzdrževati kakovost v proizvodnji (nadzor, regresija). "Ne moreš izboljšati česar ne meriš" je moto te enote.
Izmerite dve ločeni stvari
RAG ima dve nogi in ju je treba meriti ločeno, ker je težava lahko v eni od njiju:
- Kakovost pri pridobivanju: Ali je prišel pravi del?
- Kakovost generiranja: Ali je bil pravilen odgovor proizveden iz dohodnega dela?
Če je odgovor slab, morate najprej vedeti, katera noga je slaba. Če pravi del nikoli ne prispe, tudi najboljši poziv ne more shraniti (težava pri pridobivanju). Če je prispel pravi del, vendar ga je model napačno prebral, je izboljšanje priklica zaman (težava pri generiranju).
Meritve iskanja
Pridobivanje je problem razvrščanja/dostopa; merjeno s klasično metriko iskanja informacij. Za to morate imeti zlati grozd: vedeti, kateri kos je "pravilen" za posamezno vprašanje.
metrika
Kakšni ukrepi
Preprosta definicija
Odpoklic@k
Ali je pravi kos v zgornjem k?
Pravilna stopnja zajemanja delov
natančnost@k
Koliko od k vrnjenih kosov je ustreznih?
Čiščenje prinesenega
MRR (povprečni recipročni rang)
V katerem vrstnem redu je pravilen del?
Nagrade so v najvišjih rangih
Stopnja zadetkov
Je prišel vsaj en pravi kos?
Najbolj osnovno merilo uspeha
Praktična pripomba: Če je Recall@k nizek, je treba predelati strategijo razčlenjevanja ali iskanja (hibrid, k, ponovno razvrščanje). Če je natančnost nizka, vendar je priklic velik, je dodajanje ponovnega razvrščanja dobra poteza.
Meritve generacije
Ko prispe pravi del, izmerimo kakovost odziva modela. Tri osnovne dimenzije:
- Zvestoba: Ali je vsaka trditev v odgovoru podprta s kontekstom? Ali obstaja kakšen primerek? Je neposredno merilo halucinacije.
- Ustreznost odgovora: Ali odgovor dejansko odgovarja na vprašanje ali ni povezan s temo?
- Popolnost: Ali so bile uporabljene vse ustrezne informacije v kontekstu ali manjkajo?
Ti so pogosto ocenjeni na podlagi stopenj (npr. 1–5) in ne binarno, kot je »true/false«.
Nasvet: spremljajte zvestobo kot ločeno meritev. Če se z zmanjševanjem natančnosti zmanjša zvestoba, je problem generacija; Če je zvestoba visoka, vendar je odgovor napačen, je težava napačen del (priklic). Ti dve metriki skupaj predstavljata kompas, ki prikazuje lokacijo napake.
Vzpostavitev zlatega niza vprašanj
Vsaka meritev zahteva zlati nabor/nabor ocenjevalnih podatkov: realna vprašanja + pričakovani pravilni odgovori + pravilni viri. Bolje je začeti s 30–50 dobro izbranimi vprašanji kot s 500 naključnimi vprašanji. V nabor vključite naslednje: pogosto zastavljena resnična vprašanja, znana težka vprašanja, vprašanja pasti brez odgovorov (reči bi morali "ne vem"), vprašanja z nasprotujočimi si viri.
# Primer zlatega grozda (konceptualni)[ {"question": "Koliko dni letnega dopusta?", "expected_answer": "14 dni za 1-5 let delovne dobe", "correct_part_id": "two-part-3", "category": "leave"}, {"question": "Kje je pisarna podjetja Mars?", "expected_answer": "NO_INFORMATION", # trap: ne vem "correct_part_id": null, "category": "trap"}]
LLM-as-Judge: Samodejno ocenjevanje
Ročno točkovanje na stotine odgovorov je utrujajoče. Model LLM-as-judge je, ko en model oceni in utemelji odgovor drugega modela na podlagi določenih meril. Dober poziv sodnika jasno opredeli merila, poda primere in zahteva utemeljitev.
# Poziv LLM-as-judge (konceptualno) Ste nepristranski ocenjevalec. Spodnji ODGOVOR ovrednotite glede na podani KONTEKST in PRIČAKOVANI ODGOVOR. Ocenite (1–5) in utemeljite:- zvestoba: ali je vsaka trditev v odgovoru podprta v kontekstu?- natančnost: ali se odgovor ujema s pričakovanim odgovorom?- popolnost: ali so ustrezne informacije popolne? Zlasti: če odgovor vsebuje informacije, ki niso v kontekstu, navedite verodostojnost1 in označite, katera trditev je izmišljena. KONTEKST: {kontekst}PRIČAKOVANO: {pričakovano}ODGOVOR: {odgovor}Izhod: {zvestoba, točnost, popolnost, utemeljitev}
Pozor: LLM-as-judge ni popoln; Morda imajo lastne pristranskosti (dolg odgovor, raje imajo svoj slog). Preverite tudi sodnika: sodnik in človek naj ocenita nekaj odgovorov ter izmerite soglasje med njima. Če je Judge skladen s človeškimi rezultati, mu lahko zaupate.
Ocena Slabo/Močno
Slabo ("bilo je dobro zame"):
Postavil sem nekaj vprašanj in odgovori so se zdeli dobri. Imam ga v živo. # Težava: ni meritev, regresija neopazna, izboljšanje slepo.
Zmogljiv (zlati grozd + diskretna metrika + avtomatska presoja + regresija):
Zlati grozd 40 vprašanj. Z vsako spremembo, recall@5, se zvestoba in natančnost samodejno izmerita. Če rezultat pade, se sprememba razveljavi. V proizvodnji se povratne informacije uporabnikov zbirajo in dodajajo v komplet.
Monitoring in regresija v proizvodnji
Evalvacija ni enkrat opravljena in končana. Tri stalne prakse:
- Regresijsko testiranje: samodejno zaženi zlato gručo ob vsakem pozivu/priklicu/spremembi modela. Če se rezultat zmanjša, se sprememba razveljavi. To preprečuje, da bi ga "zlomili, medtem ko ga poskušamo izboljšati".
- Spremljanje proizvodnje: spremlja se stopnja "Nisem našel informacij" v resničnih vprašanjih, povprečna zamuda, stroški, povratne informacije uporabnikov (👍/👎). Nenaden porast "ne vem" je pogosto prvi znak okvare indeksa ali iskanja.
- Zanka povratnih informacij: prava vprašanja, ki jih zastavi uporabnik 👎, se pregledajo in dodajo zlatemu kupu; Tako se nabor sčasoma obogati in slepe pege sistema se zaprejo.
Trije mini kovčki
Primer 1 – Tiha regresija. Ekipa je spremenila poziv, da bi ga "izboljšala"; Splošna natančnost se je povečala, vendar se je zvestoba zmanjšala za 30 % pri vprašanjih s pastmi (model se je začel bolj prilegati). Ne bi se opazilo, če ne bi bilo vprašanj past v zlatem grozdu; Regresijsko testiranje je razveljavilo spremembo.
Primer 2 — Izravnava napačne noge. Pri enem asistentu so bili odgovori slabi; Ekipa je tedne delala na pozivu. Ko smo izmerili metriko iskanja, je bil recall@5 le 48 % – težava je bila v iskanju, ne v ustvarjanju. Ko je bil dodan hibrid + ponovno razvrščanje, se je priklic povečal na 89 %, povečala pa se je tudi natančnost.
Primer 3 – opozorilo o proizvodnji. Nekega dne je stopnja »Nisem našel informacij« za pomočnika podpore poskočila s 6 % na 34 %. Sledilna ploščica je opozorila; Razlog je bil v tem, da je opravilo indeksiranja, ki poteka ponoči, tiho odpovedalo in novi članki niso bili naloženi. Brez spremljanja bi se napačne izjave "ne vem" nadaljevale več dni.
Pogoste napake
- Biti zadovoljen z "meni je dobro delovalo": brez merjenja gre regresija neopažena.
- Neločevanje priklica in generiranja: popravili boste napačno nogo in izgubili čas.
- Ne postavljajte vprašanj pasti: Težnja po izmišljevanju se ne pojavi v zlatem grozdu.
- Sodnik, ki ne preverja: Pristranska žirija daje lažno zaupanje.
- Ne spremlja proizvodnje: napaka indeksa, eksplozija stroškov se tiho nadaljuje.
Če povzamem
- V RAG se kakovost pridobivanja in generiranja meri ločeno; Najprej je treba ugotoviti, katera noga je poškodovana.
- odpoklic@k, natančnost@k, MRR za iskanje; Zvestoba, primernost, popolnost se uporabljajo za generiranje.
- Vsaka meritev zahteva zlato grozd; Vanj postavite resnična, težka, zapletena in protislovna vprašanja.
- LLM-as-judge veliki kompleti samodejnih rezultatov; ampak sodnik sam mora biti opravičen proti človeku.
- Regresijsko testiranje, spremljanje proizvodnje in povratna zanka ohranjajo kakovost skozi čas.
Aplikacijska naloga
(1) Ustvarite zlati nabor vsaj 15 vprašanj za svojega lastnega pomočnika: vključite vsaj 3 pasti (brez odgovorov), 3 težka vprašanja, 2 protislovni vprašanji. Pri vsakem vprašanju napišite pričakovani odgovor in pravilni del. (2) Ročno primerjajte dve različni različici poziva s tem nizom; Vsakemu odgovoru dajte 1-5 točk za zvestobo in natančnost. (3) Zgornji poziv LLM-as-judge prilagodite svojim merilom. (4) Določite 3 meritve, ki jim boste sledili v proizvodnji, in za vsako vprašajte »pri katerem pragu sprožim alarm?« napišite vrednost.
kontrolni seznam
- [ ] Kakovost ohranjanja in ustvarjanja lahko merim z ločenimi meritvami.
- [ ] Vem, kaj pomenijo meritve, kot sta recall@k, zvestoba.
- [ ] Lahko sestavim zlato gručo, ki vključuje resnična, težka, zapeljiva in protislovna vprašanja.
- [ ] Lahko nastavim samodejno ocenjevanje in preverim sodnika z LLM-as-judge.
- [ ] Upravljam lahko regresijsko testiranje, spremljanje proizvodnje in povratno zanko.