🤖

gpt-engineerを触ってみた

2024/01/14に公開

想定読者

普段コードをあんま書かない人

背景

  • 2023年の6月くらいに、gpt-engineerというリポジトリがバズったらしい(らしい)
  • 2023年の12月くらいに、gptengineer.appというサービスがローンチして、最近海外のXで再度バズってるらしい(らしい)
  • gptengineer.appは現在waitlistに登録して正座待機という感じ

ひとことでgpt-engineerとは

LLMを使って、自然言語でソフトウェアを開発できる(ようになることを目指している)、プロジェクト

gpt-engineerができること

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

やること

  • gptengineer.appのコアとなるgpt-engineerを触ってみる
  • LLMはGPT4で試してみる
  • 環境はGitHub Codespacesを使う

ではいきます

1. OpenAI の API key を作成

API keys ページにアクセス

https://platform.openai.com/api-keys

「Create new secret key」ボタンをクリック

Nameを適当に入力して、「Create secret key」ボタンをクリック

secret key が表示されるので、コピーボタンをクリック

のちほど使用するので控えておく

2. GitHub Codespacesでgpt-engineerのリポジトリ環境を立ち上げる

GitHubアカウントを持っていない場合は作成する

https://github.com/

gpt-engineerのcodespacesにアクセス

https://github.com/gpt-engineer-org/gpt-engineer/codespaces

ちなみに、個人用アカウント用のGitHubだと、月120コア時間まで無料 (参照: GitHub Codespaces の請求について)

「Create codespace on main」ボタンをクリック

こんな感じでリポジトリを含んだvscode環境がブラウザで立ち上がる

以降、「TERMINALで実行」と書かれているところは、下部に開かれてるTERMINALで実行する

3. .envファイルにAPI keyを設定

.envファイルを作成

TERMINALで実行
cp .env.template .env

左のパネルに.envファイルが新規作成される

.envファイルを編集

左のパネルの.envファイルをクリックして、以下のように編集

.env
### OpenAI Setup ###

# OPENAI_API_KEY=Your personal OpenAI API key from https://platform.openai.com/account/api-keys
OPENAI_API_KEY="<open_api_key>"
  • <open_api_key>: 先ほど作成した OpenAI の API keys の secret key

3. pythonの仮想環境を作成

依存ライブラリをインストール

TERMINALで実行
poetry install
出力例
...
  • Installing sphinx-typlog-theme (0.8.0)
  • Installing tox (4.11.4)

Installing the current project: gpt-engineer (0.2.6)

仮想環境をactivate

TERMINALで実行
poetry shell
出力例
@dubianhaozhi ➜ /workspaces/gpt-engineer (main) $ poetry shell
Spawning shell within /home/codespace/.cache/pypoetry/virtualenvs/gpt-engineer-S23JznWt-py3.10
. /home/codespace/.cache/pypoetry/virtualenvs/gpt-engineer-S23JznWt-py3.10/bin/activate
@dubianhaozhi ➜ /workspaces/gpt-engineer (main) $ . /home/codespace/.cache/pypoetry/virtualenvs/gpt-engineer-S23JznWt-py3.10/bin/activate
(gpt-engineer-py3.10) @dubianhaozhi ➜ /workspaces/gpt-engineer (main) $

4. 新規プロジェクトを作成してみる

gpte projects/<project_name>を実行

TERMINALで実行
gpte projects/<project_name>
  • <project_name>: my-new-projectとか

「What application do you want gpt-engineer to generate?」と聞かれたので、今回は「calculator」と言ってみる

「Do you want to execute this code? (Y/n)」と聞かれたので、「Y」と答えてみる

今回はやらないが、「n」と答えると、再度実行したりするんだと思います

「Is it ok if we store your prompts to help improve GPT Engineer? (y/n)」と聞かれたので、「y」と答えてみる

以下のコマンドで実行できるぽいので、次のセクションで試してみる

bash run.sh

my-new-projectが出来上がった

ここで、ソースコードを見たりするといいと思います

5. できたアプリを実行してみる

TERMINALを新規で立ち上げる


いざ実行

TERMINALで実行
cd projects/<project_name>
  • <project_name>: my-new-projectとか
TERMINALで実行
bash run.sh

エラーが出た

いろいろ直したら、以下のように4かける5を計算できた

今回はここまで。

6. お片付け

GitHub Codespace を削除する

codespacesにアクセス

https://github.com/gpt-engineer-org/gpt-engineer/codespaces

使用していたcodespaceの三点ドットをクリック

「delete」ボタンをクリック

「Delete」ボタンをクリック (環境が完全に削除されるので、作ったプロジェクトなどは無くなります)

OpenAI API key を削除する

API keysページにアクセス

https://platform.openai.com/api-keys

使用していたapi keyの削除ボタンをクリック

「Revoke key」ボタンをクリック

終わりに

一発で動かせるところまでは行かなかったですが、プロンプトを調整したり、使い方を工夫したり、気が向いたら続編を書きます。

Discussion