Graph RAG

Doyeon Kim·2025년 10월 24일

이 문서는 그래프 기반 RAG(Graph Retrieval-Augmented Generation) 모델의 개념, 구조, 주요 알고리즘, 및 다양한 검색 전략을 종합적으로 설명합니다.


🧠 1. Graph RAG의 핵심 개념

✅ 정의

Graph RAG는 기존의 RAG(Retrieval-Augmented Generation) 모델을 확장하여,
단순한 텍스트 검색이 아닌 그래프 구조화된 지식(knowledge graph) 를 활용해
더 정확하고 논리적인 답변을 생성하도록 설계된 프레임워크입니다.

  • 입력 질의 q와 그래프 G가 주어졌을 때:
    [
    a^* = \arg\max_a p(a | q, G)
    ]
    즉, 그래프 G에서 질의 q에 가장 관련된 하위 그래프 G*를 찾아,
    이를 기반으로 최적의 답변 a*를 생성합니다.

  • 구성요소:

    1. Graph Retriever: 관련 서브그래프 (G^*) 추출
    2. Answer Generator: 해당 그래프 정보를 이용해 답변 (a^*) 생성

🌐 2. 그래프 데이터 구조 (TAG: Text-Attributed Graph)

Graph RAG에서 사용하는 기본 데이터 구조는 Text-Attributed Graph(TAG) 입니다.

구성요소설명
V노드 집합 (예: 사람, 도시, 회사 등)
E엣지 집합 (예: 관계: LivesIn, WorksAt 등)
xᵥ노드의 텍스트 속성
eᵢⱼ엣지의 텍스트 속성
A인접 행렬 (Adjacency Matrix)

예를 들어:

  • 노드: “Alice” (Person), “New York” (City)
  • 엣지: (“LivesIn”, “since 2020”)
    이런 식으로 지식 그래프(Knowledge Graph) 로 표현됩니다.

⚙️ 3. Graph RAG의 주요 단계

1️⃣ 그래프 인덱싱 (Graph-Based Indexing)

  • 공개 지식 그래프(Wikidata, DBpedia 등)나 자체 구축 데이터(문서, 표, DB 등)로부터 그래프를 구성.

  • 인덱싱 방식:

    • Graph Indexing: 구조 기반
    • Text Indexing: 텍스트 변환 후 검색
    • Vector Indexing: 임베딩을 통한 k-NN 검색
    • Hybrid Indexing: 세 가지 방식을 결합.

📘 [15쪽 도표]: 데이터 소스(문서, 위키, 표 등) → 그래프 데이터베이스로 인덱싱되는 전체 과정을 시각적으로 설명.


2️⃣ 그래프 기반 검색 (Graph Retrieval, G-Retrieval)

자연어 질의 q가 주어지면, 가장 관련성 높은 노드, 트리플렛, 경로, 서브그래프를 찾아냅니다.

  • 목표 식:
    [
    G^* = \arg\max_{G⊆R(G)} \text{Sim}(q, G)
    ]

  • 검색 범위 R(G) 를 점진적으로 좁혀 효율 향상.

  • 검색 granularity(단위):

    • Nodes / Triplets / Paths / Subgraphs / Hybrid

📘 [16쪽 도식]: 질의 입력 → 검색 단계별 구조(확장, 파싱, GNN 기반 검색, 지식 병합 및 가지치기)가 시각화됨.


3️⃣ 그래프 기반 생성 (Graph-Enhanced Generation, G-Generation)

  • 검색된 그래프 (G^) 를 입력으로 하여, LLM이 답변 생성:
    [
    a^
    = \arg\maxa pϕ(a | q, G^*)
    ]
  • 그래프 데이터를 LLM이 처리할 수 있는 형태로 변환하는 함수 F(q, G*) 사용.

🧩 4. 검색기(Retriever)의 종류

유형설명장점단점
Non-parametric전통 그래프 탐색, PCST 알고리즘 등빠름정확도 낮음
LM-basedLLM (RoBERTa, GPT 등)을 이용해 서브그래프 탐색질의 해석력 높음연산비용 큼
GNN-basedGNN(Graph Neural Network)으로 노드 임베딩구조 이해력 높음학습비용 큼

📘 [19~23쪽]에서는 실제 예시로 “Justin Bieber의 형제는 누구인가?” 질의를 그래프에서 탐색하는 과정을 단계별로 도식화함.


🔁 5. 검색 패러다임 (Retrieval Paradigms)

유형특징장점단점
Once Retrieval한 번의 검색으로 결과 도출빠름깊은 추론 불가
Iterative Retrieval이전 결과 기반으로 반복 검색정확도 향상느림
Multi-Stage Retrieval서로 다른 검색기를 단계별로 결합효율성과 정확도 균형구조 복잡

적응형(Adaptive) 접근에서는 LLM이 언제 검색을 종료할지 판단함.


🕸️ 6. 검색 단위 (Retrieval Granularity)

단위설명
Nodes개별 엔티티 수준 검색
Triplets(주어-관계-목적어) 구조
Paths엔티티 간 관계 경로
Subgraphs주변 이웃을 포함한 전체 맥락
Hybrid상황에 따라 여러 단위 혼합

💡 7. 주요 통찰 (Discussion)

  • 효율성 vs 정확도:

    • 비매개(Non-parametric): 빠르지만 정밀도 낮음
    • LM/GNN 기반: 느리지만 의미적 정합성 우수
    • 혼합형(Hybrid): 둘의 장점을 결합해 최적화
  • 그래뉼러리티 선택작업(Task) 의 성격에 따라 달라짐:

    • 단순 질의 응답 → Nodes/Triplets
    • 복잡한 추론, 요약 → Subgraphs/Hybrid
  • Graph RAG의 장점:

    • 지식 간 연결 관계를 보존하여 “추론 가능한” LLM 응답 가능
    • 기존 텍스트 기반 RAG보다 문맥 일관성과 정확성이 향상됨

🧭 종합 요약

Graph RAG
텍스트 기반 RAG의 한계를 넘어,
그래프 구조의 지식 표현과 LLM의 추론 능력을 결합한 차세대 지식 기반 생성 모델입니다.

  • 지식 구조화 (TAG 기반)
  • 그래프 인덱싱 및 검색 (G-Retrieval)
  • 그래프 기반 생성 (G-Generation)
  • Retrieval Paradigm & Granularity 조정
    을 통해 효율성과 정확도의 균형을 달성합니다.

0개의 댓글