Skip to main content

Specify what you want it to build, the AI asks for clarification, and then builds it.

Project description

gpt-engineer

GitHub Repo stars Discord Follow License GitHub Issues or Pull Requests GitHub Release Twitter Follow

gpt-engineer lets you:

  • Specify software in natural language
  • Sit back and watch as an AI writes and executes the code
  • Ask the AI to implement improvements

Getting Started

Install gpt-engineer

For stable release:

  • python -m pip install gpt-engineer

For development:

  • git clone https://github.com/gpt-engineer-org/gpt-engineer.git
  • cd gpt-engineer
  • poetry install
  • poetry shell to activate the virtual environment

We actively support Python 3.10 - 3.12. The last version to support Python 3.8 - 3.9 was 0.2.6.

Setup API Key

Choose one of:

  • Export env variable (you can add this to .bashrc so that you don't have to do it each time you start the terminal)
    • export OPENAI_API_KEY=[your api key]
  • .env file:
    • Create a copy of .env.template named .env
    • Add your OPENAI_API_KEY in .env
  • Custom model:
    • See docs, supports local model, azure, etc.

Check the Windows README for Windows usage.

Other ways to run:

Create new code (default usage)

  • Create an empty folder for your project anywhere on your computer
  • Create a file called prompt (no extension) inside your new folder and fill it with instructions
  • Run gpte <project_dir> with a relative path to your folder
    • For example: gpte projects/my-new-project from the gpt-engineer directory root with your new folder in projects/

Improve Existing Code

  • Locate a folder with code which you want to improve anywhere on your computer
  • Create a file called prompt (no extension) inside your new folder and fill it with instructions for how you want to improve the code
  • Run gpte <project_dir> -i with a relative path to your folder
    • For example: gpte projects/my-old-project -i from the gpt-engineer directory root with your folder in projects/

By running gpt-engineer you agree to our terms.

Relation to gptengineer.app (GPT Engineer)

gptengineer.app is a commercial project for the automatic generation of web apps. It features a UI for non-technical users connected to a git-controlled codebase. The gptengineer.app team is actively supporting the open source community.

Features

Pre Prompts

You can specify the "identity" of the AI agent by overriding the preprompts folder, with your own version of the preprompts, using the --use-custom-preprompts argument.

Editing the preprompts is how you make the agent remember things between projects.

Vision

By default, gpt-engineer expects text input via a prompt file. It can also accept imagine inputs for vision-capable models. This can be useful for adding UX or architecture diagrams as additional context for GPT Engineer. You can do this by specifying an image directory with the—-image_directory flag and setting a vision-capable model in the second cli argument.

E.g. gpte projects/example-vision gpt-4-vision-preview --prompt_file prompt/text --image_directory prompt/images -i

Open source, local and alternative models

By default, gpt-engineer supports OpenAI Models via the OpenAI API or Azure Open AI API, and Anthropic models.

With a little extra set up you can also run with open source models, like WizardCoder. See the documentation for example instructions.

Mission

The gpt-engineer community mission is to maintain tools that coding agent builders can use and facilitate collaboration in the open source community.

If you are interested in contributing to this, we are interested in having you.

If you want to see our broader ambitions, check out the roadmap, and join discord to get input on how you can contribute to it.

gpt-engineer is governed by a board of long-term contributors. If you contribute routinely and have an interest in shaping the future of gpt-engineer, you will be considered for the board.

Example

https://github.com/gpt-engineer-org/gpt-engineer/assets/4467025/40d0a9a8-82d0-4432-9376-136df0d57c99

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gpt_engineer-0.3.1.tar.gz (60.8 kB view details)

Uploaded Source

File details

Details for the file gpt_engineer-0.3.1.tar.gz.

File metadata

  • Download URL: gpt_engineer-0.3.1.tar.gz
  • Upload date:
  • Size: 60.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for gpt_engineer-0.3.1.tar.gz
Algorithm Hash digest
SHA256 e7646c8421a47a12a4e6114c184f40a2e6c2f9fad3af03cf7ed9eb34a545eae0
MD5 7f2bbb14acb4385a62d3896a3cebc749
BLAKE2b-256 844d2040b398f9581ae38cac92568ad834859e564465788e07ff4c47c708aedd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page