¿Qué es y cómo funciona Microsoft IntelliCode?

Con Visual Studio Code, hay un editor para desarrolladores en el que pueden escribir código de forma gratuita. El programa ha sido de código abierto desde 2015, y Visual Studio de Microsoft ha agregado recientemente una nueva función: MS IntelliCode.

IntelliCode es una función de IA que funciona directamente en Visual Studio y está diseñada para liberar a los programadores de parte del trabajo de escritura de código. MS IntelliCode hace recomendaciones y las coloca en la parte superior de la lista de finalización. Al igual que otras IA generativas, IntelliCode se basa en gran medida en las probabilidades.

Un análisis de código le dice al programa qué elemento es más probable que siga el código actual, y luego se generan sugerencias a partir de esto. Cuando se trata de los datos de entrenamiento, MS IntelliCode depende tanto de la cantidad como de la calidad: se importaron varios miles de conjuntos de datos de GitHub, cada uno con más de 100 estrellas.

Por supuesto, IntelliCode también funciona según el contexto y analiza el código en el que actualmente está haciendo sugerencias. Y debido a que todo funciona de forma nativa en Visual Studio, la IA de Microsoft está dirigida principalmente a los desarrolladores que, de todos modos, pasan mucho tiempo en el editor.

Leer: ¿Qué es AspectJ?

El modelo IntelliCode

Las sugerencias en Visual Studio generalmente se presentan en orden alfabético, lo cual es claro y fácil de navegar, pero requiere una pequeña cantidad de trabajo cada vez. Esta navegación constante a través de la lista de sugerencias puede costar mucho tiempo a los desarrolladores en proyectos más largos e interrumpir el flujo de trabajo.

Por el contrario, las sugerencias inteligentes de IntelliCode organizan la lista de sugerencias de forma jerárquica, y es más probable que las sugerencias estén más arriba. Si MS IntelliCode puede comprender bien un código dado y generar sugerencias significativas a partir de los conjuntos de datos de entrenamiento, los programadores pueden trabajar de manera más eficiente y concentrarse en cosas más importantes que simplemente ingresar clases y comandos.

Esta función está claramente diseñada para los usuarios y no sobrescribe las sugerencias enumeradas alfabéticamente. Las sugerencias de IntelliCode están marcadas con un asterisco, pero más abajo en la lista están las sugerencias normales.

IntelliCode funciona mejor en C#

Este autocompletado sensible al contexto es parte de IntelliCode y se llama IntelliSense. En C#, IntelliCode puede hacer incluso un poco más, pudiendo completar argumentos y líneas enteras. Además, IntelliCode en C# también lee el código existente y saca conclusiones sobre las convenciones de formato y el estilo del código.

Se puede crear un archivo EDITORCONFIG a partir de esto si se desea. Las ediciones también se controlan localmente, por lo que IntelliCode también hace sugerencias para la refactorización cuando corresponda.

IntelliCode funciona mejor en C#
IntelliCode funciona mejor en C#

Lenguajes admitidos actualmente en Visual Studio

Al igual que Visual Studio, IntelliCode es flexible y está disponible para los lenguajes de programación más comunes.

En estudio visual

  • C#.
  • C++.
  • XAML.
  • JavaScript.
  • VisualBasic.

En el código de Visual Studio

  • Java.
  • JavaScript.
  • Phyton.
  • SQL.

Finalizaciones en equipo con MS IntelliCode

Además de utilizar IntelliCode mediante repositorios públicos, en los que se entrenó la extensión a través de GitHub, IntelliCode ofrece otra característica: Finalización del equipo.

Aquí, los usuarios pueden configurar sus propios repositorios como base para la capacitación; los datos, por supuesto, solo se utilizan para su propio equipo. En este caso, IntelliCode se entrena localmente, la carga a IntelliCode (necesaria para completarse) luego se ejecuta a través de un servidor seguro. Todos los miembros del equipo con acceso a los repositorios apropiados pueden comenzar a usar esta versión personalizada de IntelliCode de inmediato.

Esta forma de usar IntelliCode en consecuencia genera una IA a la medida que se adapta a las costumbres de los repositorios deseados. Esto significa que todos los usuarios de los repositorios utilizados en el equipo se benefician del modelo IntelliCode, que puede optimizar aún más la colaboración en proyectos más grandes.

Leer: ¿Qué es la vectorización?

IntelliCode es más discreto que AI en muchos lugares

La mayoría de los asistentes de IA intentan liberar a los programadores de la mayor cantidad de trabajo posible y reducir la brecha entre un problema formulado en lenguaje natural y un programa ejecutable tanto como sea posible. IntelliCode no es la IA adecuada para este tipo de desafío en el proceso de desarrollo.

MS IntelliCode es un complemento muy ligero y muy discreto que se integra sin esfuerzo en la interfaz de Visual Studio. Como herramienta para completar automáticamente, IntelliCode funciona más como Tabnine, pero se nota menos en el trabajo diario, también porque la IA no aprende tan rápido durante el proyecto. IntelliCode es más un instrumento para liberar a los desarrolladores experimentados de un trabajo tedioso, el efecto de aprendizaje para los recién llegados (un argumento real para otras IA) está limitado con IntelliCode.

Sin embargo, IntelliCode de Microsoft no puede prescindir de buenos argumentos: el asistente de IA es gratuito y los usuarios de Visual Studio o Visual Studio Code pueden instalarlo fácilmente. En Visual Studio 2019 (desde 16.4) IntelliCode se incluye de forma predeterminada de todos modos, en Visual Studio Code 2018 (desde 1.29) solo se debe instalar la extensión asociada.

Deja un comentario