PolyCoder, una AI generadora de código que es open source y que podría superar a Codex
Actualmente, hemos comenzado a ver un incremento en las diferentes soluciones que están comenzando a ofrecer en relación con la generación de código mediante inteligencia artificial (AI) y es que el campo del procesamiento del lenguaje natural (NLP) ha allanado el camino para una serie de IA generadoras de código en varios lenguajes de programación.
De los cuales podemos destacar por ejemplo a GitHub Copilot, AlphaCode y Codex y a las cuales ahora podremos sumar una nueva solución de la mano de los investigadores de la Universidad Carnegie Mellon quienes presentaron recientemente a «PolyCoder», un generador de código basado en el modelo de lenguaje GPT-2 de OpenAI que se entrenó en una base de datos de código de 249 GB en 12 lenguajes de programación.
Sobre PolyCoder
Los autores de PolyCoder afirman que es capaz de escribir C con mayor precisión que cualquier modelo conocido, incluido Codex.
La IA generadora de código, puede escribir código fuente en diferentes lenguajes de programación desde un aviso, promete reducir los costos de desarrollo de software al tiempo que permite a los desarrolladores concentrarse en tareas creativas y menos repetitivas.
PolyCoder se capacitó con datos de varios repositorios de GitHub, que abarcan 12 lenguajes de programación populares: C, C#, C++, Go, Java, JavaScript, PHP, Python, Ruby, Rust, Scala y TypeScript.
El conjunto de datos sin filtrar totalizó 631 GB de datos y 38,9 millones de archivos. El equipo dijo que eligió entrenar a PolyCoder con GPT-2 debido a restricciones presupuestarias. PolyCoder está disponible como código abierto y los investigadores esperan que pueda democratizar la investigación en el campo de la generación de código de IA, que hasta ahora ha estado dominado por empresas bien financiadas.
Los investigadores creen que PolyCoder funciona mejor que otros modelos en la generación de código en el lenguaje C. Sin embargo, Codex siempre lo ha superado en otros lenguajes. «PolyCoder supera notablemente a Codex y todos los demás modelos en el lenguaje C.
“Cuando salió Copilot de GitHub el verano pasado, quedó claro que estos modelos de código de lenguaje muy grandes pueden ser muy útiles para ayudar a los desarrolladores y aumentar su productividad. Pero ningún modelo ni siquiera cercano a esa escala estaba disponible públicamente”, dijeron los investigadores a VentureBeat por correo electrónico. “Así que [PolyCoder] comenzó con Vincent tratando de ver cuál era el modelo más grande que podía entrenarse en nuestro servidor de laboratorio, que terminó siendo 2700 millones de parámetros… y ese modelo estaba una liga por delante de otros modelos orientados al código que eran públicamente disponible en ese momento.”
Al comparar solo los modelos de código abierto, PolyCoder supera al modelo GPT-Neo 2.7B de tamaño similar en C, JavaScript, Rust, Scala y TypeScript», señalan. «En los otros 11 idiomas, todos los demás modelos de código abierto, incluido el nuestro, son significativamente peores (mayor perplejidad) que Codex», agregaron los investigadores de CMU.
Es con ello que PolyCoder se posiciona como una solución bastante interesante, ya que mientras laboratorios de investigación como OpenAI de Elon Musk y DeepMind de Alphabet han desarrollado poderosas IA generadoras de código, muchos de los sistemas más exitosos no están disponibles en código abierto. Las empresas de bajos recursos no tienen acceso a ella y esta situación limita su investigación en campo.
Por ejemplo, datos de entrenamiento del Codex de OpenAI, que impulsa la función Copilotde GitHub, no se han hecho públicos, lo que impide a los investigadores refinar el modelo de IA o estudiar ciertos aspectos del mismo, como la interoperabilidad.
“Las grandes empresas de tecnología no están lanzando públicamente sus modelos, lo que realmente está frenando la investigación científica y la democratización de modelos de código de lenguaje tan grandes”, dijeron los investigadores. “Hasta cierto punto, esperamos que nuestros esfuerzos de código abierto convenzan a otros a hacer lo mismo. Pero el panorama general es que la comunidad debería poder entrenar estos modelos por sí misma. Nuestro modelo superó el límite de lo que puede entrenar en un solo servidor: cualquier cosa más grande requiere un grupo de servidores, lo que aumenta drásticamente el costo”.
Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.