대(大) AI 시대, 나도 드디어 AI 코드 리뷰를 적용해보기로 결심했다.
사실 다양한 방법들이 있었지만, 가장 많이 사용되고 익숙한 ChatGPT를 활용하기로 했다.
이번에 내가 사용한 주요 도구는 다음과 같다.
GitHub Actions
OpenAI GPT API
관련 정보는 정말 넘쳐났다.
검색만 조금 해봐도 적용 방법에 대한 친절한 설명들이 이미 잘 정리되어 있었다.
AI 코드 리뷰를 적용하기 위해 가장 먼저 해야 할 일은 GPT API 키 발급이다.
API keys
에 들어가서 셋팅을 하면 된다.
1. 브랜치 만들기
새로운 브랜치를 만든다. 기존 브랜치를 사용해도 무방하다.
2. 토큰 환경변수 설정
① 레포지토리의 Settings
메뉴로 이동한다.
② 좌측 메뉴의 Secrets and variables
를 클릭한다.
③ Actions
항목을 선택한다.
④ 앞서 발급받은 OpenAI의 API 키를 등록한다.
3. YML 파일 작성
/.github/workflows/code_review_from_chatgpt.yml
경로에 yml 파일을 생성한다. (파일명 자유)
필요한 옵션들은 공식 문서에서 확인할 수 있다.
4. PR 생성 및 GitHub Action 실행 확인
설정이 완료되었다면 PR을 생성한다. 제대로 설정되었다면 GitHub Action이 자동으로 실행되는 것을 확인할 수 있다.
옵션 이름 | 설명 |
---|---|
LANGUAGE | ChatGPT가 리뷰를 작성할 언어 (예: Korean , English ) |
MODEL | 사용할 OpenAI 모델 (예: gpt-3.5-turbo , gpt-4 ) |
PROMPT | ChatGPT에게 주는 기본 지시 문구 |
max_tokens | ChatGPT 응답의 최대 길이 (클수록 더 많은 내용을 리뷰함) |
MAX_PATCH_LENGTH | 리뷰할 코드 변경(diff)의 최대 크기 제한 |
IGNORE_PATTERNS | 리뷰에서 제외할 파일 패턴 (예: *.md , /node_modules/**/* ) |
INCLUDE_PATTERNS | 리뷰에 포함할 파일 패턴 (예: *.js , *.ts ) |
Korean
)로 설정했다.gpt-4
모델을 선택했다. 원래는 o1-preview
를 원했으나 JSON 형식 미지원으로 사용할 수 없었다.결과 및 개선 방향
리뷰 결과가 만족스럽지는 않았다.
불필요한 리뷰가 많았으며, 이미 존재하는 테스트 코드가 있음에도 테스트를 추가하라는 등의 부정확한 리뷰도 있었다.
다음 글에서는 프롬프트를 개선해 리뷰 품질을 높이는 방법을 다뤄볼 예정이다.