L'IA pourrait-elle être utilisée pour tricher lors des tests de programmation ?

Nœud source: 1883763

Vous avez manqué une session du Future of Work Summit ? Rendez-vous sur notre Bibliothèque à la demande du Future of Work Summit ruisseler.


Le plagiat ne se limite pas aux essais. Le plagiat de programmation - où un développeur copie délibérément du code sans attribution - est une tendance croissante. Selon un New York Times article, à l'Université Brown, plus de la moitié des 49 allégations de violations du code académique en 2016 concernaient la tricherie en informatique. À Stanford, jusqu'à 20% des étudiants d'un seul cours d'informatique en 2015 ont été signalés pour tricherie possible, rapporte le même article.

La mesure de la similarité logicielle, ou MOSS, est restée l'un des systèmes les plus populaires pour détecter le plagiat dans les logiciels depuis son développement en 1994. MOSS peut analyser le code dans une gamme de langages, y compris C, C++ et Java, répertoriant automatiquement les paires de programmes avec code similaire et mettant en évidence des passages individuels dans des programmes qui semblent être les mêmes.

Mais une nouvelle étude constate que les systèmes d'IA disponibles gratuitement pourraient être utilisés pour effectuer des tâches de programmation de niveau d'introduction sans déclencher MOSS. Dans un article coécrit par des chercheurs de Booz Allen Hamilton et Eleuther IA, un modèle de langage appelé GPT-J a été utilisé pour générer du code "sans aucune indication particulière que les futures techniques de détection de plagiat pourraient utiliser pour essayer d'identifier le code généré par algorithme".

"L'objectif principal de l'article était de contextualiser le fait que GPT-J peut résoudre des exercices d'introduction à l'informatique dans un modèle de menace réaliste pour le plagiat dans un cadre éducatif", Stella Biderman, chercheuse en IA chez Booz Allen Hamilton et co-auteur de l'étude. , a déclaré à VentureBeat par e-mail. "[Nos] résultats ont démontré qu'un étudiant ayant accès à GPT-J et une connaissance très minimale de l'informatique peut effectuer des devoirs de niveau introductif sans déclencher MOSS."

Biderman et Edward Raff - l'autre co-auteur - ont demandé au GPT-J de répondre à des questions qui l'obligeaient à coder des programmes capables de créer des tables de conversion de miles en kilomètres, de calculer l'IMC d'une personne en fonction de son poids et de sa taille, etc. GPT-J a commis des erreurs mineures qui devaient être corrigées dans la plupart des cas, mais ces erreurs ne nécessitaient souvent pas de programmation au-delà de la possibilité d'exécuter du code et de rechercher sur le Web des codes d'erreur.

Bien que Biderman n'ait trouvé aucune preuve que GPT-J soit en fait utilisé pour tricher sur les devoirs, le travail soulève des questions quant à savoir s'il (ou des outils similaires) pourrait être abusé dans les tests de codage professionnels. De nombreuses entreprises technologiques s'appuient sur des examens, internes ou externes, pour évaluer les connaissances des embauches de logiciels. Selon la conception, ceux-ci pourraient être sensibles - du moins en théorie - au code généré par l'IA.

"MOSS a été développé bien avant que des choses comme GPT ne soient possibles, mais cela illustre l'importance de comprendre la façon dont les outils numériques évoluent au fil du temps pour introduire de nouveaux risques et limitations", a ajouté Biderman.

Rick Brownlow, PDG et cofondateur de Geektastic, une plateforme d'évaluation technique, dit qu'il n'a vu aucune preuve de plagiat par un candidat utilisant l'IA. Il note que pour la plupart des entreprises, un test de codage ne constitue qu'une partie d'un processus d'embauche. On s'attend généralement à ce que les candidats soient capables d'expliquer leurs solutions d'une manière qui indique s'ils ont été malhonnêtes quant à leurs capacités de programmation.

"[O] urs outils anti-plagiat s'activeront lorsque quelqu'un aura copié une autre solution, en totalité ou en partie, [même en repérant] lorsque quelqu'un aura obscurci une partie du code copié pour essayer d'éviter la détection. Si - et c'est un gros si - l'IA pouvait écrire une "bonne" solution à l'un de nos défis à emporter et que c'était original (c'est-à-dire, n'a pas parcouru et copié la solution à partir du Web), alors cela va être aussi difficile à repérer que quelqu'un qui utilise son ami développeur de Google pour l'aider », a déclaré Brownlow à VentureBeat. "Je pense que lorsque nous arriverons à un point où l'IA résoudra les défis de codage à domicile, nous serons au point où vous n'embaucherez plus d'ingénieurs en logiciel."

Le PDG de Qualified.io, Jake Hoffner, déclare que son entreprise détecte également la tricherie en fonction d'aspects tels que "le manque d'effort de codage (par exemple, copier-coller, édition minimale)" et recommande aux clients de faire parcourir leur code aux candidats. Mais il voit un avenir dans lequel l'IA changera la nature des évaluations de programmation, déplaçant l'attention du codage réel vers les compétences de gestion du code.

Les nouveaux outils de suggestion et de révision alimentés par l'IA promettent en effet de réduire les coûts de développement tout en permettant aux codeurs de se concentrer sur des tâches moins répétitives. Au cours de sa Développer conférence des développeurs en mai 2021, Microsoft a détaillé un caractéristique dans Power Apps qui exploite le modèle de langage GPT-3 d'OpenAI pour aider les utilisateurs à choisir des formules. OpenAI Manuscrit système, qui alimente GitHub Copilote service, peut suggérer des lignes entières de code. d'Intel Indicateur de contrôle peut détecter automatiquement les erreurs de codage. Et celui de Facebook Transcodeur convertit le code d'un langage de programmation dans un autre.

"[Au] moment où l'IA commence à écrire plus de code de qualité, l'industrie dans son ensemble commence à se tourner vers les développeurs.... diriger les machines pour écrire du code mais moins d'implication dans le codage proprement dit », a déclaré Hoffner. « [L]e besoin d'impliquer tout code commence à passer au second plan pour de nombreuses tâches de « réinventer la roue » que les développeurs effectuent encore aujourd'hui, comme l'assemblage d'une application mobile qui récupère et écrit des données. Les codeurs passent de ces tâches courantes à des choses moins définies et nouvelles. Ce sont des domaines où il n'y aura pas assez de code existant pour que les systèmes d'IA puissent apprendre, donc les codeurs devront toujours l'exécuter - et ce sont les tâches que nous commencerons à tester en termes d'évaluation.

Nis Frome, directeur général de la plate-forme de défi de codage et de didacticiel Coderbyte, dit qu'il voit moins de risque dans l'IA utilisée pour tricher aux examens de codage que les employeurs "[sacrifiant] d'excellentes expériences de candidat pour des candidats honnêtes". Trop d'attention portée à la prévention de la tricherie se fait généralement au détriment du recrutement et de l'approvisionnement, dit-il, avec pour conséquence de refuser des candidats.

enquête de CoderPad et CodinGame met le problème en relief. Près de la moitié des recruteurs citent la recherche de développeurs qualifiés comme leur défi numéro un, 39 % affirmant qu'ils ont désormais élargi leur vivier de candidats à des développeurs issus de milieux non universitaires, contre 23 % en 2021.

"Nous voyons d'innombrables techniques de tricherie, allant de l'envoi de l'évaluation à une autre personne à la copie des réponses en ligne. Nous avons peu de doute que les candidats ont essayé d'utiliser GPT-J ou copilote lors des évaluations de code sur Coderbyte », a déclaré Frome à VentureBeat par e-mail. « [Mais] tricher sera toujours un jeu du chat et de la souris… Il y a fort à parier que si la plupart de vos candidats trichent, vous avez un problème de sourcing ! Peut-être avez-vous besoin de candidats plus expérimentés et ne devriez-vous pas publier de postes sur les sites d'emploi des universités. La solution n'est pas de faire vivre une expérience autoritaire et fastidieuse à tous les candidats.

Biderman souligne que le maintien de l'intégrité, qu'il implique ou non l'IA, n'est pas une nouvelle entreprise. Dans la même veine que la prédiction de Hoffner, l'avènement d'une IA générant du code facile à utiliser pourrait simplement nécessiter de nouvelles évaluations où les tâches de débogage sont effectuées avec des solutions générées par l'IA, dit-elle.

« Nous pouvons encore enseigner aux étudiants les compétences informatiques importantes dont ils ont besoin et trouver de nouvelles applications pour [l'IA]. Ces changements structurels pourraient offrir de meilleurs résultats pour atténuer le plagiat et les raccourcis, tout en ouvrant la voie à un avenir dans lequel davantage d'outils de développement basés sur l'IA seront entre les mains d'un plus grand nombre d'utilisateurs », a ajouté Biderman. Cela nous aide également à nous préparer à un avenir potentiel dans lequel l'IA et l'apprentissage automatique pourraient faire plus que de simples missions de niveau d'introduction, et nous devrions commencer à nous y préparer. »

La mission de VentureBeat est d'être une place publique numérique permettant aux décideurs techniques d'acquérir des connaissances sur la technologie d'entreprise transformatrice et d'effectuer des transactions. En savoir plus

Source : https://venturebeat.com/2022/01/28/could-ai-be-used-to-cheat-on-programming-tests/

Horodatage:

Plus de AI - VentureBeat