FMI_SU_Yotkova_Kastreva at SemEval-2026 Task 13: Lightweight Detection of LLM-Generated Code via Stylometric Signals
Ce papier présente une approche efficace sur le plan computationnel et basée sur le CPU pour détecter le code généré par des LLM dans la sous-tâche A de la tâche 13 de SemEval-2026, qui combine des caractéristiques basées sur des rapports robustes à la longueur, des outils d'analyse syntaxique et un classifieur code-contre-texte avec un arbre de décision peu profond et des règles heuristiques afin d'obtenir une inférence quasi instantanée sans recourir à de grands modèles préentraînés.
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 une immense bibliothèque numérique où les livres sont écrits par deux types d'auteurs : des Bibliothécaires Humains et des Scribes Robots. Les Scribes Robots sont incroyablement rapides et peuvent écrire dans de nombreuses langues différentes, mais ils ont l'habitude de laisser derrière eux des « indices » spécifiques qui trahissent leur nature mécanique.
Ce papier décrit comment une équipe de chercheurs a construit un détective léger et ultra-rapide pour repérer ces Scribes Robots dans la bibliothèque, spécifiquement pour une compétition appelée SemEval-2026.
Voici comment fonctionne leur détective, décomposé en concepts simples :
1. Le Problème : Pourquoi est-il difficile de repérer les robots ?
Habituellement, pour trouver un faux, on cherche de grands indices complexes. Mais dans le monde du code informatique, les robots sont rusés. Ils écrivent un code qui semble parfait en surface.
- Le Piège du « Grand Cerveau » : Les chercheurs ont essayé d'utiliser des modèles d'IA massifs et ultra-intelligents (comme une gigantesque encyclopédie omnisciente) pour repérer les faux. Cela fonctionnait très bien sur les livres d'entraînement (majoritairement écrits en Python), mais lorsqu'ils ont essayé de lire des livres dans d'autres langues (comme Go, C# ou JavaScript), le « Grand Cerveau » s'est perdu. C'était comme un détective qui ne sait lire que l'anglais essayant de résoudre une énigme dans un pays étranger ; il a manqué les indices car il était trop focalisé sur la langue spécifique.
2. La Solution : Le « Détective Léger »
Au lieu d'utiliser un cerveau géant et coûteux, l'équipe a construit un détective simple et rapide qui cherche de petits habitudes quotidiennes que les robots ne peuvent s'empêcher de répéter. Ils appellent cela des « signaux stylométriques ».
Pensez-y comme repérer un robot par la façon dont il tient un stylo, plutôt qu'en analysant toute la structure de la phrase.
Les Indices Clés (Les « Indices »)
Le détective cherche trois choses principales :
- Le Ratio de Commentaires « Bavards » : Les robots adorent s'expliquer. Ils écrivent souvent trop de commentaires (notes pour le lecteur) par rapport au code réel. Le détective calcule le ratio de « notes bavardes » par rapport au « travail réel ». Si un extrait est composé à 50 % de notes et à 50 % de code, c'est probablement un robot.
- La Vérification des « Verbes » : Dans les notes que les robots écrivent, ils utilisent des mots d'action spécifiques (verbes) d'une manière très répétitive et explicative. Le détective compte combien de mots d'action apparaissent dans les notes par rapport au code.
- Le Mélange « Texte vs Code » : Parfois, les robots collent accidentellement des paragraphes entiers de conversation normale (comme un message de chat) directement dans le code. L'équipe a entraîné un petit assistant à scanner ligne par ligne et à demander : « Est-ce une ligne de code, ou est-ce juste une phrase ? » Si un extrait de code contient trop de « justes phrases », il est signalé.
3. Les Astuces Spéciales (Heuristiques)
Le détective utilise également quelques « règles empiriques » basées sur ce qu'ils ont remarqué dans les données :
- L'Astuce de l'« Étiquette de Langue » : Les robots sont souvent confus par le formatage. Ils écrivent fréquemment le nom de la langue (comme « python » ou « java ») comme une ligne autonome juste avant que le code ne commence. Les humains le font rarement. Si le détective voit une ligne qui dit juste « python » toute seule, c'est un énorme signal d'alarme.
- L'Astuce de l'« Erreur Finales » : Les robots s'arrêtent parfois d'écrire brusquement. Le détective vérifie la toute fin de l'extrait de code. Si le code s'interrompt juste à la fin avec une erreur de syntaxe (comme une phrase se terminant en plein mot), c'est probablement un robot qui a manqué de temps ou de jetons.
4. Comment Ils Assemblent Tout Cela
Le système ne repose pas sur un seul cerveau géant. Au lieu de cela, il utilise un processus en deux étapes :
- Le Scanner : Il vérifie rapidement l'« Étiquette de Langue » et le mélange « Texte vs Code ». S'il voit un indice clair de robot, il dit immédiatement : « C'est un robot ! »
- La Calculatrice : Si le scanner n'est pas sûr, il passe le code à une simple calculatrice mathématique (un arbre de décision). Cette calculatrice pèse le « Ratio Bavard » et le « Ratio Verbe » pour faire une supposition finale.
5. Le Résultat
Le système de l'équipe est incroyablement efficace.
- Pas de Travail Lourds : Il fonctionne sur un processeur d'ordinateur standard (CPU) et n'a pas besoin d'un supercalculateur.
- Vitesse Instantanée : Il donne des réponses presque instantanément.
- Performance : Lors de la compétition, ce détective simple et « léger » a terminé dans le top 15 % de toutes les entrées, battant de nombreux systèmes qui utilisaient des technologies beaucoup plus complexes et coûteuses.
En résumé : Le papier montre que vous n'avez pas besoin d'une IA super-complexe pour repérer du code généré par l'IA. Parfois, un simple détective qui compte juste combien de notes l'auteur a prises et vérifie s'il a accidentellement collé un message de chat dans le code suffit à attraper le robot.
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.