서론
ChatGPT: 개발자의 새로운 동반자
최근 기술의 발전은 개발 프로세스에 혁신적인 변화를 가져오고 있습니다. 특히, 인공지능(AI) 기술은 개발자들의 작업 방식을 재정의하고 있죠. 이 글에서는 Git PR(Pull Request) 코드 리뷰 과정에서 ChatGPT를 활용하는 방법과 그 장점에 대해 알아보겠습니다.
목표
ChatGPT 를 이용해서 Git PR(Pull Request) 코드 리뷰를 받아보겠습니다.
이는 개인 프로젝트를 할 때 도움이 될 것 같아서 시작하게 되었습니다.
ChatGPT를 이용한 Git PR 코드 리뷰
ChatGPT를 코드 리뷰 과정에 통합하는 것은 시간을 절약하고 효율성을 높이는 방법입니다. 예를 들어, 개발자가 PR을 생성하면, ChatGPT는 코드 변경 사항을 분석하여 문제가 될 수 있는 부분을 식별하고, 코드 개선에 대한 제안을 할 수 있습니다. 또한, 코딩 스타일이나 모범 사례에 대한 피드백을 제공함으로써, 개발자의 학습 과정을 지원할 수 있습니다.
OPEN API KEY
ChatGPT 를 이용해서 코드 리뷰를 받으려면 "OPENAI API KEY"가 필요합니다.
해당 "API KEY"를 발급 받기 위해서는 https://platform.openai.com/api-keys 해당 링크에 접속 후 로그인 해주시면 됩니다. 그리고 사진의 순서대로 따라해주시기 바랍니다.
발급 받은 키를 복사해줍니다.
키를 발급 받으시면 위 사진 2와 같이 표시가 될 것 입니다.
한 번 발급받은 키는 다시 볼 수 없으므로 계속 이용하고 싶으시면 어딘가에 복사해두시길 바랍니다.
Git Repository - Actions (Repository secrets)
자신의 Git Repository 에 들어가서 Settings -> Secrets and variables -> Actions 탭으로 이동 후 New repository secret 을 눌러 이동해줍니다. (사진 3)
사진 4와 같은 화면이 나오면 Name 에 "OPEN_API_KEY" 를 입력해주고 Secret 내용은 OPEN AI - API Key 에 받은 API Key 를 입력해줍니다.
정상적으로 Secret key 를 추가하였으면 사진 3과 같이 추가된 모습이 나타날 것입니다.
Git Repository - Actions (New workflow)
Actions 탭으로 이동 후 New workflow 를 눌러줍니다.
사진 6과 같은 화면으로 이동 후 set up a workflow yourself 를 눌러줍니다.
그럼 사진 7과 같은 화면으로 이동하게 됩니다.
workflow 이름은 main.yml -> cr.yml 으로 변경합니다.
그리고 아래 내용을 붙여넣기 후 Commit changes... 를 눌러주면 거의 모든 준비가 끝났습니다.
# .github/workflows/cr.yml 파일 생성
name: Code Review
permissions:
contents: read
pull-requests: write
on:
pull_request:
types: [opened, synchronize]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: anc95/ChatGPT-CodeReview@main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
LANGUAGE: Korean
Git Pull Request
이제 PR 를 해주면 사진 8과 같이 ChatGPT 가 코드 리뷰를 해줍니다.
주의할 점
크레딧
저 같은 경우는 몇 달 전 글들을 참고해서 하다 보니까 OpenAI 사이트가 조금 달랐습니다.
무료로 제공해 주는 크레딧이 없어진 것으로 보입니다.
최소 5달러는 충전을 해주셔야 합니다. (저는 그랬습니다. 틀린 정보라면 댓글 달아주세요.)
액션 성공?
액션은 성공적으로 돌았지만 리뷰가 안달리는 경우가 발생할 수 있습니다.
해당 이유는 사진 10에서 알 수 있듯이 OpenAI Error 429 라고 나와있습니다. https://platform.openai.com/docs/guides/error-codes/api-errors. 를 참고하시면 됩니다.
"429 - 요청을 너무 빠르게 보내서 요청에 대한 속도 제한에 도달했습니다.
원인: 요청을 너무 빠르게 보냈습니다.
해결책: 요청 속도를 조절하세요. 속도 제한 가이드를 읽어보세요."
"429 - 현재 할당량을 초과했습니다. 계획과 결제 세부 사항을 확인하세요.
원인: 크레딧을 모두 사용하거나 매월 최대 지출 한도에 도달했습니다.
해결책: 추가 크레딧을 구매하거나 한도를 늘리는 방법을 알아보세요."
저는 두 개의 원인 중 아래의 크레딧 문제로 인해 발생하는 것으로 파악되었습니다.
해결법
크레딧을 충전 후 새로운 API Key를 발급 받고 Action Secret key 를 수정하고 Action 을 돌리면 된다.
결론
개인 프로젝트를 진행할 때 코드 리뷰를 받을 수 있다는 점이 좋다.
그리고 어렵게 느껴질 수 있지만 의외로 간단하게 세팅할 수 있다.