← Derniers articles
💻 computer science

When Prompt Under-Specification Improves Code Correctness: An Exploratory Study of Prompt Wording and Structure Effects on LLM-Based Code Generation

Cette étude exploratoire révèle que, si la sous-spécification des consignes dégrade généralement la génération de code sur des benchmarks structurellement minimaux, elle peut paradoxalement améliorer l'exactitude sur des tâches plus riches comme LiveCodeBench en perturbant les indices trompeurs, démontrant ainsi que la robustesse des consignes dépend fortement de la structure de la tâche plutôt que d'être une propriété fixe du modèle.

Auteurs originaux : Amal AKLI, Mike PAPADAKIS, Maxime CORDY, Yves Le TRAON

Publié 2026-04-28
📖 5 min de lecture🧠 Analyse approfondie

Auteurs originaux : Amal AKLI, Mike PAPADAKIS, Maxime CORDY, Yves Le TRAON

Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète

Imaginez que vous embauchiez un assistant brillant mais légèrement trop littéral pour écrire un programme informatique pour vous. Vous lui donnez un ensemble d'instructions (un « prompt »). Pendant longtemps, les experts ont cru que plus vos instructions étaient précises, détaillées et strictes, mieux l'assistant s'en sortirait. Si vous omettiez un détail, l'assistant se perdait et échouait.

Ce document remet en question cette vieille croyance. Les chercheurs ont découvert que parfois, donner à votre assistant moins de détails l'aide en réalité à écrire un meilleur code.

Voici comment ils ont découvert cela, expliqué à travers des analogies simples :

1. Les Deux Types d'« Examens »

Les chercheurs ont testé cette idée sur deux types différents d'« examens » (benchmarks) pour les modèles d'IA :

  • L'Examen « Flashcards » (HumanEval) : Ce sont comme de courtes cartes mémo d'une seule phrase. Les instructions sont très brèves, sans contexte supplémentaire. C'est comme demander : « Écrivez une fonction pour trier cette liste. »
  • L'Examen « Manuel Scolaire » (LiveCodeBench) : Ce sont comme des chapitres complets de manuel. Ils incluent une longue histoire, une liste de règles, des exemples d'entrées et de sorties, et des contraintes spécifiques. C'est comme dire : « Voici une histoire sur le tri d'une liste de noms. Voici les règles : les noms ne peuvent pas dépasser 10 lettres, et voici un exemple de l'apparence de l'entrée... »

2. L'Expérience : « Casser » les Instructions

Les chercheurs ont pris ces instructions et les ont intentionnellement « mutées » de trois manières pour voir ce qui se passerait :

  • Vaguité (LV) : Ils ont remplacé des mots spécifiques par des termes vagues (par exemple, changer « trier » par « organiser »).
  • Sous-spécification (US) : Ils ont supprimé une règle ou une contrainte spécifique (par exemple, retirer une règle sur la taille maximale des nombres).
  • Mise en forme désordonnée (SF) : Ils ont ajouté des fautes de frappe ou modifié les espacements.

3. Les Résultats Surprenants

Les résultats ont été très différents selon l'« examen » que l'IA a passé :

  • Sur l'Examen « Flashcards » : Lorsque les chercheurs ont retiré des détails ou rendu les mots vagues, les performances de l'IA se sont effondrées. Tout comme un élève qui panique lorsqu'un enseignant retire un indice d'un court quiz, l'IA s'est perdue et a écrit du code défectueux.
  • Sur l'Examen « Manuel Scolaire » : Lorsqu'ils ont fait la même chose, les performances de l'IA sont restées stables ou, surprenamment, se sont améliorées.

L'Illusion du « Zéro Net » :
Au début, les chercheurs pensaient que l'IA sur l'« examen Manuel Scolaire » ne se souciait tout simplement pas des changements. Mais en regardant de plus près, ils ont découvert une lutte d'influence.

  • Certains changements ont fait échouer l'IA (dégradation).
  • Mais un nombre presque égal de changements ont permis à l'IA de réussir là où elle avait précédemment échoué (amélioration).
  • Ces deux forces s'annulaient mutuellement, donnant l'impression que rien ne s'était produit.

4. Pourquoi « Moins » Signifie Parfois « Plus » ?

Le document a trouvé une raison fascinante pour laquelle retirer une règle corrige parfois le code. Il s'agit de mauvaises habitudes et de « signaux ».

Imaginez que l'IA est comme un élève qui a mémorisé des réponses à partir d'un manuel spécifique.

  • Le Piège : Parfois, un mot spécifique ou un nombre spécifique dans le prompt agit comme un « déclencheur ». Il rappelle à l'IA une solution mémorisée qui semble juste mais est en fait incorrecte pour ce problème spécifique.
    • Exemple tiré du document : Un problème mentionnait « Devise ». Ce mot a déclenché chez l'IA la pensée des taux de change financiers, l'amenant à utiliser un algorithme de raisonnement inversé.
  • La Correction : Lorsque les chercheurs ont retiré le mot « Devise » et l'ont remplacé par un mot vague comme « Ressource », l'IA a cessé de déclencher sa « mémoire financière ». Au lieu de cela, elle a été forcée de réfléchir réellement à la structure du problème à partir de zéro. Cela a conduit à une solution correcte.

Autrement dit, les détails supplémentaires dans le prompt ont parfois accidentellement donné à l'IA un « indice » qui l'a menée sur la mauvaise voie. Retirer cet indice a forcé l'IA à faire le travail correctement.

5. La Conclusion Principale

Le document conclut que la robustesse ne dépend pas de la taille de l'IA (qu'il s'agisse d'un petit ou d'un géant modèle) ; elle dépend de la manière dont les instructions sont construites.

  • Si vous donnez à une IA un prompt court, d'une seule phrase, il est très fragile. Si vous modifiez la formulation, elle échoue.
  • Si vous donnez à une IA un prompt riche et multicouche (avec des exemples, des contraintes et des formats), elle est beaucoup plus robuste. Elle dispose de « signaux de secours » sur lesquels s'appuyer si une partie de l'instruction est confuse.
  • Crucialement : Parfois, être trop spécifique est un piège. Des mots ou des nombres spécifiques peuvent accidentellement « amorcer » l'IA pour qu'elle utilise un raccourci mémorisé mais incorrect. Retirer ces signaux spécifiques peut parfois forcer l'IA à résoudre le problème correctement.

En bref : Ne supposez pas qu'un prompt parfait et détaillé est toujours le meilleur. Parfois, un prompt légèrement plus vague force l'IA à réfléchir par elle-même, évitant ainsi les pièges de ses propres habitudes mémorisées.

Noyé(e) sous les articles dans votre domaine ?

Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.

Essayer Digest →