Microsoft, a través de GitHub y en colaboración con OpenAI, presentó Copilot, un sistema de inteligencia artificial integrado en la plataforma colaborativa de desarrollo, capaz de adaptarse a distintos tipos de proyectos y completar líneas de código.
Esta herramienta, liberada en primera instancia bajo una vista previa técnica, ya tiene abiertos sus registros, pero con cupos limitados.
Un asistente de programación basado en IA
GitHub Copilot fue presentado a través del blog de aquella plataforma como un “programador de IA que le ayuda a escribir un mejor código”. Este cometido se logra gracias a la capacidad de esta herramienta de extraer el contexto del código en el que está trabajando, para presentar sugerencias de líneas enteras o funciones completas.
Este asistente automatizado de programación, que opera a través de una extensión para Visual Studio Code, trabaja con un variado conjunto de marcos y lenguajes. En su presentación, desde GitHub señalan que esta primera versión funciona particularmente bien con Python, JavaScript, TypeScript, Ruby y Go, pero igualmente está apto para tratar otras docenas de lenguajes.
“Omite las documentaciones y deja de buscar ejemplos” es una de las invitaciones con las que se presenta Copilot. Al haber sido entrenado con miles de millones de líneas de código público, según señalan, este sistema puede ofrecer más de una alternativa, en lugar de un “autocompletar” sin opciones adicionales. Esto permite configurar APIs de uso común, completar funciones o variables, reproducir patrones repetitivos e incluso, convertir comentarios en líneas de código.
La colaboración de OpenAI en este proyecto se materializó con el aporte de OpenAI Codex, un nuevo sistema de inteligencia artificial creado por OpenAI, que actúa como el motor de GitHub Copilot. A diferencia de GPT-3, otro proyecto del mismo centro de investigación, OpenAI Codex tiene un dominio más amplio sobre cómo las personas usan el código, al haber sido entrenada únicamente para este específico fin.
GitHub Copilot no prueba el código que propone, lo que sugiere que en algunos casos es posible que el código no se compile o ejecute adecuadamente. Otro punto débil de esta etapa inicial es lo limitado del contexto que analiza la IA, el cual se remite únicamente al archivo sobre el que se trabaja, pasando por alto a otros presentes en el mismo proyecto.
Aunque Copilot no puede desarrollar aplicaciones completas de manera autónoma, por las debilidades recién enumeradas, este es un importante avance para facilitar un trabajo más eficiente, pero también es un primer acercamiento hacia un escenario futuro que luce cada vez más probable, en el que se ve bajo amenaza la actividad de los programadores, al menos bajo los términos que hoy conocemos.
La inscripción en esta vista previa técnica, más información adicional sobre Copilot, se encuentra disponible en GitHub.