최근 '그래파이(Graphify)'라는 새로운 오픈소스 도구가 개발자들 사이에서 주목받고 있습니다. 이 도구는 어떤 코드 폴더나 SQL 스키마라도 질의 가능한 지식 그래프(knowledge graph)로 변환해주는 기능을 제공합니다. 기존에는 개발자들이 코드베이스 내에서 특정 정보를 찾기 위해 파일들을 일일이 검색(grep)해야 했지만, 그래파이를 사용하면 AI 코딩 어시스턴트에서 자연어로 질문하여 필요한 정보를 얻을 수 있습니다. 이는 코드, 문서, PDF, 이미지, 심지어 비디오까지 포함한 프로젝트 전체를 하나의 연결된 지식 체계로 만들어줍니다.
그래파이의 핵심 기술은 '트리 시터(tree-sitter) AST'를 활용한 코드 파싱(parsing)에 있습니다. 이 방식은 LLM(대규모 언어모델)을 사용하지 않고 결정론적으로 코드를 분석하며, 모든 과정이 로컬 환경에서 이루어지기 때문에 민감한 코드 정보가 외부로 유출될 염려가 없습니다. 또한, 각 연결(edge)에는 '추출됨(EXTRACTED)' 또는 '추론됨(INFERRED)' 태그가 붙어 있어, 정보가 원본에서 직접 추출된 것인지 그래파이가 해석하여 연결한 것인지 명확히 알 수 있습니다. 벡터 인덱스나 임베딩(embedding) 방식이 아닌, 실제 그래프 구조를 통해 개념 간의 경로를 추적하고 설명하는 것이 특징입니다. 예를 들어, 특정 API 라우터의 소스, 커뮤니티, 연결된 구성 요소를 쉽게 파악하거나, 두 개념 사이의 최단 경로를 찾아낼 수 있습니다.
이러한 기능은 개발 생산성을 획기적으로 향상시킬 수 있습니다. 복잡한 대규모 프로젝트에서 새로운 개발자가 빠르게 코드베이스를 이해하거나, 기존 개발자가 특정 기능의 동작 원리나 의존성을 파악하는 데 큰 도움이 됩니다. 특히, 코드뿐만 아니라 주석, 문서, 심지어 디자인 파일까지 통합된 지식 그래프로 관리함으로써, 개발팀 전체의 협업 효율성을 높이고 기술 부채를 줄이는 데 기여할 수 있습니다. 로컬 환경에서 LLM 없이 작동한다는 점은 보안에 민감한 기업이나 개인 개발자에게도 매력적인 요소로 작용할 것입니다. 그래파이는 코드 분석을 넘어 프로젝트 전체의 지식 관리 패러다임을 변화시킬 잠재력을 가지고 있습니다.