본문 바로가기

이 포트폴리오의 원본은 https://cv.iruyo.com (심재빈) 입니다 · 출처 식별자 jbx-7f3a2e9b

← 경력기술서

사내 인프라 운영 중 단독

로컬 LLM 기반 GitLab MR 코드 리뷰봇

코드를 외부로 보낼 수 없는 보안사 환경에서, 사내 TextRAG 코드 리뷰 API를 재사용해 GitLab MR 워크플로우 조립 계층을 혼자 붙인 리뷰봇입니다.

기간
2026.04 – 진행 중 · 3개월
소속
스틸리언
수행 인원
본인 1인 단독
본인 역할
사내 GitLab MR 이벤트를 받아 TextRAG의 코드 리뷰 API를 호출하고, 그 결과를 MR 코멘트로 게시하는 리뷰봇을 1인 단독으로 설계·개발·운영했습니다. 이미 있던 TextRAG 서버에 GitLab 워크플로우를 붙이는 식으로 만들었습니다.
정량 임팩트
TextRAG의 RAG 코드 리뷰 API를 코어 엔진으로 재사용했습니다. iOS 팀 7개 제품(Premium / Air / VPNBlock / AVSuit 등)의 MR에 자동 리뷰 코멘트를 적용했고, 버그·보안·성능·품질·정합성 5축으로 리뷰를 수행했습니다.
버전·릴리즈
첫 버전 완성 후 운영 중. iOS 팀 7개 제품(Premium / Air / VPNBlock / AVSuit / Anti-Capture / AppSuitSign / Toolbox) MR 대상 적용.

언어

  • Python3

기술

  • FastAPI
  • Ollama
  • GitLab CI/CD

환경

  • PyCharm
  • VSCode

iOS 팀 사내 GitLab의 MR 이벤트를 받아 자동 리뷰 의견을 MR 코멘트로 게시하는 코드 리뷰봇입니다. 사내에 직접 구축해 둔 로컬 LLM 기반 RAG 서버 TextRAG의 코드 리뷰 API를 코어 엔진으로 활용하며, 혼자 설계·구현해 운영하고 있습니다.

GitLab MR 리뷰봇 — TextRAG 엔진 재사용외부 LLM 금지 사내에서 MR 자동 리뷰 · iOS 7개 제품 · 1인 단독GitLab MR 리뷰봇 — TextRAG 엔진 재사용외부 LLM 금지 사내에서 MR 자동 리뷰 · iOS 7개 제품 · 1인 단독TextRAG 코드 리뷰 API코어 엔진 그대로 재사용GitLab MR 이벤트iOS 7개 제품 (Premium·Air…)리뷰봇 (FastAPI)MR 이벤트 → 리뷰 호출diff → 관련 코드 검색프로젝트별 코퍼스 매핑LLM 리뷰 생성버그·보안·성능·품질·정합성 5축MR 코멘트스트리밍 게시운영 안정성코퍼스 없는 프로젝트는 자동 skip임베더 과부하·LLM 재시작 → 재시도2026-04 2일 구현 · TextRAG 한 대로 검색+리뷰 공용 · 별도 DevOps 파이프라인 0

배경·과제

  • iOS 팀 코드 리뷰 가이드는 ‘24시간 이내 리뷰’를 원칙으로 했습니다. 하지만 릴리즈 시즌과 고객 이슈가 겹치면 리뷰 대기가 길어졌습니다.

  • 보안 회사 특성상 코드를 외부로 보낼 수 없어 외부 LLM API는 사용할 수 없었습니다. 대신 TextRAG에는 diff를 받아 관련 코드를 검색하고 LLM 리뷰를 생성하는 코드 리뷰 API가 이미 있었습니다. 이를 GitLab MR 워크플로우에 연결하는 조립 계층이 필요했습니다.

수행·기여

  • TextRAG의 RAG 코드 리뷰 API를 코어 엔진으로 재사용했습니다. GitLab MR 이벤트를 받아 리뷰를 호출해 MR 코멘트로 게시하는 리뷰봇을 Python(FastAPI)으로 구현했습니다.

  • 버그, 보안, 성능, 품질, 정합성 5축으로 리뷰를 구성했습니다. 관련 소스 근거를 먼저 제시하고, 리뷰 의견을 스트리밍으로 MR 코멘트에 게시했습니다.

  • 프로젝트별 코드베이스를 RAG 코퍼스에 매핑하고, 코퍼스가 없는 프로젝트는 자동으로 건너뛰게 설계했습니다.

  • 임베더 과부하나 LLM 재시작 같은 일시 장애에 대한 재시도 로직을 넣어 운영 안정성을 확보했습니다.

성과

  • iOS 팀 7개 제품 MR에 자동 리뷰 코멘트를 적용했습니다. ‘24시간 이내 리뷰’ 원칙을 자동 의견으로 보완했습니다.

  • TextRAG 서버 한 대로 사내 코드 검색과 RAG 리뷰를 함께 제공했습니다. 별도 DevOps 파이프라인 없이 운영 부담을 줄였습니다.

다음 단계

  • MR 단일 코멘트를 파일·라인 단위 인라인 코멘트로 정밀화할 예정입니다.

  • 대형 diff는 파일별로 쿼리를 분리할 계획입니다.

  • 5축 외에 사내 코드 명명·컨벤션 스타일을 프롬프트로 커스터마이징할 예정입니다.