DeepMind, una inteligencia artificial propiedad de Alphabet, presentaba a comienzos de año AlphaCode, una tecnología que puede programar. Los resultados han sido muy buenos, superando a otras tecnologías como ChatGPT o CoPilot. Ahora Sience ha lanzado sus conclusiones tras varios meses de análisis.
Así, se ha sabido que el rendimiento general del modelo, según un artículo publicado en Science correspondía al de un "programador novato" con entre unos meses y un año de práctica.
Hay que recordar que DeepMind de Google lleva años logrando hitos importantes a este respecto como cuando consiguió superar a los humanos al Go o al StarCraft II o jugó mejor que otras máquinas al ajedrez.
Cuando se le presenta un problema nuevo, AlphaCode genera soluciones de código candidatas (en Python o C++) y filtra las malas. Pero mientras que antes los investigadores utilizaban modelos como Codex para generar decenas o cientos de candidatos, DeepMind hizo que AlphaCode generara hasta más de un millón.
Reemplazar a los humanos... o no
Esto incluso ha llevado a la revista Nature a preguntarse si estamos cerca de tener tecnologías que puedan reemplazar a los programadores. Por ahora la respuesta es no, pero habrá que esperar a cómo avanzan estas tecnologías. Para poner a prueba sus proezas, DeepMind presentó AlphaCode a concursos de programación en línea. En concursos con al menos 5.000 participantes, el sistema superó al 45,7% de los programadores.
Ahora, tras analizar AlphaCode, los investigadores señalan que gran parte del trabajo que conlleva un gran proyecto de ingeniería de software -por ejemplo, el diseño de un navegador web- implica comprender las necesidades de los seres humanos que van a utilizarlo. Estas necesidades son difíciles de describir con las especificaciones legibles por una máquina que una IA puede utilizar para producir código.
Pero lo que sí puede hacer AphaCode y otras tecnologías similares es ser un complemento al desarrollador humano. "Esperamos que las investigaciones futuras den como resultado herramientas que mejoren la productividad de los programadores y nos acerquen a una IA capaz de resolver problemas", afirma David Choi, ingeniero de DeepMind.
Alphacode va más allá de su competencia
Hay que recordar que desde hace una semana, los usuarios de las redes sociales están fascinados por la capacidad de otro chatbot, llamado ChatGPT, de producir mini-ensayos ocasionalmente significativos a petición de los usuarios, incluidos breves programas informáticos.
Mientras que ChatGPT es un motor de conversación de uso general, de acuerdo con los investigadores, AlphaCode es más especializado: se entrenó exclusivamente en cómo los humanos respondían a preguntas de concursos de escritura de software. "AlphaCode se diseñó y entrenó específicamente para la programación competitiva, no para la ingeniería de software", ha explicado a Nature David Choi, ingeniero investigador de DeepMind y coautor del artículo publicado en Science.
Por otro lado, la investigación afirma que AlphaCode va más allá del anterior abanderado de la escritura de código de IA: Codex, un sistema lanzado en 2021 por el laboratorio de investigación OpenAI. El laboratorio ya había desarrollado GPT-3, un "gran modelo de lenguaje" experto en imitar e interpretar texto humano tras haber sido entrenado con miles de millones de palabras de libros digitales, artículos de Wikipedia y otras páginas de texto de Internet.
OpenAI creó Codex ajustando GPT-3 a más de 100 gigabytes de código de Github, un repositorio de software en línea. El programa puede escribir código cuando se le pide una descripción cotidiana de lo que debe hacer, por ejemplo, contar las vocales de una cadena de texto. Pero su rendimiento es deficiente cuando se le plantean problemas complicados.
Los creadores de AlphaCode se centraron en resolver esos difíciles problemas. Al igual que los investigadores del Codex, empezaron alimentando un gran modelo de lenguaje con muchos gigabytes de código de GitHub, solo para familiarizarlo con la sintaxis y las convenciones de codificación. Luego lo entrenaron para traducir descripciones de problemas en código, utilizando miles de problemas recopilados de competiciones de programación.
Ver todos los comentarios en https://www.genbeta.com
VER 0 Comentario