본문 바로가기

인공지능

GitLab Knowledge Graph: 코드베이스를 이해하는 새로운 패러다임

728x90
반응형
728x170
 

개발자라면 누구나 한 번쯤은 이런 고민을 해본 적이 있을 겁니다.
“코드 구조가 너무 복잡해서 전체 맥락을 파악하기 힘들다.”
“AI 보조 도구를 써도 문맥을 이해 못하고 엉뚱한 답변을 내놓는다.”

이 문제를 해결하기 위해 GitLab은 새로운 기능을 내놓았습니다. 바로 **GitLab Knowledge Graph(GKG)**입니다. GitLab 18.3(2025년 8월 출시)에서 베타 버전으로 공개된 이 기능은 코드 저장소를 질의 가능한 그래프 데이터베이스로 변환해, 개발자가 코드 구조와 의존성을 쉽게 탐색하고 AI가 맥락 있는 도움을 줄 수 있도록 지원합니다.

이 글에서는 GitLab Knowledge Graph의 개념, 동작 방식, 주요 기능, 장점, 그리고 실제로 어떻게 활용할 수 있는지 살펴보겠습니다.

반응형

GitLab Knowledge Graph란 무엇인가

GitLab Knowledge Graph(GKG)는 단순히 코드 검색 기능을 강화한 도구가 아닙니다. 코드베이스 전체를 그래프 데이터베이스 형태로 재구성하여, 함수·변수·모듈 간의 관계를 AI가 이해할 수 있도록 돕는 프레임워크입니다.

즉, 코드 단편이 아니라 코드의 연결 구조까지 인식할 수 있도록 하여, 개발자가 코드 전반을 더 잘 이해하고 AI가 더 똑똑하게 지원할 수 있는 기반을 마련합니다.


어떻게 동작하는가

GKG는 여러 계층으로 작동하며 코드에서 의미 있는 정보를 추출하고 연결합니다.

1. 코드 그래프 인덱스

  • 저장소의 소스 코드를 분석하여 정의, 변수, 모듈 같은 엔티티와
  • 함수 호출, 상속 관계 같은 연결성을 추출합니다.
  • Rust로 작성되었으며, 백엔드에서는 Kuzu 그래프 데이터베이스를 활용합니다.

2. SDLC 그래프 인덱스

  • 코드 그래프 데이터를 **소프트웨어 개발 생명주기(SDLC)**의 다른 요소와 연결합니다.
  • 코드뿐만 아니라 프로젝트 전반에 대한 종합적인 뷰를 제공합니다.

3. AI 에이전트 계층

  • GitLab Duo 같은 AI 에이전트가 이 그래프를 활용해 코드 맥락을 이해합니다.
  • 단순한 코드 조각 제안이 아니라, 프로젝트 구조와 의존성을 반영한 답변을 제공합니다.

주요 기능과 활용 사례

실시간 코드 인텔리전스

GKG는 코드를 실시간으로 인덱싱합니다.
→ 개발자가 함수를 검색하면 단순 텍스트 매칭이 아니라 해당 함수가 어디서 호출되고, 어떤 모듈과 연결되는지까지 보여줍니다.

코드베이스 탐색

웹 인터페이스를 통해 코드 구조를 시각적으로 탐색할 수 있습니다.
→ 의존성 추적, 함수 호출 흐름 확인, 아키텍처 분석을 직관적으로 수행할 수 있습니다.

AI 보조 강화

AI 에이전트는 GKG의 그래프 데이터를 활용해 맥락 기반 지원을 제공합니다.
→ 예를 들어, 함수의 수정 요청을 받으면 단순히 해당 함수만 수정하는 것이 아니라 관련된 의존성을 함께 고려하여 제안할 수 있습니다.

IDE 및 GitLab 확장 연동

처음에는 IDE 환경을 염두에 두고 설계되었으며,
→ GitLab Workflow 확장 같은 도구와 연동하여 코드 탐색 및 분석 기능을 IDE 내부에서도 활용할 수 있습니다.


GitLab Knowledge Graph의 장점

  • 코드 이해도 향상: 코드와 의존성을 전체적으로 파악할 수 있어 유지보수와 협업에 유리합니다.
  • 개발 생산성 증대: 실시간 코드 인텔리전스와 시각적 탐색 기능으로 검색 시간을 줄입니다.
  • AI 정확성 개선: AI가 코드 맥락을 인식하므로 더 정교한 지원이 가능합니다.
  • 확장성: SDLC 전반과 연결 가능해 프로젝트 관리에도 도움을 줍니다.

사용 가능 여부

GitLab Knowledge Graph는 GitLab 18.3(2025년 8월)에서 베타 버전으로 공개되었습니다.

  • GitLab.com 사용자뿐 아니라
  • Self-Managed 및 Dedicated 환경에서도 사용할 수 있습니다.
  • 요금제는 Free, Premium, Ultimate 모두 지원합니다.

728x90

GitLab Knowledge Graph는 단순히 새로운 기능이 아니라, 개발자가 코드와 소통하는 방식을 바꾸는 중요한 전환점이 될 수 있습니다.

과거에는 코드 검색과 이해가 텍스트 기반에 머물렀다면, 앞으로는 관계와 맥락 기반 탐색으로 발전합니다. 또한 AI 보조 기능이 점점 더 강력해지면서, 개발자는 반복적인 검색이나 탐색 대신 창의적인 문제 해결에 집중할 수 있을 것입니다.

결국 GKG는 복잡한 코드베이스 속에서 길을 잃지 않게 해주는 나침반 역할을 하며, 앞으로의 개발 환경을 한 단계 더 진화시킬 핵심 기술로 기대됩니다.

https://gitlab-org.gitlab.io/rust/knowledge-graph/

 

GitLab Knowledge Graph

Create structured, queryable representations of code repositories to power AI features and enhance developer productivity.

gitlab-org.gitlab.io

728x90
반응형
그리드형