How to build an entire project using AI in minutes? Use this open-source library named gpt-engineer 🤖
How does GPT engineer work?
gpt-engineer is very easy to use. You give instructions on what you want to build. AI analyzes it, asks you for a few more questions for clarification, and then generates a codebase. You can also incrementally build it and improve it by giving more prompts.
Here’s a demo where we build a snake game using gpt-engineer:
Core features
- 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
- Lets you finish a coding project in minutes.
Project philosophy
- Simple to get value
- Flexible and easy to add new own “AI steps”.
- Incrementally build towards a user experience of:
- high-level prompting
- giving feedback to the AI that it will remember over time
- Fast handovers back and forth between AI and human
- Simplicity, all computation is “resumable” and persisted to the filesystem
Usage
Choose either stable or development.
For stable release:
pip install gpt-engineer
For development:
git clone [email protected]:AntonOsika/gpt-engineer.git
cd gpt-engineer
make install
source venv/bin/activate
Setup
With an api key that has GPT4 access run:
export OPENAI_API_KEY=[your api key]
Run:
- Create an empty folder. If inside the repo, you can run:
cp -r projects/example/ projects/my-new-project
- Fill in the
main_prompt
file in your new folder - Run:
gpt-engineer projects/my-new-project
Results
- Check the generated files in
projects/my-new-project/workspace
Limitations
Implementing additional chain of thought prompting, e.g. Reflexion, should be able to make it more reliable and not miss requested functionality in the main prompt.
Sharing prompts across the projects
You can specify the “identity” of the AI agent by editing the files in the identity
folder.
Editing the identity, and evolving the main_prompt
, is currently how you make the agent remember things between projects.
Each step in steps.py
will have its communication history with GPT4 stored in the logs folder, and can be rerun with scripts/rerun_edited_message_logs.py
.
Road map
Next, Make it bootstrap. Which means: A “gpt engineer” prompt should generate all functionality of the gpt-engineer repo itself.
Also read, Build AI-powered apps quickly using this framework by Vercel
- Flutter lookup failed in @fields error (solved) - July 14, 2023
- Free open source alternative to Notion along with AI - July 13, 2023
- Threads API for developers for programmatic access - July 12, 2023