
Meta développe une technique de prompting structuré qui améliore nettement la revue de code par les LLMs, atteignant 93 % de précision dans certains cas
Des chercheurs de Meta ont publié une technique de prompting structuré baptisée « raisonnement semi-formel », conçue pour améliorer significativement la capacité des grands modèles de langage à analyser du code sans l'exécuter. Dans leurs expériences, cette approche a permis d'atteindre jusqu'à 93 % de précision sur certaines tâches d'analyse de code, contre des performances bien inférieures avec les méthodes classiques. Concrètement, la technique oblige l'agent IA à remplir un « certificat logique » structuré : avant de répondre, il doit énoncer explicitement ses prémisses, tracer des chemins d'exécution concrets fonction par fonction, et formuler une conclusion basée uniquement sur des preuves vérifiables tirées du code source. L'agent ne peut plus se contenter de deviner le comportement d'une fonction à partir de son nom — il doit réellement suivre les appels et les flux de données.
Pour l'industrie du développement logiciel, l'enjeu est considérable. Déployer des agents IA à l'échelle d'un dépôt entier — pour détecter des bugs, vérifier des patches ou conduire des revues de code — exige aujourd'hui de créer des environnements d'exécution isolés pour chaque projet, une infrastructure coûteuse et lourde à maintenir. Le raisonnement semi-formel contourne ce problème en permettant une analyse sémantique fiable sans jamais exécuter le code. Pour les équipes d'ingénierie qui utilisent l'IA dans leurs workflows CI/CD ou leurs processus de revue, cela représente une réduction drastique des coûts d'infrastructure tout en maintenant — voire en améliorant — la fiabilité des résultats. La technique réduit également les hallucinations, un problème chronique des LLM confrontés à du code complexe multi-fichiers.
Le problème que Meta cherche à résoudre n'est pas nouveau. Deux approches dominent actuellement le domaine : les évaluateurs LLM non structurés, rapides mais sujets aux affirmations non fondées, et la vérification formelle mathématique (via des langages comme Lean ou Coq), rigoureuse mais totalement impraticable sur des bases de code d'entreprise mêlant dizaines de frameworks et de langages. Le raisonnement semi-formel se positionne délibérément entre ces deux extrêmes — plus rigoureux que le prompting libre, mais sans exiger la traduction du code en logique mathématique. Meta a évalué la technique sur trois catégories de tâches : vérification d'équivalence de patches, localisation de fautes, et questions-réponses sur des bases de code. Les résultats suggèrent une approche potentiellement généralisable à de nombreux domaines de l'ingénierie logicielle automatisée, à condition que les modèles soient suffisamment capables pour respecter les contraintes des templates structurés.



