forked from AntonOsika/gpt-engineer
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
6a31d87
commit de046d3
Showing
6 changed files
with
66 additions
and
28 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1 @@ | ||
input | ||
memory | ||
TODO.md | ||
archive |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,36 @@ | ||
# gpt-engineer | ||
# GPT Engineer | ||
Specify what you want it to build, the AI asks for clarification, and then builds it. | ||
|
||
How to use: | ||
Even if it is complex. | ||
|
||
- Install requirements.txt `pip install -r requirements.txt` | ||
- Copy the example folder `cp example -r my-new-project` | ||
- Edit the file main_prompt in my-new-project | ||
- run `python main.py my-new-prompt` | ||
- Check the results in my-new-project/workspace | ||
## Philosophy | ||
The philosophy of this project is that it should be be | ||
- Simple to get value | ||
- Flexible and simple to add new own "AI steps" (see `steps.py`) | ||
- 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 | ||
- No databases, all computation is "resumable" and persisted to filesystems | ||
|
||
|
||
## Usage | ||
|
||
**Install**: | ||
|
||
- `pip install -r requirements.txt` | ||
|
||
**Run**: | ||
- Create a new empty folder with a `main_prompt` file (or copy the example folder `cp example -r my-new-project`) | ||
- Fill in the `main_prompt` in your new folder | ||
- run `python main.py my-new-project` | ||
|
||
**Results**: | ||
- Check the generated files in my-new-project/workspace_clarified | ||
|
||
## Features | ||
Allows you to specify the "identity" of the AI agent by editing the files in the `identity` folder. | ||
|
||
This, and reusing snippets in the main_prompt, is currently how you make the agent remember things between sessions. | ||
|
||
Each step in steps.py will |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
### Next up | ||
We have noticed that for complex projects the model is "lazy" in implementing many files. | ||
|
||
Hence, we want to let LLM generate a new prompt for a "sub-engnieer" that goes through each file, takes other relevant files as context and rewrites the files. | ||
|
||
|
||
### More things to try | ||
- allow for human edits in the code/add comments and store those edits as diffs, to use as "feedback" in the future etc | ||
- Add step of generating tests | ||
- Fix code based on failing tests | ||
- Allow for rerunning the entire run from scratch, but "replay" human diffs by adding the diffs to the prompt and asking LLM to apply them in the new code | ||
- keep a repository of examples of human feedback that can be reused globally | ||
- Allow for fine grained configuration, per project, so that it can be regenerated from scratch applying all the human diffs that came after the initial AI generation step. Which diffs come in which steps, etc. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters