GPT Engineer를 활용한 프로젝트 생성과 실행

반응형

소개

GPT-Engineer는 프로젝트 생성을 간편하게 도와주는 도구입니다. 사용자가 프로젝트의 내용을 자세하게 작성하면, AI가 그 요청에 따라 코드를 자동으로 작성합니다.

사용자는 복잡한 설정이나 명령어를 몰라도 되며, 간단한 프롬프트 작성으로 원하는 코드를 생성할 수 있습니다. 이러한 기능의 활용을 통해 프로젝트를 시작하고 진행하는 과정에서 생산성을 향상시킬 수 있습니다.

사용자는 빌드하고 싶은 것이 무엇인지 간단하게 적기만 하면 됩니다. 필요한 추가 정보가 있을 경우, AI가 자연스럽게 설명을 요청하여 정확한 코드베이스를 생성해줍니다.

설치 방법

stable 또는 development 중 하나를 설치하여 사용할 수 있습니다.

stable

pip install gpt-engineer

development

git clone https://github.com/AntonOsika/gpt-engineer.git
cd gpt-engineer
pip install -e .

OpenAI API 키는 GPT-4 액세스 키를 사용하는 것을 권장한다고 합니다.
~/.zshrc 파일에 여러분의 OpenAI API 키를 다음과 같이 설정하세요.

export OPENAI_API_KEY=[your api key]

gpt-engineer --help 명령을 사용하면 사용 가능한 모든 옵션을 살펴볼 수 있습니다.

스네이크 게임 만들기

데모에서 소개된 스네이크 게임을 만들어 볼까요?

먼저 projects 폴더 내에 snake 폴더를 생성합니다.

mkdir projects/snake

snake 폴더에 prompt 파일을 생성하고 요구 사항을 작성합니다.

Multiplayer snake in the browser.
Use a python backend with MVC components.
The view needs to stream the state to all connected players.
Please implement also the html and js necessary to run the game with only the code you generate.

그리고 다음 명령을 실행합니다.

gpt-engineer projects/snake 

gpt-3.5-turbo 모델을 사용하여 실행하려면 model 옵션을 사용하면 됩니다.

 gpt-engineer projects/snake --model gpt-3.5-turbo

실행하면 GPT가 요구 사항에 대해 추가 질문을 합니다. 첫번째 질문은 인원 제한, 특별한 기능, 파워업 등 게임에 관련된 사항에 대한 것이었습니다.

질문: 멀티플레이어 스네이크 게임의 규칙과 메커니즘에 대해 더 자세히 설명해 주시겠어요? 예를 들어, 몇 명의 플레이어를 지원해야 하는지, 승리 조건은 무엇인지, 게임에 특별한 기능이나 파워업이 있나요?

인원수 제한, 특별한 기능, 파워업은 없고 단순하게 구현해달라고 답변했습니다.

질문: 파이썬 백엔드 요구 사항을 구체적으로 설명해 주시겠습니까? 사용하고자 하는 특정 프레임워크나 라이브러리가 있나요?

특정 프레임워크나 라이브러리는 사용하지 않는다는 답변을 주고, 원하는 방향으로 구현하라고 답변하였습니다.

다음 질문: 이 프로젝트에서 MVC 구성 요소의 구조와 구체적인 역할에 대해 자세히 설명해 주시겠어요?

알아서 재미있게 잘 만들어달라고 답변했습니다.

다음 질문: 뷰가 연결된 모든 플레이어에게 상태를 스트리밍하는 방법에 대해 자세히 설명해 주시겠어요? 상태에는 무엇이 포함되며 어떻게 구현해야 하나요?

알아서 잘 만들어 달라고 답변.

다음 질문: HTML 및 JS 요구 사항에 대해 더 자세히 설명해 주시겠습니까? 포함되기를 원하는 특정 기능이나 디자인 선호 사항이 있나요?

없다고 답변.

생성 완료 되었다.

생성 결과물
생성완료 후 확인해보니, snake의 workspace 폴더에 프로젝트 동작에 필요한 파일들이 생성되어 있었습니다. 내가 놀란 부분은 README.md 파일과 실행 파일 run.sh까지 생성했다는 점입니다.

하지만 실행하니 다음과 같이 에러가 발생했습니다. 그리고 AI는 생성된 코드가 잘 실행되었는지 또 물어봅니다.

하지만 실행했을 때 에러가 발생했고, 웹 브라우저에서 실행해 보아도 여전히 에러가 발생하였습니다. 이에 대해 GPT를 활용하여 에러를 해결하려고 코드를 수정하였지만, 결국 작동하지는 않았습니다.

스네이크 게임 만들기 2번째 시도

이번에는 요구사항을 단순하게 작성했습니다.

We are writing snake in html and js. 
Keyboard control uses the arrow keys.
The snake has an initial size of 5 squares, and grows by one square as it feeds. 
The browser is compatible with the latest Chrome browser.

이번에는 오류없이 잘 실행되었습니다. 먹이를 먹으면 몸이 길어지고 몸통에 부딪히면 게임 오버가 됩니다.

결론

GPT Engineer는 프로젝트 시작 단계에서 많은 도움을 줄 수 있는 도구로 보입니다. 하지만 지금의 상태에서는 완벽하게 작동하지는 않는 것으로 보입니다.


or

[카카오페이로 후원하기] [토스페이로 후원하기]

반응형