Lenguajes de programación: este generador de código de IA de código abierto es muy bueno para escribir en C

Empleos de DevOps los salarios estan aumentando pero algunos lo

Investigadores de la Universidad Carnegie Mellon han lanzado PolyCoder, un modelo de generador de código automatizado que fue entrenado en múltiples lenguajes de programación, que dicen que es particularmente bueno para escribir código en C.

Los investigadores esperan que su PolyCoder de código abierto pueda democratizar la investigación en el campo de la generación de código de IA, que hasta ahora está dominado por empresas bien financiadas como DeepMind y OpenAI, propiedad de Alphabet.

«Los grandes modelos de lenguaje (LM) de código recientemente se han mostrado tremendamente prometedores para completar código y sintetizar código a partir de descripciones de lenguaje natural. Sin embargo, los LM de código de última generación actuales… no están disponibles públicamente, lo que deja muchas preguntas sobre sus decisiones de diseño de datos y modelos», dijeron los investigadores.

VER: ¿Qué es el desarrollo ágil de software? Todo lo que necesita saber sobre la entrega de mejor código, más rápido

Los investigadores señalan que el Codex de OpenAI, presentado en agosto, está disponible a través de la herramienta Copilot de GitHub, propiedad de Microsoft, pero señala que proporciona «acceso no gratuito» a la salida del modelo a través de llamadas a la API de caja negra, pero los pesos y datos de entrenamiento del modelo no están disponibles.

La idea detrás de la generación automática de código es que puede ahorrar tiempo a los desarrolladores, suponiendo que la salida sea precisa y no presente fallas de seguridad. DeepMind afirmó que su generador de código AlphaCode recientemente presentado se ubicó en el 54,3% superior de los participantes humanos en competencias de programación. Pero entrenar el modelo requirió «cientos de petaFLOPS días» en los centros de datos de Google.

«A pesar del gran éxito de los modelos de código de lenguaje grande, los modelos más fuertes no están disponibles públicamente», señalan los investigadores. «Esto impide la aplicación de estos modelos fuera de las empresas con buenos recursos y limita la investigación en este campo para las organizaciones con pocos recursos».

Para solucionar esto, los investigadores han entregado su propio modelo entrenado en código de múltiples lenguajes de programación que han llamado «PolyCoder».

Los investigadores explicaron: «Lanzamos un nuevo modelo, PolyCoder, con 2.7B de parámetros basados ​​en la arquitectura GPT-2, que fue entrenado en 249 GB de código en 12 lenguajes de programación en una sola máquina. En el lenguaje de programación C, PolyCoder supera a todos modelos incluyendo Codex».

El modelo se entrenó con datos de varios repositorios de GitHub, que cubren 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. Además, para entrenar a PolyCoder, los investigadores eligieron GPT-2 debido a limitaciones presupuestarias.

Los investigadores reclamaron algunas áreas de éxito, particularmente en C. Sin embargo, Codex aún lo superó en otros idiomas.

«En particular, PolyCoder supera a Codex y a todos los demás modelos en el lenguaje C. Al comparar solo los modelos de código abierto, PolyCoder funciona mejor que el GPT-Neo 2.7B de tamaño similar en C, JavaScript, Rust, Scala y TypeScript», señalan los investigadores. .

«En los otros 11 idiomas además de C, todos los demás modelos de código abierto, incluido el nuestro, son significativamente peores (mayor perplejidad) que Codex.

Deja un comentario