Հալյուցինացիաների թեստավորում

«Հալյուցինացիան» AI համակարգերի ամենաքննարկվող failure mode-երից մեկն է․ մոդելը հայտարարում է մի բան, որը կեղծ է, հորինված կամ չհիմնավորված սկզբնաղբյուր նյութով, բայց ներկայացնում է այն նույն վստահությամբ, ինչ ճիշտ պատասխանը։ QA ինժեների համար հալյուցինացիաները դժվար է բռնել հենց այն պատճառով, որ դրանք bug-ի տեսք չունեն — չկա error message, չկա crash, կա պարզապես սխալ պատասխան, որը ներկայացված է համոզիչ կերպով։

Այս հոդվածում կանդրադառնանք․

  1. Ի՞նչ է հալյուցինացիան
  2. Ինչու՞ են դրանք տեղի ունենում
  3. Հալյուցինացիաների հիմնական տեսակները
  4. Ինչպե՞ս ձևավորել test case-ներ հալյուցինացիաների համար
  5. Ինչպե՞ս չափել և հաշվետվել հալյուցինացիայի հաճախականությունը

Ի՞նչ է հալյուցինացիան

AI թեստավորման համատեքստում հալյուցինացիան ցանկացած արդյունք է, որը ներկայացվում է որպես փաստ, բայց չի հիմնավորվում մոդելի ուսուցման տվյալներով, տրված սկզբնաղբյուր փաստաթղթերով կամ իրականությամբ։ Սա տարբերվում է ազնիվ «ես չգիտեմ» պատասխանից — հալյուցինացիան վստահորեն սխալ է, ոչ թե ազնվորեն անորոշ, և հենց սա է այն վտանգավոր դարձնում production-ում։ Support bot, որը հորինում է գոյություն չունեցող վերադարձի քաղաքականություն, կամ document summarizer, որն ավելացնում է դետալ, որը սկզբնաղբյուրում չի եղել — երկուսն էլ հալյուցինացնում են, նույնիսկ եթե ոչ մեկը crash չի տվել։

Ինչու՞ են հալյուցինացիաները տեղի ունենում

Լեզվական մոդելները տեքստ են գեներացնում՝ կանխատեսելով վիճակագրորեն ամենահավանական հաջորդ բառը, ելնելով ուսուցման տվյալներից սովորած օրինաչափություններից — դրանք ներկառուցված մեխանիզմ չունեն՝ նախքան արտադրելը ստուգելու, թե արդյոք նախադասությունն իրապես ճիշտ է։ Մի քանի պայման մեծացնում է հալյուցինացիայի հավանականությունը․

  • Հարցը վերաբերում է թեմայի, որը դուրս է կամ եզրին է այն ամենի, ինչի վրա մոդելը վարժեցվել է։
  • Հարցումը երկիմաստ է ձևակերպված, և մոդելը լրացնում է բացերը հավանական թվացող ենթադրությամբ։
  • Համակարգից պահանջվում է շատ կոնկրետ փաստ (ամսաթիվ, վիճակագրություն, մեջբերում), որտեղ սահուն, բայց սխալ պատասխանը մոդելի համար հեշտ է արտադրել, իսկ օգտատիրոջ համար՝ դժվար նկատել։
  • Համակարգը ստիպված է միշտ պատասխան տալ, փոխարենը՝ թույլատրելի լինի ազնվորեն ասել, որ չգիտի։

Հալյուցինացիաների հիմնական տեսակները

Հալյուցինացիաները միասնական failure pattern չեն, և օգտակար test strategy-ն սովորաբար տարբերակում է մի քանի տեսակ․

  • Փաստացի հալյուցինացիաներ — ուղղակի կեղծ հայտարարություն, օրինակ՝ սխալ ամսաթիվ, անուն կամ թիվ։
  • Կոնտեքստային հալյուցինացիաներ — պատասխանը հակասում է հարցման կամ սկզբնաղբյուր փաստաթղթում ուղղակիորեն տրված տեղեկությանը։
  • Հորինված աղբյուրներ — հորինված մեջբերումներ, հղումներ կամ աղբյուրներ, որոնք հնչում են իրական, բայց գոյություն չունեն։
  • Տրամաբանական հալյուցինացիաներ — պատասխանում առանձին փաստերը կարող են ճիշտ լինել, բայց դրանք կապող տրամաբանությունն իրականում չի աշխատում։

Իմանալը, թե որ տեսակն եք փնտրում, փոխում է test-ի ձևավորումը․ կոնտեքստային հալյուցինացիաների ստուգումը պահանջում է թեստավորում հայտնի սկզբնաղբյուր փաստաթղթի դեմ, իսկ հորինված աղբյուրների ստուգումը՝ համակարգի արտադրած յուրաքանչյուր մեջբերման ստուգում։

Ինչպե՞ս ձևավորել test case-ներ հալյուցինացիաների համար

Հալյուցինացիաների արդյունավետ թեստավորումը սովորաբար համադրում է մի քանի տեխնիկա․

  • Համեմատություն ստուգված պատասխանի հետ — տվեք հարցեր, որոնց ճիշտ պատասխանն արդեն գիտեք, իդեալում՝ ձեր վերահսկած սկզբնաղբյուր փաստաթղթից, և ուղիղ համեմատեք արդյունքը։
  • Շրջանակից դուրս ուսումնասիրություն — դիտավորյալ հարցրեք թեմաների մասին, որոնք համակարգը չպետք է իմանա, տեսնելու համար՝ արդյոք ընդունում է անորոշությունը, թե՞ հորինում է պատասխան։
  • Հետևողականության ստուգում — տվեք նույն հարցը տարբեր ձևով կամ մի քանի անգամ և համեմատեք պատասխանները հակասությունների համար։
  • Մեջբերումների ստուգում — երբ համակարգը հղում է անում աղբյուրի, վիճակագրության կամ մեջբերման, ստուգեք՝ արդյոք աղբյուրն իրապես ասում է այն, ինչ պնդում է համակարգը։

Հալյուցինացիաների լավ test suite-ը կառուցվում է իրական օգտագործման օրինաչափությունների վրա, ոչ միայն սինթետիկ եզրային դեպքերի — իրական օգտատերերի հարցումների (կամ support ticket-երի, եթե համակարգն արդեն production-ում է) վերանայումը սովորաբար բացահայտում է հարցերը, որոնք ամենայն հավանականությամբ առաջացնում են հալյուցինացիա։

Հալյուցինացիայի հաճախականության չափում և հաշվետվություն

Քանի որ հալյուցինացիաները աստիճանի հարց են, ոչ թե մեկ pass/fail ստուգում, թիմերը սովորաբար հետևում են հալյուցինացիայի հաճախականությանը՝ թեստավորված պատասխանների տոկոսը, որոնք պարունակում են գոնե մեկ չհիմնավորված պնդում — ոչ թե ֆիքսում առանձին bug-երը, ինչպես ավանդական defect-ի դեպքում։ Այս ցուցանիշի հետևումը ժամանակի ընթացքում, hարցի տեսակի կամ թեմատիկ ուղղության բաժանմամբ, ցույց է տալիս թիմին, թե որտեղ է մոդելն ամենաթույլը, և արդյոք ուղղումը (prompt-ի փոփոխություն, ավելացված սահմանափակումներ կամ վերավարժեցված մոդել) իրապես բարելավեց իրավիճակը, թե պարզապես տեղափոխեց խնդիրը այլ տեղ։ Երբ կոնկրետ հալյուցինացիա եք ֆիքսում որպես bug, նշեք ճշգրիտ հարցումը, ամբողջական պատասխանը և, հնարավորության դեպքում, սկզբնաղբյուր փաստաթուղթը, որի վրա պատասխանը պետք է հիմնված լիներ, որպեսզի խնդիրը վերարտադրելի լինի։

Հետագա ընթերցանություն

Hallucination Testing In Chatbots
Retrieval-Augmented Factuality
Solving LLM Instability in Internet Marketplace Platforms

Բովանդակություն