Pour gérer vos consentements :

BugLab : une autre approche de l’IA pour l’analyse du code source

Utiliser des réseaux antagonistes génératifs (GAN) pour détecter et corriger des erreurs dans du code ? C’est le fondement de l’approche BugLab. Récemment présentée à la conférence NeurIPS, elle émane de Microsoft Research.

BugLab s’inspire de la méthode GAN en mettant en concurrence deux modèles qui se livrent à une sorte de « cache-cache ». Le premier examine un fragment de code, décide s’il doit y introduire une erreur, où et sous quelle forme. Le second tente de détecter ces erreurs et de les corriger. Au fil des cycles, ils se renforcent l’un l’autre. L’entraînement se fait sans supervision et ne nécessite pas de jeu de données préalablement étiqueté.

L’approche BugLab ne traite pas le code comme une suite de séquences en langage naturel*. Elle l’examine comme un tout et dégage des entités (expression, symbole, identifiant…) modélisées dans un graphe. Cela permet d’exploiter des architectures de réseaux neuronaux standard.

Les modèles entraînés « en mode BugLab » se révèlent, selon les chercheurs, jusqu’à 30 % plus performants que ceux entraînés avec des erreurs introduites au hasard. Environ un quart de ces erreurs peuvent être corrigées automatiquement. Mais le taux de faux positifs est important (98 % environ sur un échantillon de dépôts GitHub non rencontrés lors de la phase d’entraînement).

La couverture fonctionnelle est encore limitée. Elle se concentre en l’occurrence sur quelques erreurs fréquentes. Parmi elles, l’usage de variables inappropriées et des mauvais opérateurs booléens.

L’échantillon RandomBugs se compose d’environ 760 000 fragments de code dérivés des fonctions issues de 600 paquets PyPi. Pour chaque fonction, on en ajoute 9 réécritures contenant un bug inséré au hasard. PyPiBugs contient quand à lui de « vraies » erreurs collectées sur l’ensemble des paquets PyPi.

* Au contraire, par exemple, de GitHub Copilot ou de CodeT5 (Salesforce).

Illustration principale © artinspiring – Adobe Stock

Recent Posts

Ce que Llama 3 dit de l’évolution des LLM

Diverses tendances animant l'univers des LLM transparaissent en filigrane du discours de Meta sur Llama…

14 heures ago

APT44, bras armé cyber de la Russie

Mandiant a attribué un APT à Sandworm, considéré comme le principal groupe cybercriminel à la…

1 jour ago

Cybersécurité : HarfangLab et Filigran connectent EDR et CTI

Les deux startup proposent un connecteur entre la platefome OpenCTI de Filigran et l’EDR de…

1 jour ago

Le hacking autonome, capacité émergente de GPT-4 ?

Des chercheurs ont mis des agents LLM à l'épreuve dans la détection et l'exploitation de…

2 jours ago

Les applications de messagerie se mettent au chiffrement post-quantique

Dans la lignée de Signal, iMessage intègre une couche de chiffrement post-quantique.

2 jours ago

Infrastructures LAN : une photo du marché avant la fusion HPE-Juniper

Douze fournisseurs sont classés dans le dernier Magic Quadrant des infrastructures LAN.

2 jours ago