TabNine : un outil d’auto-complétion alimenté par l’IA pour accélérer le développement

par Yohann Poiron le 01/08/2019

Au cours de l’année écoulée, l’intelligence artificielle (IA) a considérablement amélioré sa capacité à générer l’écrit. En numérisant d’énormes ensembles de données de texte, les logiciels d’apprentissage automatique peuvent produire des échantillons convaincants de tout, des news aux paroles de chansons. Maintenant, ces mêmes techniques sont appliquées au monde du développement. 

La fonctionnalité de saisie semi-automatique de Gmail est un avantage certain lorsque vous répondez à une tonne d’e-mails et souhaitez envoyer des réponses rapides. Si vous rêviez d’une fonctionnalité analogue pour la programmation, sachez que TabNine peut désormais vous aider à écrire votre code, grâce à son nouveau système de codage automatique alimenté par une intelligence artificielle qui s’intègre aux populaires éditeurs de code.

Cela fonctionne sur le principe simple de la prédiction de texte, mais pour les langages de programmation. L’outil d’auto-completion suggère le prochain mot-clé en fonction du mot-clé que vous venez de taper. Vous pouvez l’installer en tant que complément à n’importe quel éditeur sur lequel vous travaillez.

L’outil prend en charge 22 langages de programmation au total, notamment le Python, le JavaScript, le Java, le C++, le C, le PHP, le Go, le C#, le Ruby, l’Objective-C, le Rust et le Swift. La couverture est donc assez large si vous codez dans l’un des langages populaires. Vous pouvez consulter la liste complète depuis ce lien.

TabNine

Une phase bêta

Le créateur de TabNine, Jacob Jackon, étudiant de premier cycle en informatique à l’université de Waterloo, a déclaré que ce type de logiciel n’est pas nouveau, mais l’apprentissage automatique a énormément amélioré ses possibilités. En outre, il a indiqué qu’il a formé le modèle d’intelligence artificielle à l’aide de plus de 2 millions de fichiers sur GitHub. L’algorithme est basé sur le modèle de traitement de langage naturel GPT-2 d’OpenAI.

Jackson précise que l’IA peut examiner votre syntaxe et prédire quand vous appelez un objet ou une liste. Il peut même générer le nom d’objets basé sur la documentation en langage naturel.

Pour l’instant, TabNine est en phase bêta sur le cloud et vous pouvez vous inscrire pour demander un accès depuis ce lien. Jackson a déclaré que l’équipe travaillait sur un modèle réduit pouvant fonctionner sur une machine pour des développeurs. Il a ajouté qu’il existera également une version entreprise, qui comportera un modèle conçu pour répondre aux besoins d’une entreprise.