23.06.15
DEVOTEE를 활성화 시키면
지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.
버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.
| 컨텐츠 유형 | 제목 | 저장일 | 삭제 |
|---|
본인인증 로그인에 실패하였습니다.
회원이 아니시거나 본인인증 등록이
완료되지 않은 사용자입니다.
안녕하세요, SK플래닛에서 Web3 관련 서비스를 개발하고 있는 프론트엔드 개발자 김찬민이라고 합니다.
최근 LLM 서비스 생태계를 지켜보던 중 gemini-cli 가 눈에 들어오게 되었는데요,
대부분의 LLM은 API 기반 사용 방식에 토큰 또는 이용 횟수별로 비용을 부과하는 반면
gemini-cli는 분 60회 / 일 1,000회 사용 쿼터를 제공한다는 점(*gemini-2.5-flash 에 한해)에서 무료로 운영할 만한 프로젝트를 만드는 데에 훌륭한 재료가 될 수 있을 것이라고 기대했습니다.
이후 '로컬에서 무료로 사용할 수 있는 LLM이 있다면 어떤 문제를 해결하는데 써야 적절할까?' 라는 질문을 던져 보면서 어떤 도구를 만들지 좁혀 보았습니다.
잠재적으로 나와 팀원들의 업무 생산성을 높여줄 수 있는 도구
소위 "짜치는 일" 을 자동화해줄 수 있는 도구
AI 이용 패턴이 일일 쿼터를 벗어나지 않을 만한 도구
그러다 'git 스테이징 환경에 포함된 파일들을 분석하고, 수정사항을 정리해 커밋 메시지를 생성해주는 도구를 개발해보자' 라는 아이디어가 떠올라 구현에 옮겨 보았습니다.
💡 나중에 알게 된 사실이지만, VSCode Copilot에는 커밋 메시지를 자동으로 생성해주는 기능이 이미 존재합니다.
하지만 gemini-cli 와 연계하면 쿼터 제한에 구애받지 않고 활용할 수 있고, VSCode 외의 에디터에서도 호환된다는 점이 차별점이 될 수 있을 것이라 생각했습니다.
아마 gemini-cli를 사용한다는 대목을 읽으면서 궁금해하셨을 수 있는 부분이지만,
gemini-cli는 기본적으로 API 형식이 아닌 대화형 인터페이스를 통해 프롬프트를 전달하면 응답이 생성되는 도구입니다.
하지만 --prompt 플래그와 함께 gemini --prompt [프롬프트]와 같이 사용하면 대화형 인터페이스 없이 백그라운드에서도 요청을 보낼 수 있고,
이러한 특징과 쉘 스크립트를 적절히 활용해 [프롬프트 : "파일들의 변경사항을 LLM이 요약한 내용"] -> [커밋 메시지 : "LLM이 생성한 커밋 메시지"] 의 구조로 매핑할 수 있었습니다.
또한 이 도구는 어떤 팀원이든 사용할 수 있도록 npm package로 패키징해 npm install -g gemini-commit-assistant 를 실행하면 누구든지 설치할 수 있고,
복잡한 설정이나 새로운 기술을 배울 필요 없이 aic, aic --all 또는 git aic 등의 커맨드를 통해 AI 기반 커밋 메시지를 생성할 수 있도록 설계했습니다.
💡 전체 코드는 깃허브 저장소 에서도 확인해보실 수 있습니다.
데보션 커뮤니티 에도 짧게 게재한 글이지만 gemini-cli는 기본적으로 gemini-2.5-pro 모델을 사용하는데,
관련 내용을 명확히 인지하지 못해 몇 건의 테스트만으로도 429 (Too many requests) 에러를 만나게 되어 당황했던 기억이 있습니다.
다행히 비슷한 이슈들이 벌써 많이 올라와 있어 gemini-commit-assistant 는 내부적으로 flash 모델만을 사용하도록 수정했더니,
429 에러 없이 잘 동작해 뿌듯했던 기억이 납니다.
또 flash는 경량 모델일 것이라 생각해 파일 변경사항들을 제대로 감지하지 못할까도 걱정했는데, 우려와 달리 일반적인 사용 범위 내에서 기대했던 수준의 동작을 보여준 점도 만족스러웠습니다.
LLM이 가진 가능성에는 큰 기대를 걸고 있지만 한편으로는 클라우드나 기타 SaaS 등과는 달리 소요되는 비용을 구체적으로 산정하기 어렵다는 점이 AI 기반 토이 프로젝트를 섣불리 추진하기 어려웠던 이유였는데요,
gemini-cli (flash) 처럼 비용 부담을 획기적으로 줄여줄 수 있는 도구가 더 등장해 재밌는 프로젝트들을 더 많이 만들어보고 싶습니다.
DEVOTEE를 활성화 시키면
지금 작성한 댓글에 AI가 댓글을 달아줍니다.