The attention of many AI-interested developers is currently focused on one particular GitHub repository: GPT-Engineer. The GPT-4-based software is designed to automate much of the code-writing process according to the programmer's needs.
In addition to writers, programmers have long benefited from advances in chatbots such as ChatGPT or Google Bard. Microsoft has also integrated Github Copilot X, an AI code assistant, into its popular Visual Studio development environment. Starcoder is another open-source code model project that underpins chatbots. These seem to be useful; Github, for example, reports a huge increase in programmer productivity.
Now another project, GPT-Engineer, is attracting a lot of interest from the developer community. In a very short time, the open-source repository on GitHub has collected more than 26,000 stars, making it the most followed project on the platform at times. It's software that uses existing LLM capabilities, those of GPT-4, to automate as much code work as possible.
Prompt to code base
According to developer Anton Osika, GPT-Engineer is a flexible and adaptable AI solution that aims to generate a complete code base with just one prompt. It learns what the code should look like and adapts accordingly.
Starting from an initial prompt, GPT-Engineer follows the chain-of-thought principle and independently asks for missing information on the way to the code base. You say what you want to build, the AI asks for it and then builds it. GPT-Engineer can evaluate multiple files at the same time. The system is similar to Chaos GPT, but for code.
All code generated by GPT-Engineer is stored in the file system and can be reused later. This is to keep GPT-Engineer as simple and flexible as possible and to differentiate it from some previous solutions of this kind.
GPT-Engineer is operated from a terminal and requires basic knowledge of Python. The program currently only accepts API keys for GPT-4, GPT-3.5 is not supported. GPT-4 is superior to GPT-3.5 for code tasks.
Osika demonstrates the capabilities of GPT-Engineer in the following video using a simple snake game as an example.
👶🤖 Introducing `gpt-engineer`
▸ 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
— Anton Osika (@antonosika) June 10, 2023
Is the hype justified?
The project is still in a very early stage of development, but it gives a first impression of how language models could take even more work away from programmers. So far, I've only seen tech demos with GPT-Engineer, but that doesn't mean people are using it for production tasks.
The attention Osika's work is currently getting should motivate him to tackle the next items on his roadmap. There are things like "self-healing code" that automatically inserts errors into GPT-4, asking for feedback, breaking up code generation into small pieces, or the ability to let GPT-Engineer decide what to do next. The code and installation instructions are available on GitHub.
gpt-engineer is in its infant stage.
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.
— Anton Osika (@antonosika) June 22, 2023