PromptRobust (benchmark) (FR)

From Systems analysis Wiki
Jump to navigation Jump to search

PromptRobust (également connu sous le nom de PromptBench) est un benchmark complet pour évaluer la robustesse des grands modèles de langage (LLM) aux modifications adverses des prompts — de petites perturbations dans la formulation de la tâche qui n'en altèrent pas le sens[1][2]. Le benchmark a été développé en 2023 par un groupe de chercheurs (Kaijie Zhu et al.) de Microsoft Research Asia[1]. La création de PromptRobust est motivée par l'observation que les LLM modernes sont sensibles aux détails de la formulation : même des modifications mineures (comme des fautes de frappe ou des reformulations) peuvent affecter de manière significative les réponses des modèles[2]. Le benchmark vise à mesurer quantitativement cette vulnérabilité et à encourager le développement de méthodes d'interaction plus fiables avec les LLM.

Méthodologie d'évaluation

Dans le cadre de l'étude PromptBench, un corpus de 4 788 prompts modifiés a été créé, tout en conservant le sens original des tâches[3]. Ces prompts adverses ont été générés selon quatre niveaux de complexité de modification[1] :

  • Niveau caractère : Introduction de fautes de frappe, remplacement ou permutation de caractères (simulant des erreurs de saisie accidentelles).
  • Niveau mot : Remplacement de certains mots par des synonymes, ajout de mots « parasites » ou autres modifications lexicales mineures.
  • Niveau phrase : Reformulation de la structure des phrases, ajout ou réorganisation de segments de phrase sans altérer le sujet général.
  • Niveau sémantique : Reformulation plus profonde du prompt tout en préservant son objectif (par exemple, des formulations alternatives de la même question)[1].

L'objectif de telles « attaques » est de vérifier comment des déviations mineures (par ex., des fautes de frappe accidentelles ou l'utilisation de formulations synonymes) affectent la capacité du modèle à exécuter correctement la tâche, alors que la tâche elle-même reste inchangée[1]. Chaque prompt adverse généré a été appliqué à une série de tâches standards du TALN (NLP), notamment l'analyse de sentiments, la détection de la correction grammaticale, la recherche de phrases en double, l'inférence logique (NLI), la compréhension de texte, la traduction automatique et la résolution de problèmes mathématiques[1]. Pour les expériences, 8 types de tâches différents ont été sélectionnés sur 13 jeux de données (datasets), allant des ensembles de données classiques de GLUE (par exemple, SST-2 pour l'analyse de sentiments, MNLI pour la NLI) à des tests mathématiques et multilingues spécialisés[1].

Il est important de noter que la robustesse de différents formats de prompt a été testée[1] :

  • Les prompts directs sans exemples (zero-shot, uniquement l'instruction).
  • Les prompts avec quelques exemples (few-shot, lorsque le prompt contient des exemples de solution).
  • Les prompts de rôle (in-context roles, par exemple, « Vous êtes un système d'analyse de sentiments, déterminez... »).
  • Les prompts décrivant la tâche (task-oriented, une description directe de la tâche)[1].

Divers modèles de langage à grande échelle ont également été testés, allant du modèle relativement petit Flan-T5-large et du modèle UL2 aux modèles avancés comme ChatGPT et GPT-4, ainsi que les modèles open-source de la famille LLaMA 2 et leur dérivé Vicuna[1]. Pour générer les attaques, des méthodes existantes du domaine du TALN adverse ont été utilisées (telles que TextBugger, DeepWordBug, TextFooler, etc.), adaptées pour modifier les prompts plutôt que les données d'entrée[1]. La validité des prompts « perturbés » obtenus a été vérifiée par des méthodes automatiques et manuelles ; selon le rapport, au moins 85 % des variations adverses conservent une sémantique correcte et sont compréhensibles par un humain[1]. Ainsi, l'impact des attaques reflète bien les échecs du modèle à percevoir la tâche reformulée, et non la perte du sens de la tâche elle-même.

Résultats et conclusions

Les tests ont montré que les LLM modernes sont insuffisamment robustes face à de légères modifications dans la formulation des prompts[3]. Pour tous les modèles testés, une baisse significative de la qualité des réponses a été observée sous l'effet des attaques générées[3]. En particulier, même des cas simples — comme une faute de frappe dans le texte d'un problème mathématique ou le remplacement d'un mot-clé par son synonyme — ont conduit le modèle à donner un résultat incorrect, alors qu'il réussissait sans cette perturbation[1]. La conclusion générale des auteurs est que « les grands modèles de langage modernes ne sont pas robustes face aux prompts adverses »[3], ce qui signifie que des écarts mineurs dans la formulation (phrasing) peuvent systématiquement les induire en erreur.

L'analyse des différents types d'attaques a révélé que les modifications au niveau des mots sont les plus préjudiciables au fonctionnement des LLM[2]. Le remplacement de mots par des synonymes ou une légère altération morphologique entraînait la plus forte baisse de qualité — en moyenne d'environ 33 % par rapport au résultat initial sur les mêmes tâches[2]. Les attaques au niveau des caractères (fautes de frappe, symboles aléatoires) provoquaient en moyenne une baisse de précision d'environ 20 %[2]. En revanche, la modification qualitative ou l'ajout de phrases entières dans le prompt avait un effet beaucoup plus faible, ne perturbant que très peu le modèle[1]. Les reproductions sémantiques (reformulation profonde du prompt par d'autres moyens) se sont avérées comparables en termes de nuisance aux simples fautes de frappe[1]. Ces faits soulignent que les LLM sont particulièrement vulnérables aux changements lexicaux subtils et aux erreurs dans les mots-clés[1]. Il est à noter que les altérations grammaticales (fautes de frappe) peuvent en théorie être filtrées par des correcteurs orthographiques standards, tandis que les modifications au niveau des mots et du sens exigent du modèle une compréhension sémantique avancée, qui fait souvent défaut aux modèles actuels[1].

L'analyse des performances des différents modèles a montré une grande disparité dans leur robustesse[1]. GPT-4 et UL2 ont démontré la meilleure résistance aux prompts adverses[1]. Le modèle Flan-T5-large et le modèle conversationnel ChatGPT se sont également avérés un peu moins sujets aux échecs[1]. Les modèles de la famille LLaMA 2 se sont situés à un niveau intermédiaire, tandis que Vicuna (13B) s'est distingué comme étant le plus vulnérable à tous les types d'attaques[1]. Il est intéressant de noter que la taille du modèle ne s'est pas avérée être un facteur décisif pour la robustesse[1] : le modèle relativement petit T5-large n'était pratiquement pas inférieur au modèle beaucoup plus grand ChatGPT en termes de stabilité de réponse[1]. Les auteurs suggèrent que les méthodes d'entraînement et de fine-tuning des modèles jouent un rôle clé, et non seulement leur taille[1]. Par exemple, UL2 et T5-large ont subi un pré-entraînement étendu sur de grands corpus de données, tandis que ChatGPT a été entraîné avec un renforcement par rétroaction humaine (RLHF), ce qui a pu renforcer leur robustesse[1]. À l'inverse, Vicuna a été entraîné sur un ensemble de données relativement limité (en tant que réplique open-source), ce qui a probablement causé sa grande sensibilité aux changements de formulation[1]. Ces résultats indiquent que l'amélioration des méthodes de fine-tuning peut accroître la fiabilité des modèles plus efficacement qu'une simple augmentation de leur taille.

Influence du format du prompt

La manière dont le prompt est formulé influence également la fiabilité de la réponse[1]. Il a été établi que les prompts avec des exemples (few-shot) augmentent considérablement la robustesse du modèle par rapport aux instructions en une seule étape sans exemples (zero-shot)[1]. La présence de plusieurs exemples de démonstration dans le prompt aide le modèle à interpréter plus correctement la tâche, même en présence de modifications parasites. Les prompts de rôle et les prompts descriptifs (task-oriented) ont montré un niveau de robustesse comparable dans l'ensemble, bien que leur efficacité ait varié d'une tâche à l'autre[1]. Par exemple, pour l'analyse de sentiments et la détection de phrases en double, le format de rôle était légèrement plus fiable, tandis que pour les tâches de compréhension de texte et de traduction, les instructions explicites de la tâche ont mieux fonctionné[1]. Ces observations peuvent servir de guide pour la conception de prompts : l'ajout d'exemples détaillés et d'un contexte de rôle réduit la probabilité d'erreur du modèle face à des formulations non standards.

Transférabilité des attaques entre les modèles

La transférabilité des attaques entre les modèles s'est avérée limitée[1]. Les prompts adverses, spécifiquement conçus pour un modèle, ne sont pas toujours aussi efficaces contre un autre[1]. Ainsi, il a été noté que les prompts « pièges » générés pour exploiter les vulnérabilités de ChatGPT ont un impact beaucoup plus faible sur GPT-4[1]. Ce dernier s'en sortait mieux, probablement parce que les attaques ne se transféraient pas directement à son architecture : ce qui déroute un modèle peut ne pas affecter un modèle plus avancé avec un entraînement différent[1]. Néanmoins, certains types de perturbations simples (comme les fautes de frappe) ont eu un effet négatif sur plusieurs modèles à la fois, ce qui suggère des faiblesses similaires dans leur base linguistique.

Recommandations pratiques

Le travail sur PromptBench a également permis de formuler des recommandations pratiques pour les utilisateurs et les développeurs de LLM[2]. La conclusion est simple : la stabilité de la formulation est importante[2]. Il est nécessaire d'éviter les fautes de frappe et les formulations négligentes dans les prompts[2]. Les auteurs montrent que la correction même d'erreurs mineures (orthographe, casse aléatoire, espaces superflus) peut considérablement améliorer la fiabilité de la réponse du modèle[2]. De plus, le choix des mots dans l'instruction influence sa robustesse[2]. L'analyse de la fréquence des termes dans les prompts robustes par rapport aux prompts vulnérables a révélé que certains mots apparaissent plus souvent dans les prompts « fiables », tandis que d'autres se trouvent dans ceux où le modèle a échoué[2]. Par exemple, les prompts contenant des mots comme « acting », « provided », « detection », etc., entraînaient moins souvent des échecs, alors que des mots comme « respond » (« réponds »), « following » (« suivant ») ou « examine » (« examine ») apparaissaient dans des cas plus problématiques[2]. Cela indique qu'un certain style et un certain lexique dans les prompts peuvent soit atténuer, soit au contraire, provoquer les vulnérabilités du modèle. En général, il est recommandé de formuler le prompt de la manière la plus claire, la plus univoque et dans des termes familiers pour le modèle, en particulier pour les applications critiques[2].

Un effet secondaire intéressant, noté par les chercheurs, est l'impact de l'ajout de fragments de texte dénués de sens ou non pertinents dans le prompt[2]. Il s'est avéré que l'insertion d'une séquence de caractères aléatoires (par exemple, « LKF0FZxMZ4 ») à la fin ou au milieu du prompt peut détourner l'attention du modèle et réduire la précision de sa réponse[2]. D'un autre côté, l'ajout d'une phrase neutre mais grammaticalement correcte (par exemple, « and true is true » — « et vrai est vrai ») a, dans certains cas, au contraire, amélioré la réponse, comme si cela concentrait le modèle sur les parties importantes de la question[2]. Ce phénomène souligne à quel point les LLM réagissent de manière imprévisible à des détails d'entrée apparemment insignifiants. Il témoigne également de la complexité du fonctionnement interne des modèles : des changements minimes dans le contexte peuvent soit perturber, soit améliorer leur performance, selon la manière dont l'attention du modèle est redistribuée.

Importance et développements futurs

PromptRobust/PromptBench a apporté une contribution significative à la compréhension de la fiabilité des LLM[2]. Le benchmark proposé et les données collectées sont ouverts à la communauté : le code et les ensembles de prompts adverses sont disponibles dans le dépôt[1]. Cela permet à d'autres chercheurs de tester la robustesse de nouveaux modèles face aux variations de prompts et de comparer les résultats[1]. La prochaine étape consiste à développer des méthodes pour protéger les modèles contre de telles attaques — par exemple, des algorithmes d'entraînement améliorés qui tiennent compte des fautes de frappe et des reformulations possibles, ou des systèmes intégrés de normalisation du langage d'entrée[2]. PromptBench est déjà considéré comme une base pour de telles recherches visant à améliorer la robustesse (robustness) des modèles de langage face à des données d'entrée réelles et imprécises[2].

En fin de compte, le travail de Zhu et de ses collègues démontre l'importance de prendre en compte la robustesse aux prompts lors de l'intégration des LLM dans des applications pratiques : les modèles ne doivent pas seulement afficher une grande précision sur des données « propres », mais aussi maintenir leur exactitude face à des écarts mineurs dans les entrées, qu'il s'agisse d'erreurs d'utilisateurs accidentelles ou d'attaques intentionnelles[2][4].

Liens externes

Bibliographie

  • 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.

Références

  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]