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 git@github.com: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