
AGLS
Résumé : Les grands modèles de langage (LLM) sont de plus en plus souvent équipés de modules d'optimisation automatique de prompt qui réécrivent la saisie de l'utilisateur et présentent explicitement un prompt « amélioré » avant de générer la réponse finale. Bien que cette visibilité soit conçue pour renforcer la confiance et le contrôle de l'utilisateur, la sélection autonome par l'optimiseur de l'unique candidat « optimal » demeure sans contrainte. L'attaquant peut détourner le prompt d'origine ou le prompt généré par l'optimisation automatique de prompt pour procéder à une réécriture alternative, induisant ainsi une dérive sémantique et menant à bien le processus d'optimisation du détournement, ce qui affecte considérablement la réponse du LLM. Pour exposer systématiquement ce risque, nous proposons Adaptive Greedy Local Search (AGLS), une attaque par détournement de prompt. Cette attaque injecte un décalage sémantique en détournant les résultats de l'optimisation automatique de prompt dans un scénario en boîte noire. AGLS ajuste dynamiquement les remplacements de candidats à des points de contrôle linguistiques afin de maintenir un BERTScore $\approx 0.80$ tout en maximisant l'écart par rapport à l'objectif. Des expériences approfondies menées sur des LLM populaires et open source démontrent qu'AGLS atteint des taux de réussite d'attaque supérieurs à ceux des attaques de préservation sémantique antérieures, à budgets de similarité strictement comparables. Les résultats mettent en évidence le risque de détournement et d'altération des optimisations automatiques explicites de prompt dans les systèmes destinés aux utilisateurs.

Configuration initiale
Veuillez d'abord installer ollama. Exemples pour serveur Linux : Ollama
curl -fsSL https://ollama.com/install.sh | sh
ollama serve
ollama pull [target models]
Les modèles cibles utilisés dans nos expériences sont disponibles ici : Liste des modèles Ollama [llama3.1, llama3.2, llama3.3, qwen2.5, gemma2, phi3.5, ...]
Le modèle à code source fermé [gpt-4o-latest, gpt-4-turbbo] est disponible via l'API OpenAI.
Test principal
Les jeux de données à télécharger et à placer à un emplacement précis : bash /Dataset/, tous au format JSON.
GSM-IC_mstep.json,
SVAMP.json (Need Reshape),
SQUAD.json,
StrategyQA.json,
MovieQA.json,
ComplexWebQuestions.json
Le processus de test peut être exécuté directement à partir de notre script bash :
sh /Bash_scripts/Main_bash.sh
sh /Bash_scripts/Auto_eval_ablation.sh
sh /Bash_scripts/Auto_eval_gpt.sh
Vous pouvez également l'exécuter avec des arguments personnalisés :
python Main.py --api_key [openai key] --baidu_key [Baidu Qianfan Key] --gemini_key [Google Gemini Key]
--question_limits [Number of tested problems] --beam_width [the max beam width] --tokenizer [tokenizer] --embedding_model [The detailed BERT type.]
--target_model [llama3.1:8b, llama3.1:70b, qwen2.5:1.5b, qwen2.5:3b, qwen2.5:7b, qwen2.5:14b, gemma2:2b, gemma2:9b, phi3.5:3.8b, ...]
--filename [the dataset selected file name: gsm, webqa, movqa, compx, ....]
or
python GPT-main.py --api_key [openai key]
--question_limits [Number of tested problems] --beam_width [the max beam width] --tokenizer [tokenizer] --embedding_model [The detailed BERT type.]
--target_model [chatgpt-4o-latest, gpt-4-turbo-preview, ...]
--filename [the dataset selected file name: gsm, webqa, movqa, compx, ....]
La citation de nos travaux est la suivante :
@misc{zhang2025semanticpreservingadversarialattacksllms,
title={Semantic-Preserving Adversarial Attacks on LLMs: An Adaptive Greedy Binary Search Approach},
author={Chong Zhang and Xiang Li and Jia Wang and Shan Liang and Haochen Xue and Xiaobo Jin},
year={2025},
eprint={2506.18756},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2506.18756},
}