피드로 돌아가기
Building Your Own "Google Maps for Codebases": A Guide to Codebase Q&A with AI
Dev.toDev.to
AI/ML

Tree-sitter와 RAG 기반의 코드베이스 시맨틱 검색 시스템 구축

Building Your Own "Google Maps for Codebases": A Guide to Codebase Q&A with AI

Midas1262026년 4월 12일8intermediate

Context

대규모 코드베이스 내 특정 로직 탐색 시 기존 grep 및 IDE 검색의 낮은 문맥 이해도로 인한 생산성 저하 발생. 소스 코드의 구조적 특성을 무시한 단순 텍스트 검색은 분석 효율성을 떨어뜨리는 병목 지점으로 작용.

Technical Solution

  • Tree-sitter 기반의 AST Parsing을 통한 함수 및 클래스 단위의 의미론적 Chunking 수행
  • SentenceTransformers 모델을 활용하여 코드 조각을 고차원 Vector Embedding으로 변환
  • ChromaDB Vector Store 도입을 통한 유사도 기반의 고속 Retrieval 구조 설계
  • Retrieval-Augmented Generation(RAG) 패턴 적용으로 LLM의 Hallucination 억제 및 근거 기반 답변 생성
  • Groq API의 Llama 3 모델을 활용하여 인덱싱된 코드 컨텍스트 기반의 최종 답변 합성

- 코드 분석 도구 설계 시 단순 줄 바꿈이 아닌 AST 기반의 구조적 파싱 적용 검토 - 도메인 특화 임베딩 모델 선택을 통한 코드 시맨틱 검색 정확도 향상 추진 - LLM 컨텍스트 윈도우 최적화를 위한 Top-k Retrieval 전략 수립 및 검증 - 정적 분석 도구와 Vector DB를 결합한 하이브리드 검색 아키텍처 고려

원문 읽기