피드로 돌아가기
When vector search isn't enough: hybrid graph+vector queries in VelesQL
Dev.toDev.to
Database

벡터 검색만으로는 함수와 문서 간 구조적 관계를 파악할 수 없어 VelesDB의 그래프+벡터 하이브리드 쿼리가 필요합니다

When vector search isn't enough: hybrid graph+vector queries in VelesQL

Julien L2026년 3월 30일12intermediate

Context

순수 벡터 검색은 텍스트의 의미적 유사성만 캡처하여 'auth handler에 대한 문서 찾기' 요청 시 관련 주제의 문서를 반환하지만, 실제 함수와 문서 간 연결고리를 놓친다. 코드베이스에서는 함수-DOCUMENTS-문서, 모듈-BELONGS_TO-함수, 함수-CALLS-함수 같은 관계가 답변의 핵심이 된다.

Technical Solution

  • VelesDB의 벡터 컬렉션으로 의미적 유사성 검색을 수행한다.
  • 그래프 컬렉션에 DOCUMENTS, BELONGS_TO, CALLS 관계를 정의하여 에지(edge)를 저장한다.
  • 벡터 검색으로 함수 ID를 찾은 후 그래프 순회로 DOCUMENTS 에지를 따라 문서를 탐색한다.
  • 벡터 유사도 점수(0.75 이상)와 관계 타입(scope: full, api, integration)을 함께 필터링한다.
  • 노드 순회 시 CALLS 관계의 context 속성으로 함수 호출 맥락을 확인한다.

Impact

노트북에서 전체 예제가 2초 이내 실행, 별도 Docker/API 키/클라우드 불필요

Key Takeaway

관계 기반 필터링이 필요하면 벡터+그래프 하이브리드를 적용해야 하며, 이는 GraphRAG 파이프라인 구축 시 필수적인 접근 방식이다.


코드베이스나 지식 그래프와 같이 구조적 관계가 중요한 환경에서 벡터 검색과 그래프 순회를 함께 적용하면 의미적 유사성과 함수-문서 연결고리를 동시에 활용할 수 있다

원문 읽기