Principe et jeu de données

Le modèle s’appuie sur un corpus issu de dépôts sous licence permissive datant de 2021. Pour chaque fichier, les commentaires humains sont extraits, puis les mêmes fichiers sont soumis à plusieurs grands modèles de langage afin de générer des commentaires synthétiques. Le processus garantit un nombre de tokens équilibré entre les deux classes, limitant ainsi le risque que le classifieur apprenne à différencier les dépôts plutôt que les styles d’écriture. Le coût estimé de la collecte initiale est d’environ 30 $, ce qui correspond à la limite où les gains de discrimination commencent à décroître de façon logarithmique.

Des erreurs de construction du jeu de données ont été identifiées : sélection de fichiers sources différents selon le modèle, génération de commentaires pour des fichiers contenant peu de commentaires humains, et omission de la suppression des docstrings. Ces biais entraînent un « subject‑matter leakage », où le classifieur capte des indices liés au contenu du fichier plutôt qu’au style du texte. La correction de ces problèmes a nécessité plusieurs cycles de filtrage et de re‑génération, augmentant le budget réel bien au‑delà des 30 $ initiaux.

Architecture du classifieur et calibration

Le classifieur utilise une architecture de type transformer fine‑tunée sur le jeu de données décrit ci‑dessus. Chaque token d’entrée est associé à un vecteur de caractéristiques ; l’interface utilisateur permet de cliquer sur n’importe quel segment de texte pour visualiser les activations de ces caractéristiques et leur contribution au score final. Le modèle produit également un pourcentage prédit, calibré de façon à représenter la probabilité réelle de la décision. La courbe de calibration montre que les points se situent très près de la diagonale de référence, ce qui indique une correspondance fiable entre les scores et les probabilités observées.

Un paramètre de température ajusté en fonction de la longueur du commentaire augmente la confiance du modèle lorsque le nombre de tokens augmente. Ainsi, pour des commentaires courts, la température reste élevée, limitant la certitude du verdict, tandis que pour des commentaires longs, la température diminue, renforçant la confiance.

Performances et limites

Le taux de précision équilibrée (balanced accuracy) atteint 77 % sur l’ensemble de validation croisée, avec une exactitude de 73 % sur les commentaires humains et de 80 % sur les commentaires générés par IA. Le taux d’erreur global se situe autour de 25 % pour chaque classe. La matrice de confusion révèle que, lorsque le modèle affiche une confiance supérieure à 80 %, le risque de faux positif chute à 5 %; à l’inverse, une confiance proche de 50 % implique une probabilité d’erreur d’environ 50 %.

Les métriques d’accuracy, de précision et de F1 sont calculées sous l’hypothèse d’une répartition égale entre humains et robots, ce qui correspond à une situation d’ignorance de la proportion réelle. Des tests supplémentaires sur un petit jeu de commentaires réels, non synthétique, montrent une amélioration de la discrimination, suggérant que le modèle généralise mieux sur des données proches du monde réel. Cependant, le classifieur reste limité aux commentaires de code ; il n’est pas destiné à détecter d’autres types de texte générés par IA, et aucune garantie de performance n’est fournie dans ces contextes.