Chat GPT, GitHub Copilot 등 생성형 AI 도구들이 많이 우후죽순 생기고 있습니다.
Google에서 Gemini(= Bard) 정식 버전이 배포 되었습니다.
수많은 생성형 AI 중 Gemini를 선택한 이유는 다음과 같습니다.
첫 번째, 현재 GPT-4 보다 Gemini 1.0 Ultra가 성능상 우위를 차지고 하고 있습니다. 또한 코딩, 논리적 추론, 미묘한 지시 파악, 창의적인 협업과 같은 상당히 복잡한 작업을 훨씬 더 능숙하게 처리합니다
두 번째, Gemini는 GPT-3 무료 버전보다 토큰 수가 50배 이상 많습니다. 이는 사용할 수 있는 텍스트의 수가 제한이 없어 긴 텍스트를 생성하는데 유리합니다.
모델 | 토큰 수 | 제한 | 유료 버전 |
---|---|---|---|
Gemini | 1억 | 없음 | 10억, 100억 |
GPT-3 | 2천만 | 30초당 | GPT-4 (유료) |
변경 된 코드의 Git Commit 메세지를 작성하는데 Gemini가 다른 생성형 AI보다 유리하기 때문에 Gemini를 선택하게 되었습니다.
Mac 환경 터미널에 제공하는 명령어 중 pbcopy
명령어가 있습니다.
pbcopy
는 클립보드를 그대로 복사를 합니다.
Git commit 하기 전 Git Staged 단계에서 수정 된 코드만 복사하기 위해서는 아래 명령어를 입력합니다.
git diff --staged | pbcopy
Staged
상태의 코드 복사가 완료되면 다음과 같이 복사가 됩니다.
diff --git client/src/components/layout/Layout.tsx client/src/components/layout/Layout.tsx
index 1b4a469..a61ce2f 100644
--- client/src/components/layout/Layout.tsx
+++ client/src/components/layout/Layout.tsx
@@ -10,7 +10,7 @@ const Layout = ({ children }: LayoutProps) => {
<>
<Header />
<main>{children}</main>
- <Footer />
+ <Footer />
</>
)
}
프롬프트 명령어 작성 시 6가지 구성 요소가 필요합니다.
수정 된 코드에 GIt Commit 메세지를 작성하는 프롬프트를 작성합니다.
너는 코드 변경 사항을 Git Commit를 작성해 주는 리뷰어야. 제공된 diff 코드를 명확하고 간결하게 커밋 메시지로 요약해야 해. 커밋 제목에 대해서 명령어 스타일을 사용하고 제목은 50자 이하로 제한해야 해. 본문 길이는 제한이 없어 대신 설명적으로 본문을 작성해 줘. 모든 내용은 COMMIT_EDITMSG에 붙일 준비가 되어 있는 단일 코드 블록으로 만들어줘
코드 변경 사항에 대한 Git Commit 작성해주는 [리뷰어]로 역할을 지정합니다.
지시문은 diff(수정)한 코드에 대한 Git Commit 메세지를 간결하고 커밋 메세지로 요약하는 문장으로 작성합니다.
그리고 원하는 조건은 다음과 같이 작성합니다.
COMMIT_EDITMSG
즉 커밋 메세지 템플릿으로 만들기<예시>
프롬프트 작성 :
답변 :
그럼 수정 된 코드를 다시 프롬프트에 작성해보겠습니다.
프롬프트 작성 :
답변:
제목과 본문 형태가 출력이 되고 마지막에 COMMIT_EDITMSG도 나오는 것을 확인 할 수 있습니다.
프롬프트을 동일하게 했지만 출력이 다를 수도 있기 때문에 각자의 환경과 상황에 맞게 작성하면 원하는 결과를 얻을 수 있습니다.