PromptRobust (benchmark) (HU)

From Systems analysis Wiki
Jump to navigation Jump to search

PromptRobust (más néven PromptBench) — egy átfogó benchmark a nagy nyelvi modellek (LLM) adversariális prompt-változásokkal szembeni robusztusságának értékelésére — olyan kis mértékű fogalmazásbeli torzításokra, amelyek nem változtatják meg a feladat értelmét[1][2]. A benchmarkot 2023-ban fejlesztette ki egy kutatócsoport (Kaijie Zhu és mtsai.) a Microsoft Research Asia keretein belül[1]. A PromptRobust létrejöttét az a megfigyelés indokolta, hogy a modern nagy nyelvi modellek (BNM) érzékenyek a fogalmazás részleteire: még apró változások (például elgépelések vagy átfogalmazások) is jelentős hatással lehetnek a modellek válaszaira[2]. A benchmark célja ennek a sérülékenységnek a számszerű mérése, valamint a BNM-ekkel való megbízhatóbb interakció módszereinek fejlesztéséhez való hozzájárulás.

Az értékelés módszertana

A PromptBench kutatás keretében 4788 módosított prompt korpuszát hozták létre, amelyek megőrzik a feladatok eredeti értelmét[3]. Ezeket az adversariális promptokat a változtatások nehézségének négy szintjén generálták[1]:

  • Karakterszint: Elgépelések, karakterek cseréje vagy felcserélése (véletlenszerű beviteli hibákat imitál).
  • Szószint: Egyes szavak szinonimákkal való helyettesítése, „zajos" szavak vagy más kisebb szókincs-módosítások bevezetése.
  • Mondatszint: A mondatszerkezet átfogalmazása, mondatrészek hozzáadása vagy felcserélése az általános témát nem érintve.
  • Szemantikai szint: A kérés mélyebb újrafogalmazása, miközben megmarad a feladat lényege (például ugyanazon kérdés alternatív megfogalmazásai)[1].

Az ilyen „támadások" célja annak ellenőrzése, hogy a kis eltérések (pl. véletlenszerű elgépelések vagy szinonim megfogalmazások használata) hogyan befolyásolják a modell azon képességét, hogy helyesen elvégezze a feladatot, miközben maga a feladat nem változott[1]. Minden egyes generált adversariális promptot számos standard NLP-feladatra alkalmazták, köztük hangulatelemzés, grammatikai helyesség felismerése, duplikált mondatok keresése, logikai következtetés (NLI), szövegértés, gépi fordítás és matematikai feladatok megoldása[1]. A kísérletekhez 13 dataseten 8 különböző feladattípust választottak ki — a klasszikus GLUE-készletektől (például SST-2 hangulatelemzéshez, MNLI az NLI-hoz) egészen speciális matematikai és többnyelvű tesztekig[1].

Fontos, hogy különböző prompt-formátumok robusztusságát is ellenőrizték[1]:

  • Közvetlen kérések példák nélkül (zero-shot, csak utasítás).
  • Néhány példával kiegészített kérések (few-shot, ahol a promptban megoldásminták szerepelnek).
  • Szerepalapú promptok (in-context roles, például „Ön egy hangulatelemző rendszer, határozza meg...").
  • Feladatleíró promptok (task-oriented, a feladat közvetlen leírása)[1].

Szintén teszteltek különböző méretű és jellegű nyelvi modelleket, a viszonylag kisebb Flan-T5-large-tól és az UL2 modelltől egészen a fejlett ChatGPT-ig és GPT-4-ig, valamint az LLaMA 2 családba tartozó nyílt modellekig és az azokból levezetett Vicunáig[1]. A támadások generálásához az adversariális NLP területéről meglévő módszereket (például TextBugger, DeepWordBug, TextFooler stb.) használtak, amelyeket a bemeneti adatok helyett a promptok módosítására adaptáltak[1]. A kapott „torzított" promptok helyességét automatikus és kézi módszerekkel ellenőrizték; a jelentés szerint az adversariális variánsok legalább 85%-a megőrzi a helyes szemantikát és érthető az ember számára[1]. Így a támadások hatása valóban a modell azon hibáit tükrözi, amelyek az átfogalmazott feladat értelmezésekor lépnek fel, nem pedig magának a feladat értelmének elvesztését.

Eredmények és következtetések

A vizsgálatok megmutatták, hogy a modern BNM-ek nem eléggé robusztusak a kérések kisebb fogalmazásbeli változásaival szemben[3]. Minden tesztelt modellnél jelentős teljesítménycsökkenés volt megfigyelhető a generált támadások hatására[3]. Különösen figyelemreméltó, hogy még egyszerű esetek — például egy elgépelés egy matematikai feladat szövegében, vagy egy kulcsszó szinonimájával való helyettesítése — is oda vezettek, hogy a modell hibás eredményt adott, holott torzítás nélkül helyesen oldotta meg ugyanazt[1]. A szerzők általános következtetése: „a modern nagy nyelvi modellek nem robusztusak az adversariális promptokkal szemben"[3], vagyis a fogalmazásbeli kisebb eltérések szisztematikusan félrevezethetik őket.

A különböző támadástípusok elemzése során kiderült, hogy a BNM-ek működésére a szószintű változtatások hatnak a legjobban[2]. A szavak szinonimákkal való helyettesítése vagy kisebb szóalaki torzítások a legnagyobb teljesítménycsökkenést okozták — átlagosan ≈33%-kal az ugyanazon feladatokon elért eredeti teljesítményhez képest[2]. A karakterszintű támadások (elgépelések, véletlenszerű karakterek) átlagosan ~20%-os pontosságcsökkenést okoztak[2]. A teljes mondatok minőségi megváltoztatása vagy hozzáadása a prompthoz ezzel szemben sokkal gyengébb hatással bírt, és szinte nem is tette tévútra a modellt[1]. A szemantikai átfogalmazások (a kérés mélyebb, más módon való újramondása) a közvetlen elgépelésekhez hasonló mértékben bizonyultak károsnak[1]. Ezek a tények kiemelik, hogy a BNM-ek különösen sérülékenyek a finom lexikai változásokra és a kulcsszavakban lévő hibákra[1]. Jellemző, hogy a grammatikai torzítások (elgépelések) elméletben szokványos helyesírás-ellenőrzőkkel szűrhetők, míg a szó- és jelentésszintű változások fejlett szemantikai megértést kívánnak a modelltől, amellyel a jelenlegi modellek gyakran nem rendelkeznek[1].

A különböző modellek teljesítményének elemzése jelentős szórást mutatott robusztusságuk tekintetében[1]. A GPT-4 és az UL2 mutatta a legjobb ellenállást az adversariális promptokkal szemben[1]. Valamivel kevésbé volt hibára hajlamos a Flan-T5-large modell és a párbeszédes ChatGPT modell is[1]. Az LLaMA 2 modellcsalád középmezőnybe sorolható, míg a Vicuna (13B) a leginkább sérülékenynek bizonyult minden támadástípussal szemben[1]. Érdekes, hogy a modellméret nem bizonyult döntő tényezőnek a robusztusság szempontjából[1]: a viszonylag kisebb T5-large a válasz stabilitása tekintetében alig maradt el a sokkal nagyobb ChatGPT modelltől[1]. A szerzők úgy vélik, hogy a kulcsszerepet a modellek tanítási és fine-tuning módszerei játsszák, nem csupán a méretük[1]. Az UL2 és a T5-large kiterjedt előtanítást kapott nagy adatkorpuszokon, a ChatGPT-t pedig emberi visszajelzéssel megerősített tanulással (RLHF) képezték, ami erősíthette robusztusságukat[1]. Ezzel szemben a Vicuna viszonylag korlátozott adatkészleten tanult (nyílt replikaként), ami valószínűleg nagy érzékenységét okozza a fogalmazásbeli változásokra[1]. Ezek az eredmények arra utalnak, hogy a fine-tuning módszereinek javítása nagyobb mértékben fokozhatja a modellek megbízhatóságát, mint pusztán méretük növelése.

A prompt formátumának hatása

A kérés benyújtásának formája szintén befolyásolja a válasz megbízhatóságát[1]. Megállapítást nyert, hogy a példákat tartalmazó (few-shot) promptok jelentősen növelik a modell robusztusságát a példa nélküli, egylépéses utasításokhoz (zero-shot) képest[1]. A promptban szereplő néhány demonstrációs példa segít a modellnek helyesebben értelmezni a feladatot még zajos változtatások esetén is. A szerepalapú és a leíró (task-oriented) promptok összességében hasonló robusztussági szintet mutattak, bár hatékonyságuk feladatonként változott[1]. Például a hangulatelemzés és a duplikált mondatok felismerése területén a szerepalapú formátum volt kicsit megbízhatóbb, míg a szövegértési és fordítási feladatoknál az explicit feladatleírások működtek jobban[1]. Ezek a megfigyelések iránymutatásként szolgálhatnak a prompt-tervezéshez: részletes példák és szerepkontextus hozzáadása csökkenti annak valószínűségét, hogy a modell hibázzon nem szokványos fogalmazásoknál.

A támadások átvitele modellek között

A támadások átvitele (transzfer) modellek között korlátozottnak bizonyult[1]. Az egyik modell ellen kifejezetten kidolgozott adversariális promptok nem mindig hatnak egyformán egy másik modell ellen[1]. Megfigyelték például, hogy a ChatGPT sérülékenységeire generált „csapda" promptok sokkal kisebb hatással vannak a GPT-4-re[1]. Az utóbbi jobban teljesített, valószínűleg azért, mert a támadások nem vitték át közvetlenül az architektúrájára — ami az egyik modellt megzavarja, az esetleg nem hat egy fejlettebb, eltérő felkészítésű modellre[1]. Ugyanakkor néhány egyszerű torzítástípus (például elgépelések) egyszerre több modellre is negatív hatással volt, ami hasonló gyenge pontokra utal ezek nyelvi alapjaiban.

Gyakorlati ajánlások

A PromptBench munka során praktikus ajánlásokat is azonosítottak a BNM-ek felhasználói és fejlesztői számára[2]. Az egyszerű következtetés: a fogalmazás stabilitásának van jelentősége[2]. Szükséges elkerülni az elgépeléseket és a hanyag fogalmazást a kérésekben[2]. A szerzők megmutatják, hogy még kisebb hibák javítása is (helyesírás, véletlenszerű kis-nagybetű, felesleges szóközök) lényegesen növelheti a modell válaszainak megbízhatóságát[2]. Emellett az utasításban használt szavak megválasztása befolyásolja annak robusztusságát[2]. A robusztus kontra sérülékeny promptokban szereplő szavak gyakorisági elemzése kimutatta, hogy egyes szavak gyakrabban fordulnak elő a „megbízható" promptokban, mások pedig azokban, ahol a modell eltévedt[2]. Például az „acting", „provided", „detection" és hasonló szavakat tartalmazó promptok ritkábban vezettek hibához, míg a „respond", „following" vagy „examine" szavak a problémásabb esetekben fordultak elő gyakrabban[2]. Ez arra utal, hogy a kérések bizonyos stílusa és szókincse enyhítheti, illetve ellenkezőleg, provokálhatja a modell sérülékenységeit. Általánosan ajánlott a kérést a lehető legvilágosabban, egyértelműen és a modell számára megszokott terminológiával fogalmazni, különösen kritikus fontosságú alkalmazások esetén[2].

A kutatók által feljegyzett érdekes mellékhatás az értelmetlen vagy irreleváns szövegrészletek kérésbe való beillesztésének hatása[2]. Kiderült, hogy véletlenszerű karaktersorozat beillesztése (például „LKF0FZxMZ4") a prompt végébe vagy közepébe képes elterelni a modell figyelmét és csökkenteni a válasz pontosságát[2]. Másfelől egy semleges, de grammatikailag helyes mondat hozzáadása (például „and true is true" — „és az igaz igaz") egyes esetekben épp ellenkezőleg javította a választ, mintha a modell figyelmét az értékes kérdésrészekre fókuszálta volna[2]. Ez a jelenség rámutat, mennyire kiszámíthatatlanul reagálnak a BNM-ek a látszólag lényegtelen beviteli részletekre. Ez egyúttal a modellek belső felépítésének összetettségét is tanúsítja: a kontextus apró változásai képesek akár rontani, akár javítani működésüket, attól függően, hogyan rendeződik át a modell figyelme.

Jelentőség és további fejlesztés

A PromptRobust/PromptBench jelentős mértékben hozzájárult a BNM-ek megbízhatóságának megértéséhez[2]. A javasolt benchmark és az összegyűjtött adatok nyitottak a közösség számára: a kód és az adversariális promptkészletek elérhetők a tárházban[1]. Ez lehetővé teszi más kutatóknak, hogy új modelleket teszteljenek a kérésváltozatokkal szembeni robusztusság szempontjából, és összehasonlítsák az eredményeket[1]. A következő lépés a modellek ilyen támadásokkal szembeni védelmét szolgáló módszerek kidolgozása — például fejlettebb tanítási algoritmusok, amelyek figyelembe veszik a lehetséges elgépeléseket és átfogalmazásokat, vagy beépített bemeneti normalizáló rendszerek[2]. A PromptBench-t már az ilyen, a nyelvi modellek valós, pontatlan bemeneti adatokkal szembeni robusztusságát növelő kutatások alapjaként tekintik[2].

Végső soron Zhu és kollégái munkája rámutat annak fontosságára, hogy a prompt-robusztusságot figyelembe kell venni a BNM-ek gyakorlati alkalmazásokban való bevezetésekor: a modelleknek nemcsak „tiszta" adatokon kell magas pontosságot mutatniuk, hanem a bevitel kisebb eltérései esetén is meg kell őrizniük a helyességet, legyen szó akár a felhasználó véletlen hibáiról, akár szándékos támadó beavatkozásokról[2][4].

Hivatkozások

  • Az eredeti PromptBench cikk (arXiv)
  • A PromptBench tárháza a GitHubon
  • „Prompt Robustness: How to Measure and How to Enhance" cikk (Towards AI)

Irodalom

  • Liang, P. et al. (2022). Holistic Evaluation of Language Models (HELM). arXiv:2211.09110.
  • Chang, Y. et al. (2023). A Survey on Evaluation of Large Language Models. arXiv:2307.03109.
  • Ni, S. et al. (2025). A Survey on Large Language Model Benchmarks. arXiv:2508.15361.
  • Biderman, S. et al. (2024). The Language Model Evaluation Harness (lm-eval): Guidance and Lessons Learned. arXiv:2405.14782.
  • Kiela, D. et al. (2021). Dynabench: Rethinking Benchmarking in NLP. arXiv:2104.14337.
  • Ma, Z. et al. (2021). Dynaboard: An Evaluation‑As‑A‑Service Platform for Holistic Next‑Generation Benchmarking. arXiv:2106.06052.
  • Goel, K. et al. (2021). Robustness Gym: Unifying the NLP Evaluation Landscape. arXiv:2101.04840.
  • Xu, C. et al. (2024). Benchmark Data Contamination of Large Language Models: A Survey. arXiv:2406.04244.
  • Liu, S. et al. (2025). A Comprehensive Survey on Safety Evaluation of LLMs. arXiv:2506.11094.
  • Chiang, W.-L. et al. (2024). Chatbot Arena: An Open Platform for Evaluating LLMs by Human Preference. arXiv:2403.04132.
  • Boubdir, M. et al. (2023). Elo Uncovered: Robustness and Best Practices in Language Model Evaluation. arXiv:2311.17295.
  • Huang, L. et al. (2023). A Survey on Hallucination in Large Language Models. arXiv:2311.05232.

Megjegyzések

  1. 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 1.30 1.31 1.32 1.33 1.34 1.35 «PromptBench: Towards Evaluating the Robustness of Large Language Models on Adversarial Prompts». arXiv. [1]
  2. 2.00 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 2.18 2.19 «Prompt Robustness: How to Measure and How to Enhance». Towards AI. [2]
  3. 3.0 3.1 3.2 3.3 «PromptRobust: Towards Evaluating the Robustness of Large Language Models on Adversarial Prompts». arXiv. [3]
  4. «Realer Toxicity Prompts (RTP-2.0): Multilingual and Adversarial Prompts for Evaluating Neural Toxic Degeneration in Large Language Models». Language Technologies Institute - School of Computer Science - Carnegie Mellon University. [4]