Des chercheurs de Microsoft et de l’université de Cambridge ont créé une IA qui peut coder sans intervention humaine des programmes en combinant des lignes de code récupérées sur des logiciels existants : un pas vers une automatisation du travail des développeurs ?
Microsoft et l’Université de Cambridge ont développé une intelligence artificielle nommée DeepCoder qui utilise des techniques d’apprentissage automatique (machine learning) pour coder des logiciels simples, en combinant des lignes de code trouvées sur des logiciels existants. L’IA vérifie que les combinaisons de lignes de code qu’elle propose sont fonctionnelles, et au fur et à mesure qu’elle créé des combinaisons fonctionnelles, elle peut coder des plate-formes de plus en plus complexes.
Actuellement DeepCoder est capable de produire des programmes opérationnels utilisant jusqu’à 5 lignes de code : cela peut sembler peu, mais 5 lignes permettent déjà d’élaborer des fonctionnalités relativement complexes.
Création de combinaisons de code originales
Un intelligence artificielle de ce type présente l’avantage, sur un développeur humain, de travailler plus rapidement, de synthétiser une masse de données plus importantes – et donc de trouver des combinaisons de code auxquelles un développeur n’aurait pas forcément pensé. En s’améliorant, elle permettra d’automatiser le travail le plus rébarbatif des développeurs.
L’objectif officiel n’est évidemment pas que les codeurs humains soient remplacés, mais qu’ils puissent se dégager des tâches que les IA peuvent accomplir à leur place, et ainsi avoir plus de temps à consacrer à la partie la plus complexe de leur travail.
Un risque pour les développeurs d’être (partiellement) remplacés ?
Cela étant, Marc Brockschmidt, l’un des créateurs de DeepCoder, affirme que les futures versions de son IA pourront développer des logiciels capables de récolter des données sur les sites web ou de catégoriser des photos sur les réseaux sociaux : dans ce cas, aucune intervention humaine ne serait nécessaire.