GPT Engineer
GPT Engineer
GPT Engineer는 자연어(한국어를 포함한 설명)로 소프트웨어를 지정하면 AI가 코드를 작성하고 실행하는 것까지 해 주는 '원조' 코드 생성 실험 플랫폼이에요. 아이디어를 설명만으로 코드로 바꾸는 AI 코딩 에이전트로, 커뮤니티가 운영하는 오픈소스 프로젝트예요.
출처: 문서
본문
GPT Engineer는 다음과 같은 일을 할 수 있어요.
- 자연어로 소프트웨어를 지정해요.
- AI가 코드를 작성하고 실행하는 과정을 지켜보기만 하면 돼요.
- AI에게 개선 사항을 구현해 달라고 요청할 수도 있어요.
여기서 설명만으로 코드를 생성하는 AI 코딩 에이전트 로서의 역할이 핵심이에요. 참고로, 이를 더 진화시켜 관리형 서비스로 만든 것이 상업 프로젝트인 gptengineer.app 이고, 잘 유지보수되는 해킹 가능한 CLI를 원한다면 aider 를 추천한다고 해요.
설치
안정 버전 설치는 다음과 같아요.
python -m pip install gpt-engineer
개발 버전 설치는 다음과 같아요.
git clone https://github.com/gpt-engineer-org/gpt-engineer.git
cd gpt-engineer
poetry install
poetry shell
Python 3.10 ~ 3.12 버전을 적극 지원하고, Python 3.8 ~ 3.9를 지원하는 마지막 버전은 0.2.6이에요.
API 키 설정
다음 중 하나를 선택하면 돼요.
- 환경 변수 내보내기 (터미널을 시작할 때마다 하지 않도록 .bashrc에 추가할 수 있어요)
export OPENAI_API_KEY=[your api key]
- .env 파일:
.env.template의 복사본을.env라는 이름으로 만들어 주세요..env에 OPENAI_API_KEY를 추가하세요.
- 커스텀 모델: 로컬 모델, Azure 등을 지원하는데 자세한 내용은 문서 를 참고하세요.
Docker(설명)로 실행하거나, GitHub Codespaces로 브라우저에서 전부 처리할 수도 있어요.
사용 예시
새 코드 만들기 (기본 사용법)
- 컴퓨터 어디에든 프로젝트용 빈 폴더를 만들어요.
- 새 폴더 안에 확장자가 없는
prompt파일을 만들고 지시사항을 채워 넣어요. - 폴더의 상대 경로로
gpte <project_dir>를 실행해요.
gpte projects/my-new-project
기존 코드 개선하기
- 개선하고 싶은 코드가 있는 폴더를 찾아요.
- 폴더 안에 확장자가 없는
prompt파일을 만들고 코드를 개선하는 방법에 대한 지시사항을 채워 넣어요. - 폴더의 상대 경로로
gpte <project_dir> -i를 실행해요.
gpte projects/my-old-project -i
주요 기능
- Pre Prompts:
--use-custom-preprompts인자로preprompts폴더를 자신만의 버전으로 덮어써서 AI 에이전트의 '정체성'을 지정할 수 있어요. preprompts를 편집하는 것이 에이전트가 프로젝트 간에 기억하도록 만드는 방법이에요. - Vision: 기본적으로 텍스트 입력(
prompt파일)을 받지만, 비전 지원 모델에는 이미지 입력도 받을 수 있어요. UX나 아키텍처 다이어그램을 추가 컨텍스트로 넣으면 유용해요.---image_directory플래그로 이미지 디렉터리를 지정하고, 두 번째 CLI 인자로 비전 지원 모델을 설정하면 돼요. - 오픈소스·로컬·대체 모델: 기본적으로 OpenAI API 또는 Azure OpenAI API, 그리고 Anthropic 모델을 지원해요. 약간의 설정만 추가하면 WizardCoder 같은 오픈소스 모델로도 실행할 수 있어요.
- Benchmark:
bench바이너리를 설치해 APPS, MBPP 같은 공개 데이터셋으로 자신만의 에이전트 구현을 벤치마킹할 수 있어요.
GPT Engineer를 실행하면 이용 약관(terms)에 동의하는 것으로 간주돼요.