본문 바로가기

frond-end

GitHub Actions를 이용한 ChatGPT 기반 자동 코드 리뷰 기능 추가하기

 

 

팀원들이 다들 바쁘거나, 코드리뷰를 제대로 해줄 시간이 부족할 때 기능 리뷰만 확인 할 때가 많습니다 

코드의 품질과 원활한 코드리뷰를 위해 AI 의 도움을 받으면 좋을 것 같아서 도입을 해봤는데요!

 

Github Action 을 이용해서 PR을 등록하면 ChatGPT 가 코드 리뷰를 해줍니다.

 

아래 레포를 통해 도움을 받았습니다.

https://github.com/anc95/ChatGPT-CodeReview?tab=readme-ov-file#self-hosting

 

GitHub - anc95/ChatGPT-CodeReview: 🐥 A code review bot powered by ChatGPT

🐥 A code review bot powered by ChatGPT. Contribute to anc95/ChatGPT-CodeReview development by creating an account on GitHub.

github.com

중국인 개발자가 만든 ChatGPT 를 이용하여 Github 에서 코드 리뷰를 자동화하는 액션입니다.
이 액션을 사용하면 Pull Request 가 열리거나 변경될 때마다 ChatGPT 를 이용하여 코드 리뷰를 작성하고, 코드 리뷰어로 지정된 사용자게 자동으로 리뷰를 요청할 수 있습니다.

 

 

1️⃣ OpenAI Key 발급

먼저, OpenAI 홈페이지에 들어가서 로그인을 합니다.

https://platform.openai.com/settings/organization/api-keys

 

API keys > "Create new secret key" 버튼을 눌러서 api 키를 생성합니다.

 

 

api key 를 잘 복사합니다.

 

 

 

 

2️⃣ github 레파지토리에 토큰 등록

github 의 적용할 레포의 Settings 메뉴 > Security > Secrets and variables > Actions 페이지로 이동합니다.

 

New repository secret 버튼을 클릭해서 'OPENAI_API_KEY' 로 등록해줍니다. 

 

3️⃣  apps/cr-gpt ; GPT 봇 설치

https://github.com/apps/cr-gpt

 

GitHub · Build and ship software on a single, collaborative platform

Join the world's most widely adopted, AI-powered developer platform where millions of developers, businesses, and the largest open source community build software that advances humanity.

github.com

여기에 접속해서 레파지토리 등록을 해줍니다.

 

 

 

 

4️⃣ github workflows 에 파일을 생성


`.github/workflows/code_review_from_chatgpt.yml`

name: Code Review From ChatGPT

permissions:
  contents: read
  pull-requests: write

on:
  pull_request:
    types: [opened, synchronize]

jobs:
  code-review:
    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
          MODEL: gpt-3.5-turbo

 

 

해당 파일을 추가해서 커밋 푸시해주면 끝!

 

 

 

 

 

결과

PR 을 올리면 자동으로 리뷰어에 봇이 들어가고 리뷰를 해줍니다.

 

 

 

 

 

Github Actions 동작 방식

PR 을 Open 하면,

➡️ github actions code review workflow 실행

➡️ compareCommit() 함수를 실행하여 변경된 파일 목록을 가져옴

➡️ 코드 리뷰를 작성하라는 prompt 와 함께 changedFiles 의 patch 내용을 chat gpt 에 전달

➡️ chat gpt 에서 가져온 response 를 이용하여 코드 리뷰 생성

 

 

 

 

 

🚨 429 error  현재 할당량을 초과했습니다. 요금제와 청구 세부 정보를 확인하세요.

 

 

https://platform.openai.com/docs/guides/error-codes/api-errors.

 

 

할당량 초과 에러인데요 추가 크레딧을 구매하거나 한도를 늘려야 합니다. OpenAI에서 무료로 제공해주는 크레딧이 없어진 것 같습니다.

 

사용을 원하시면, 

유료 플랜으로 업그레이드해야 합니다. 유료 계정을 설정하고, 신용카드나 직불카드를 추가하고, 업그레이드 전에 기존 API 키가 생성되었다면 새 API 키를 생성합니다. 유료 플랜으로 업그레이드한 후 유료 계정이 활성화되고 오류가 사라지기까지 10분 정도 걸릴 수 있습니다.

 

참고 : https://stackoverflow.com/questions/75898276/openai-api-error-429-you-exceeded-your-current-quota-please-check-your-plan-a

728x90
반응형