LoginSignup
11
8

コード自動生成アプリGPT-Engineer 動かしてみる

Last updated at Posted at 2023-06-21

本日このようなツイートを見つけて衝撃が走りました。

最終目標のPromptを入れたらそのコードの全体像を生成してくれるGPT-Engineerというアプリのようです。

Tutorialも公開されていたので実際に触ってみました。参考にしたサイトの通りにやるとすこし詰まったため、まとめを残しておきます、参考になれば幸いです。

手順

参考サイト

手順はここを参考にしてます。

1. リポジトリをクローン

こちらの本家のサイトからリポジトリをクローンしてきます。

git clone https://github.com/Anton0sika/gpt-engineer.git

2. 必要なライブラリのインストール

cloneしたリポジトリに移動し、必要なライブラリのインストールを行います。

cd gpt-engineer
pip install -r requirements.txt

3. APIのKeyを登録する

For Windows (Command Prompt):

set OPENAI_API_KEY=OpenAI-GPT-4-API-key

For Windows (PowerShell):

$env:OPENAI_API_KEY="OpenAI-GPT-4-API-key"

For Linux/macOS:

export OPENAI_API_KEY=OpenAI-GPT-4-API-key

4. main_promptの内容を変更する

gpt-engineer/projects/example

の中にmain_promptがありこの中のPromptを変更します。

初期のものではシンプルすぎるのである程度変更を行います。

今回は、Snake Gameを作成してもらいます。

We  are writing snake in python. MVC components split in separate files. Keyboard control.Make food pellet orange. Always have 2 food pellets on the screen at any time. Make pellets move, by changing position every 5 seconds in any of the 8 directions, by 1 cell. Make the game grid 50 by 50 cells. Display score in upper right corner. Snake eating 1 pellet adds 100 to the score.

5. コードの生成

//gpt-engineerの階層まで移動

python -m gpt_engineer.main example

これを実行することで、コードの生成が始まります。

image.png

実行してしばらく経つと、Promptにおいて、不明瞭な点について質問がされるため、答えてあげてください。

具体的には、操作方法やルールについて問われます。

その後以下のような生成が始まります。

image.png

アプリ設計の概要を書いてます。

また、必要なライブラリをインストールするための、requirements.txtを生成し、ゲームのコードを作ってくれます。

最終的に、requirements.txtを勝手にインストールしてくれて、アプリを起動してくれます。

ezgif.com-video-to-gif (1).gif

実際に、操作できて遊べるゲームができました。

生成物は、projects/example/workspaceの中に生成されます。

run.sh を起動すると再度アプリを起動できます。

まとめ

正直ビビりました。でも、対話でPromptを洗練させていき、共通認識を高めていけば一瞬でこのレベルのものが作れるのは少し心躍るものがありますね。もっと使っていこうと思います。面白い使い方があったら教えてください!

いいね、ブックマーク、フォローしていただけると勉強の励みになりますので是非お願いします。😉

追伸 --
Twitterで日々の学習風景を投稿してます。

@Ren_yello

11
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
8