La atención de muchos desarrolladores interesados en la IA se centra actualmente en un repositorio específico de GitHub: el GPT Engineer. Este software basado en GPT-4 está diseñado para automatizar gran parte del proceso de escritura de código en función de las necesidades del programador.
Además de los redactores, los programadores se benefician desde hace tiempo de los avances en chatbots, como ChatGPT o Google Bard. Microsoft también ha integrado Github Copilot X, un asistente de código basado en IA, en su popular entorno de desarrollo Visual Studio. Starcoder es otro proyecto modelo de código abierto que admite chatbots. Estos parecen ser útiles; Github, por ejemplo, informa de un gran aumento de la productividad de los programadores.
Ahora, otro proyecto, GPT Engineer, está atrayendo mucho interés de la comunidad de desarrolladores. En muy poco tiempo, el repositorio de código abierto en GitHub ya ha acumulado más de 26.000 estrellas, convirtiéndose por momentos en el proyecto más seguido de la plataforma. Se trata de un software que utiliza las capacidades ya existentes de LLM, las de GPT-4, para automatizar al máximo el trabajo de código.
Preguntar por la base de código
Según su desarrollador, Anton Osika, GPT-Engineer es una solución de IA flexible y adaptable que pretende generar una base de código completa con una sola pregunta. Aprende cómo debe ser el código y se adapta en consecuencia.
A partir de una pregunta inicial, GPT-Engineer sigue el principio de encadenamiento de pensamiento y solicita de forma independiente la información que falta en el camino hacia el código base. Tú dices lo que quieres construir, la IA pregunta y luego lo construye. GPT-Engineer puede evaluar varios archivos al mismo tiempo. El sistema es similar a Chaos GPT, pero orientado al código.
Todo el código generado por GPT-Engineer se almacena en el sistema de archivos y puede reutilizarse posteriormente. Esto se hace para mantener GPT-Engineer tan simple y flexible como sea posible y diferenciarlo de algunas soluciones anteriores de este tipo.
GPT-Engineer se maneja desde un terminal y requiere conocimientos básicos de Python. El programa actualmente sólo acepta claves API para GPT-4, GPT-3.5 no está soportado. GPT-4 es superior a GPT-3.5 para tareas de código.
Osika demuestra las capacidades de GPT-Engineer en el siguiente vídeo, utilizando un ejemplo sencillo de un juego de la serpiente.
👶🤖 Introducing `gpt-engineer`
— Anton Osika (@antonosika) June 10, 2023
▸ One prompt generates a codebase
▸ Asks clarifying questions
▸ Generates technical spec
▸ Writes all necessary code
▸ Easy to add your own reasoning steps, modify, and experiment
▸ open source: https://t.co/61YQQDbK3c
▸ Lets you finish a… pic.twitter.com/SLKGZfjdU8
¿Es justificable el Hype?
El proyecto todavía se encuentra en una etapa inicial de desarrollo, pero ofrece una primera impresión de cómo los modelos de lenguaje pueden aliviar aún más el trabajo de los programadores. Hasta ahora, solo he visto demostraciones técnicas con GPT-Engineer, pero eso no significa que las personas lo estén utilizando para tareas de producción.
La atención que el trabajo de Osika está recibiendo actualmente debería motivarlo a abordar los próximos elementos en su hoja de ruta. Hay cosas como el «código de autorregeneración» que inserta automáticamente errores en GPT-4, solicitando retroalimentación, dividiendo la generación de código en partes más pequeñas o la capacidad de permitir que GPT-Engineer decida qué hacer a continuación. El código y las instrucciones de instalación están disponibles en GitHub.
gpt-engineer is in its infant stage.
— Anton Osika (@antonosika) June 22, 2023
Good developers could have insane impact – and learn a ton – by taking leadership, facilitate structure, unleash hundreds of passionate coders that want to contribute and get shit done.
Hard work will be acknowledged.