Amazon ha anunciado el lanzamiento de CodeWhisperer, una herramienta de asistencia para programadores apoyada en la inteligencia artificial. Si alguien está pensando en el reciente GitHub Copilot, no anda mal encaminado, ya que se trata de un rival directo que intenta aportar cosas propias y, al menos aparentemente, corregir uno de los aspectos más controvertidos de este tipo de herramientas.
CodeWhisperer, al igual que Copilot, está entrenada para asistir en la programación de lenguajes populares como Java, JavaScript y Python, apoyándose para ello en las miles de millones de líneas código disponibles de forma pública y en la propia base de Amazon, la documentación pública y el código publicado en foros.
Estando en fase previa como parte de la cadena de herramientas para IDE de Amazon Web Services (AWS IDE Toolkit), puede ser integrada en IDE y editores de código como IntelliJ IDEA, PyCharm, WebStorm, Visual Studio Code y AWS Cloud 9. En futuros lanzamiento se espera introducir el soporte para Lambda Console de AWS.
Entre sus características propias, la nueva herramienta de Amazon cuenta con CodeGuru, un revisor de código y perfilador de rendimiento apoyado en inteligencia artificial, además de DevOps Guru, una herramienta para encontrar problemas de operación con la que la compañía sentó las bases de CodeWhisperer. Al parecer fue probada por tan solo una pequeña cantidad de desarrolladores y de manera interna antes de su publicación oficial con el fin de mantenerla en secreto.
Uno de los aspectos más polémicos de Copilot fue el hecho de que podría estar violando derechos de autor e incumpliendo licencias de software, sobre todo la GPL, cuyas variantes más populares obligan a los desarrolladores a redistribuir el código de un producto derivado al menos bajo una licencia compatible. Que Copilot pueda tomar y sugerir código GPL que luego acabe en software privativo no es algo que haga mucha gracia, así que la Free Software Foundation no ha dudado en tomar cartas en el asunto y mostrar públicamente sus reservas.
Aquí parece que CodeWhisperer ha tomado una vía más transparente. Según Amazon, la mayoría del código que genera su nueva herramienta es nuevo, pero en caso de tomar un fragmento de otro, lo detectará y avisará de la licencia original, dejando bajo la responsabilidad del programador tomar o no dicho código. Esto debería, al menos en teoría, aclarar un poco más las cuestiones en torno a los derechos de autor y las ciertas licencias que exigen la redistribución del código, pero a saber cómo funciona el mecanismo a la hora de la verdad.
CodeWhisperer examina de manera constante el código generado por el programador y es presuntamente capaz de aprender de su estilo a la hora de escribir. Por otro lado, también debería de ser capaz de escanear y detectar problemas de seguridad en el código, además de que sobre el papel funciona bien para los programadores que trabajan fuera del ecosistema de AWS. Eso sí, el soporte para las API de AWS es first-class citizen, cosa normal viendo la procedencia de la herramienta.
Y aquí tenemos a CodeWhisperer. Veremos hasta dónde llegan estas herramientas de asistencia apoyadas en la inteligencia artificial, porque además de las suspicacias que despiertan en torno a los derechos de autor y ciertas licencias, está por ver en qué lugar acaban al final dentro de la programación.