RAG와 Vector DB로 개발 생산성 UP!
by DD
7개월 전
조회수 12
RAG 기술과 Vector DB를 활용하여 팀의 코딩 스타일을 학습하는 AI를 개발함
ts-morph를 사용하여 TypeScript AST를 분석, 정확한 청킹 전략을 수립함
Diffy 자동 코드 리뷰 시스템과 @pwb/testgen 테스트 코드 자동 생성 패키지 개발, 생산성 향상에 기여
RAG 시스템 아키텍처 심층 분석
RAG(Retrieval-Augmented Generation)은 LLM에 관련 정보를 함께 제공하는 방식이다. Vector Embedding을 통해 코드 조각을 벡터로 변환하고, 유사도 검색을 수행하여 관련 코드를 찾는다. 따라서 팀 코드베이스를 효과적으로 학습시켜 코드 리뷰 자동화를 가능하게 한다.
청킹 전략: ts-morph vs. 다른 방법
청킹은 Vector DB 구축의 핵심 단계이며, 코드의 의미를 보존하는 것이 중요하다. ts-morph를 사용하여 AST 분석 기반의 청킹을 수행하여 정확도를 높였다. 정규표현식이나 토큰 단위 청킹 방식은 부정확하며, Langchain의 텍스트 스플리터는 성능 저하를 야기한다.
생산성 향상을 위한 실전 적용 가이드
GitLab CI/CD 파이프라인을 활용하여 자동 업데이트 파이프라인을 구축한다. Diffy와 @pwb/testgen을 통해 코드 리뷰 자동화 및 테스트 코드 생성을 구현한다. Gemini embedding 모델과 배치 처리를 통해 성능 최적화를 달성하고, 개발 생산성을 향상시킨다.
댓글 0
첫 번째 댓글을 남겨보세요!