대규모 코드베이스에서 RAG(Retrieval-Augmented Generation)를 수행할 때, 코드의 구조적 관계를 파악하기 위해 AST(Abstract Syntax Tree) 기반 그래프를 활용하는 새로운 접근법이 제시되었어요.
이 방법은 코드 파일의 AST를 파싱하여 함수, 클래스, 인터페이스 등의 노드와 임포트, 호출 관계 등의 엣지로 구성된 그래프를 생성하고, BM25 알고리즘을 사용하여 노드를 검색해요.
실험 결과, 이 방식은 기존 방식보다 LLM 컨텍스트 토큰 사용량을 획기적으로 줄여, 10만 토큰에서 5천 토큰으로 감소시키는 효과를 보여줬어요.