Бірлік 8 / 11

RAG бағалауы және мониторингі

Табыстар:

  • Сақтау және жасау сапасын бөлек өлшейтін көрсеткіштерді анықтау
  • Алтын сұрақтар жинағын орнатыңыз және LLM-судья ретінде автоматты бағалауды іске қосыңыз
  • Өндірісте кері байланыс, мониторинг және регрессиялық тестілеу арқылы сапаны қолдау

«Мен көмекшіні орнаттым, жақсы жұмыс істеп тұрған сияқты» деген сөйлем инженерлік мәлімдеме емес. RAG жүйелері үнсіз бұзылады: жаңа құжат түрі іздеуді алдатады, жылдам өзгерту дәлдікті төмендетеді, индекс ескіреді. Мұны жүзеге асырудың жалғыз жолы - өлшеу. Бұл бөлімде біз RAG сапасын (іздеу және генерациялау бөлек), автоматты бағалауды (LLM-судья ретінде) және өндірісте сапаны қалай сақтау керектігін (мониторинг, регрессия) қарастырамыз. «Өлшемегенді жақсарта алмайсың» - бұл бөлімшенің ұраны.

Екі бөлек нәрсені өлшеңіз

RAG екі аяғы бар және оны бөлек өлшеу керек, себебі мәселе олардың біреуінде болуы мүмкін:

  1. Қайта алу сапасы: дұрыс бөлік келді ме?
  2. Генерация сапасы: Кіріс бөлігінен дұрыс жауап алынды ма?

Жауап нашар болса, алдымен қай аяқтың нашар екенін білу керек. Оң бөлік ешқашан келмесе, тіпті ең жақсы нұсқау да сақтай алмайды (іздеу мәселесі). Егер дұрыс бөлік келсе, бірақ үлгі оны қате оқыса, іздеуді жақсарту бекер (генерация мәселесі).

Іздеу көрсеткіштері

Іздеу - сұрыптау/қол жеткізу мәселесі; классикалық ақпаратты іздеу көрсеткіштерімен өлшенеді. Ол үшін сізде алтын кластер болуы керек: әрбір сұрақ бойынша қай бөліктің «дұрыс» екенін білу.

метрикалық

Қандай шаралар

Қарапайым анықтама

Recall@k

Үстіңгі k бөлігінде дұрыс бөлік бар ма?

Бөлшектерді дұрыс түсіру жылдамдығы

precision@k

Қайтарылған k даналардың қаншасы сәйкес келеді?

Әкелінетін заттарды тазалау

MRR (орташа өзара дәреже)

Дұрыс бөлік қай ретпен берілген?

Сыйлықтар жоғарғы қатарда болу

Хит жылдамдығы

Кем дегенде бір дұрыс бөлік келді ме?

Табыстың ең негізгі өлшемі

Практикалық түсініктеме: Recall@k төмен болса, бөлшектеу немесе іздеу стратегиясы (гибридтік, k, қайта бағалау) қайта өңделуі керек. Егер дәлдік төмен болса, бірақ еске түсіру жоғары болса, қайта рейтинг қосу - жақсы қадам.

Генерация көрсеткіштері

Дұрыс бөлік келгенде, біз модель шығарған жауап сапасын өлшейміз. Үш негізгі өлшем:

  • Адалдық: Жауаптағы әрбір талап мәтінмәнмен расталады ма? Сәйкестендіру бар ма? Бұл галлюцинацияның тікелей өлшемі.
  • Жауаптың өзектілігі: Жауап шын мәнінде сұраққа жауап бере ме, әлде тақырыптан тыс па?
  • Толықтық: контексттегі барлық тиісті ақпарат пайдаланылды ма, әлде ол жоқ па?

Олар көбінесе «шын/жалған» сияқты екілік емес, бағалау негізінде бағаланады (мысалы, 1-5).

Кеңес: Адалдықты бөлек көрсеткіш ретінде қадағалаңыз. Дәлдік азайған сайын адалдық азайса, мәселе ұрпақ болып табылады; Егер адалдық жоғары болса, бірақ жауап қате болса, мәселе дұрыс емес бөлікте (қайта алу). Бұл екі көрсеткіш бірге ақаудың орнын көрсететін компас болып табылады.

Алтын сұрақтар жинағын құру

Әрбір өлшеу үшін алтын жиынтық/бағалау деректер жинағы қажет: нақты сұрақтар + күтілетін дұрыс жауаптар + дұрыс бастапқы бөліктер. 500 кездейсоқ сұраққа қарағанда жақсы таңдалған 30-50 сұрақтан бастаған дұрыс. Жиынтыққа мыналарды қосыңыз: жиі қойылатын нақты сұрақтар, белгілі қиын сұрақтар, жауаптары жоқ тұзақ сұрақтары («білмеймін» деп айту керек), қайшы дереккөздері бар сұрақтар.

# Алтын кластер мысалы (концептуалды)[ {"сұрақ": "Жыл сайынғы еңбек демалысы қанша күн?", "күтілетін_жауап": "1-5 жыл еңбек өтілі үшін 14 күн", "дұрыс_бөлік идентификаторы": "екі бөлім-3", "санат": "кетіңіз"}, {"сұрақ": "кеңсе қай жерде," '_жауап бердім?" "АҚПАРАТ ЖОҚ", # тұзақ: "дұрыс_бөлік_идентификаторын" білмеймін: null, "категория": "тұзақ"}]

LLM-судья ретінде: автоматты бағалау

Жүздеген жауаптарды қолмен қою шаршатады. LLM-судья моделі - бұл бір модель басқа модельдің жауабын белгілі бір критерийлер негізінде бағалап, негіздейді. Жақсы судья критерийлерді нақты анықтайды, мысалдар келтіреді және негіздеуді сұрайды.

# LLM-судья ретінде жедел (концептуалды)Сіз бейтарап бағалаушысыз. Төмендегі ЖАУАПты берілген КОНТЕКС пен КҮТІЛГЕН ЖАУАПқа сәйкес бағалаңыз. Балл (1-5) және негіздеңіз:- адалдық: жауаптағы әрбір талап контекстте қолдау тапты ма?- дәлдік: жауап күтілетін жауапқа сәйкес келе ме?- толықтық: сәйкес ақпарат толық па? Атап айтқанда: егер жауапта мәтінмәнге сай емес ақпарат болса, сенімділік1 көрсетіңіз және қай шағымның ойдан шығарылғанын көрсетіңіз. МӘНМЕТ: {контекст}КҮТІЛГЕН: {күтілетін}ЖАУАП: {жауап}Шығыс: {адалдық, дәлдік, толықтық, негіздеме}

Абайлаңыз: LLM-судья мінсіз емес; Олардың өзіндік көзқарастары болуы мүмкін (ұзақ жауап, өз стилін қалайды). Сондай-ақ төрешіні тексеріңіз: кейбір жауаптарды төреші де, адам да бағалап, олардың арасындағы келісімді өлшеңіз. Егер судья адам ұпайларына сәйкес келсе, оған сенуге болады.

Әлсіз/Күшті рейтинг

Әлсіз («бұл мен үшін жақсы болды»):

Мен бірнеше сұрақ қойдым және жауаптар жақсы көрінді. Мен оны тікелей алдым. # Мәселе: өлшемдер жоқ, регрессия байқалмайды, жақсарту соқыр.

Күшті (алтын кластер + дискретті көрсеткіштер + автоматты пайымдау + регрессия):

40 сұрақтан тұратын алтын кластер. Әрбір өзгерту, recall@5, адалдық пен дәлдік автоматты түрде өлшенеді. Егер ұпай төмендесе, өзгеріс кері қайтарылады. Өндірісте пайдаланушының пікірлері жиналады және жинаққа қосылады.

Өндірістегі мониторинг және регрессия

Бағалау бір рет жасалып бітпейді. Үш тұрақты тәжірибе:

  • Регрессиялық тестілеу: әрбір шақыру/шығару/үлгі өзгертуінде алтын кластерді автоматты түрде іске қосу. Егер ұпай азайса, өзгеріс кері қайтарылады. Бұл «оны жақсартуға тырысқанда оны бұзуға» жол бермейді.
  • Өндіріс мониторингі: нақты сұрақтардағы «ақпарат таба алмадым» жылдамдығы, орташа кідіріс, баға, пайдаланушы пікірі (👍/👎) бақыланады. «Мен білмеймін» кенеттен жоғарылауы көбінесе индекстің немесе іздеу ақауының алғашқы белгісі болып табылады.
  • Кері байланыс циклі: пайдаланушы ұсынған нақты сұрақтар 👎 қаралып, алтын діңге қосылады; Осылайша, жиынтық уақыт өте бай болады және жүйенің соқыр жерлері жабылады.

Үш шағын корпус

1-жағдай — Үнсіз регрессия. Топ оны «жетілдіру» үшін шақыруды өзгертті; Жалпы дәлдік өсті, бірақ тұзақ сұрақтарында сенімділік 30%-ға төмендеді (үлгі көбірек сәйкес келе бастады). Алтын шоғырдағы тұзақ сұрақтары болмаса, бұл байқалмас еді; Регрессиялық тест өзгерісті қайтарды.

2-жағдай — дұрыс емес аяқты түзету. Бір ассистентте жауаптар нашар болды; Топ апта бойы жедел түрде жұмыс істеді. Біз іздеу көрсеткіштерін өлшеген кезде, recall@5 небәрі 48% болды — мәселе генерацияда емес, іздеуде болды. Гибридті + қайта рейтингті қосқанда, еске түсіру 89% дейін өсті және дәлдік те өсті.

3-жағдай — Өндіріс туралы ескерту. Бір күні қолдау көрсетуші көмекшісі үшін «Мен ақпаратты таба алмадым» көрсеткіші 6%-дан 34%-ға дейін көтерілді. Сенсорлық тақта ескертті; Себебі, түнде жұмыс істейтін индекстеу жұмысы үнсіз істен шығып, жаңа мақалалар жүктелмеді. Мониторинг болмаса, «білмеймін» деген дұрыс емес мәлімдемелер күндер бойы жалғасатын еді.

Жалпы қателер

  • «Бұл мен үшін жақсы жұмыс істеді» деген қанағаттану: өлшеусіз регрессия байқалмайды.
  • Іздеу мен генерацияны бөлмеу: Сіз дұрыс емес аяқты түзетесіз және уақытты босқа өткізесіз.
  • Тұзақ сұрақтарын қоймау: заттарды жасау үрдісі алтын кластерде пайда болмайды.
  • Судьяны тексермейді: біржақты қазылар алқасы жалған сенім береді.
  • Өндірісті бақыламау: индекстің сәтсіздігі, шығындардың жарылысы үнсіз жалғасуда.

Қысқаша айтқанда

  • RAG-да іздеу және генерациялау сапасы бөлек өлшенеді; Алдымен қай аяқтың зақымдалғанын анықтау керек.
  • recall@k, precision@k, Retrieval үшін MRR; Ұрпақ үшін адалдық, жарамдылық, толықтық қолданылады.
  • Әрбір өлшем алтын кластерді қажет етеді; Оған нақты, қиын, тұзақ және қарама-қайшы сұрақтар қойыңыз.
  • LLM-судья ретінде үлкен жинақтар автоматты ұпайлар; бірақ судьяның өзі адамға қарсы ақталуы керек.
  • Регрессиялық тестілеу, өндірісті бақылау және кері байланыс циклі уақыт өте келе сапаны сақтайды.

Қолданбалы тапсырма

(1) Өз көмекшіңіз үшін кемінде 15 сұрақтан тұратын алтын жинағын жасаңыз: кем дегенде 3 тұзақ (жауап жоқ), 3 қиын, 2 қайшы бастапқы сұрақты қосыңыз. Әр сұраққа күтілетін жауапты және дұрыс бөлігін жазыңыз. (2) Осы жинақпен екі түрлі нұсқауды қолмен салыстыру; Әр жауапқа адалдық пен дәлдік үшін 1-5 ұпай беріңіз. (3) Жоғарыдағы LLM-судья ретінде сұрауды өз критерийлеріңізге бейімдеңіз. (4) Өндірісте қадағалайтын 3 көрсеткішті анықтаңыз және әрқайсысы үшін «қандай шектерде дабыл беремін?» деп сұраңыз. мәнін жазыңыз.

бақылау парағы

  • [ ] Мен сақтау және жасау сапасын бөлек көрсеткіштермен өлшей аламын.
  • [ ] Мен recall@k, адалдық сияқты көрсеткіштердің нені білдіретінін білемін.
  • [ ] Мен нақты, қиын, тұзақ және қарама-қайшы сұрақтарды қамтитын алтын кластер құра аламын.
  • [ ] Мен автоматты бағалауды орнатып, судьяны LLM-судья арқылы тексере аламын.
  • [ ] Мен регрессиялық тестілеуді, өндірісті бақылауды және кері байланыс циклін басқара аламын.