Deep TabNine: una herramienta de autocompletar código que quiere aprovechar el Deep Learning para ayudar a los desarrolladores

Todos los desarrolladores tienen sus herramientas favoritas, las que mejor se adapten a su flujo de trabajo y en muchos casos, plugins que les ayuden a no tener que trabajar más de la cuenta. Pero, lo que quiere TabNine es básicamente ayudar al programador a trabajar menos y más rápido.

Aunque la mayoría de editores de texto o entornos de desarrollo suelen tener funciones de autocompletación, ninguna está al nivel de lo que esta herramienta promete. TabNine no es algo nuevo, es un plugin que lleva tiempo en el mercado, la novedad es que ahora han integrado un modelo de aprendizaje automático para mejorar significativamente la calidad de las sugerencias que hace.

Deep TabNine usado para escribir en Python

Al nuevo plugin lo han llamado Deep TabNine y de momento se encuentra en fase beta a la que puedes acceder por invitación, o si ya eras cliente de TabNine.

El equipo detrás del proyecto, viendo cómo las redes neuronales son cada vez más avanzadas, y tienen usos cada vez más impresionantes en campos como el reconocimiento de voz o hasta creando rostros que no existen, han decidido traer esos avances al campo de las herramientas para los mismos programadores, que irónicamente no han aprovechado esos avances para hacer más simple su propio trabajo.

Un vistazo a…
El MONITOR de PRODUCTIVIDAD PERFECTO TODO lo que hay que saber Xataka TV

Entrenada con archivos de GitHub

Deep TabNine usado para escribir en C++

Deep TabNine utiliza deep learning para entrenar a su modelo y lo hace usando unos dos millones de archivos de GitHub. El objetivo que tiene la IA durante su entrenamiento es predecir cada muestra dependiendo de las que vienen antes. Para ello tienen que aprender comportamientos complejos, como la inferencia en lenguajes de programación dinámicos.

Curiosamente, Deep TabNine utiliza una arquitectura que fue desarrollada para resolver problemas en el procesamiento de lenguaje natural (GPT-2, un modelo abierto y desarrollado por OpenAI), como el que hablamos todos. Esto le beneficia por el hecho de que modelar código requiere entender inglés en formas inesperadas.

¿Funciona? Muchos desarrolladores parecen estar impresionados con el producto, aunque no se ha podido ampliar mucho el acceso a este. En TabNine explican que el plugin requiere mucho poder de procesamiento, y por ello ejecutar este modelo en un ordenador portátil por ejemplo, no ofrecería la baja latencia que el usuario espera.

Para subsanar esto han decidido ofrecer un servicio que permite usar los servidores de TabNine para obtener autocompletación acelerada por GPU y lo han llamado "TabNine Cloud". Y ese es el servicio en beta al que puedes solicitar acceso.

Para los que tienen preocupaciones de privacidad por esto, también ofrecen alternativas: dicen estar trabajando en un modelo más reducido para que los desarrolladores puedan ejecutar en un portátil con latencia razobable y así mantener su código en su propia máquina. Y, para empresas, ofrecerán la opción de licenciar el modelo.

Ver todos los comentarios en https://www.genbeta.com

VER 5 Comentarios

Portada de Genbeta