Un outil IA propose l’auto-complete dans 22 langages de programmation

Sur le web

Par Antoine le

Un développeur a crée un outil basé sur l’intelligence artificielle, censé aider un développeur à écrire son code plus vite en proposant différentes suites possibles. Les erreurs de syntaxe n’ont qu’à bien se tenir.

Aujourd’hui, l’IA commence à trouver des applications un peu partout dans notre vie de tous les jours. L’un de ces champs d’application concerne la prédiction textuelle. Vous connaissez déjà certainement le principe, présent sur tous les téléphones portables pour accélérer la saisie des messages. Et ce, depuis une ère qui semble aujourd’hui préhistorique mais pourtant pas si éloignée où écrire un SMS était un calvaire à neuf ou dix touches. Depuis la démocratisation de smartphones, cette idée n’a pas été abandonnée, bien au contraire. Mais ces systèmes ne sont pas parfaits : chacun en a déjà expérimenté les limites, et a déjà maudit la saisie semi-automatique dans certaines situations.

La fiabilité de la complétion automatique est encore sujet à débat, mais il existe de vraies pistes pour l’améliorer – à commencer par l’IA. Vous avez déjà certainement remarqué que Gmail s’est doté de cette fonctionnalité, et que cela fonctionne plutôt bien ! Une façon de gagner quelques précieuses secondes par message au moment de s’attaquer à une boîte de réception pleine à craquer.

Mais répondre à des emails n’est pas la seule activité où la saisie semi-prédictive pourrait faire des merveilles : les développeurs sont certainement le corps de métier qui bénéficierait le plus de cette technologie. Elle existe évidemment déjà dans l’archi-majorité des IDEs. Parfois, elle est implantée de façon très rudimentaire; dans d’autres cas, il s’agit d’outils très puissants qui facilitent réellement la vie. L’un des plus célèbre est certainement IntelliSense, la fonction d’auto-complétion intégrée à Visul Studio, l’IDE de Microsoft.

L’IA et le développement : je t’aime, moi non plus

Mais aussi puissant soit-il, même IntelliSense a ses propres limites et se contente de parcourir l’arbre de méthodes et paramètres associés au dernier objet référencé. Pour cette raison, on constate un intérêt croissant pour l’IA, qui pourrait permettre une vraie saisie prédictive, tenant compte des habitudes humaines.

C’est ce que propose TabNine, un outil permettant d’intégrer une saisie prédictive à pas moins de 22 langages de programmation, dont les plus connus comme Python, Java et JavaScript, C, C#, PHP, Ruby.. La liste exhaustive des langages supportés est disponible ici.

https://tabnine.com/blog/deep

D’après TNW, le créateur de TabNine, aurait entraîné son IA en lui fournissant pas moins de 2 millions de fichiers moissonnés sur la plateforme GitHub. A l’heure actuelle, il s’agit encore d’une bêta fermée à laquelle il est possible de s’y inscrire via cette page.

Des systèmes de ce genre vont immanquablement fleurir dans les prochaines années, tant la productivité est un facteur déterminant pour les développeurs. Cela pourrait également permettre de diminuer significativement le nombre de coquilles, et donc le temps passé à débugger un programme. A terme, certains considèrent que l’IA se chargera de plus en plus d’écrire du code à la place des développeurs en chair et en os, ce qui pourrait amener une vraie mutation de tout un corps de métiers.

A noter qu’il existe une certaine inquiétude de la part des développeurs professionnels. Puisqu’ils doivent récupérer et analyser plus de matière pour devenir plus performants, certains craignent pour la sécurité de code très sensible qui pourrait être « aspiré » par l’IA vers le serveur où l’entraînement est réalisé… Même Kite, un moteur d’autocomplétion pour le langage Python qui analyse le code uniquement en local, n’a pas réussi à convaincre totalement.

Source: TNW