Ինչ են AI հալյուցինացիաները, ինչու են դրանք տեղի ունենում, և ինչպես է QA ինժեները ձևավորում test case-ներ դրանք բռնելու համար։
«Հալյուցինացիան» AI համակարգերի ամենաքննարկվող failure mode-երից մեկն է․ մոդելը հայտարարում է մի բան, որը կեղծ է, հորինված կամ չհիմնավորված սկզբնաղբյուր նյութով, բայց ներկայացնում է այն նույն վստահությամբ, ինչ ճիշտ պատասխանը։ QA ինժեների համար հալյուցինացիաները դժվար է բռնել հենց այն պատճառով, որ դրանք bug-ի տեսք չունեն — չկա error message, չկա crash, կա պարզապես սխալ պատասխան, որը ներկայացված է համոզիչ կերպով։
Այս հոդվածում կանդրադառնանք․
AI թեստավորման համատեքստում հալյուցինացիան ցանկացած արդյունք է, որը ներկայացվում է որպես փաստ, բայց չի հիմնավորվում մոդելի ուսուցման տվյալներով, տրված սկզբնաղբյուր փաստաթղթերով կամ իրականությամբ։ Սա տարբերվում է ազնիվ «ես չգիտեմ» պատասխանից — հալյուցինացիան վստահորեն սխալ է, ոչ թե ազնվորեն անորոշ, և հենց սա է այն վտանգավոր դարձնում production-ում։ Support bot, որը հորինում է գոյություն չունեցող վերադարձի քաղաքականություն, կամ document summarizer, որն ավելացնում է դետալ, որը սկզբնաղբյուրում չի եղել — երկուսն էլ հալյուցինացնում են, նույնիսկ եթե ոչ մեկը crash չի տվել։
Լեզվական մոդելները տեքստ են գեներացնում՝ կանխատեսելով վիճակագրորեն ամենահավանական հաջորդ բառը, ելնելով ուսուցման տվյալներից սովորած օրինաչափություններից — դրանք ներկառուցված մեխանիզմ չունեն՝ նախքան արտադրելը ստուգելու, թե արդյոք նախադասությունն իրապես ճիշտ է։ Մի քանի պայման մեծացնում է հալյուցինացիայի հավանականությունը․
Հալյուցինացիաները միասնական failure pattern չեն, և օգտակար test strategy-ն սովորաբար տարբերակում է մի քանի տեսակ․
Իմանալը, թե որ տեսակն եք փնտրում, փոխում է test-ի ձևավորումը․ կոնտեքստային հալյուցինացիաների ստուգումը պահանջում է թեստավորում հայտնի սկզբնաղբյուր փաստաթղթի դեմ, իսկ հորինված աղբյուրների ստուգումը՝ համակարգի արտադրած յուրաքանչյուր մեջբերման ստուգում։
Հալյուցինացիաների արդյունավետ թեստավորումը սովորաբար համադրում է մի քանի տեխնիկա․
Հալյուցինացիաների լավ 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