Files
2nd/10_Wiki/Topics/Topics_Rag/GraphRAG.md
T

122 lines
9.5 KiB
Markdown

---
id: graphrag
title: "GraphRAG"
category: "AI_and_ML"
status: "draft"
verification_status: "conceptual"
canonical_id: ""
aliases: ["그래프 RAG", "지식 그래프 기반 RAG", "Knowledge Graph RAG", "Entity-Relationship RAG", "계층적 요약 RAG", "MS GraphRAG"]
duplicate_of: ""
source_trust_level: "A"
confidence_score: 0.94
created_at: 2026-06-08
updated_at: 2026-06-08
review_reason: ""
merge_history: []
tags: ["research", "GraphRAG", "Knowledge Graph", "LLM", "Index Optimization"]
raw_sources: ["RAG의 진화: GraphRAG, Agentic RAG, CRAG의 등장 - CSLEE Tech Blog %", "1. RAG 파이프라인 기초 아키텍처", "[Tech Series] kt cloud AI 검색 증강 생성(RAG) #2 : 데이터 파싱과 전처리 최적화"]
applied_in: ["Microsoft Research GraphRAG Open Source (2024.07)", "GraphRAG 1.0 (LanceDB 및 Azure AI Search 통합)", "입찰 문서 분석 시스템 구축 사례"]
github_commit: ""
---
# [[GraphRAG]]
## 🎯 한 줄 통찰 (One-line insight)
GraphRAG는 문서를 조각난 벡터가 아닌 상호 연결된 지식 그래프로 구조화하여, 파편화된 정보 간의 연결 관계 추론과 데이터셋 전체에 대한 거시적 요약을 가능하게 하는 차세대 지식 통합 프레임워크이다 [S276, S277].
## 🧠 핵심 개념 (Core concepts)
- **개체 및 관계 추출 (Entity & Relationship Extraction):** 문서 내에서 인물, 장소, 조직 등 핵심 개체와 이들 사이의 연관성을 식별하여 그래프 노드와 엣지로 변환하는 프로세스이다 [S277].
- **커뮤니티 탐지 및 요약 (Community Detection):** 그래프 알고리즘을 통해 밀접하게 연관된 개체들을 클러스터링하고, LLM을 사용하여 각 커뮤니티의 의미적 요약본을 생성하는 기술이다 [S277].
- **계층적 인덱싱 (Hierarchical Indexing):** 원본 텍스트를 TextUnit 단위로 분할한 뒤, 미시적 개체부터 거시적 커뮤니티까지 다층적 지식 구조를 미리 구축하는 방식이다 [S277].
- **로컬 및 글로벌 검색 (Local & Global Search):** 특정 개체 중심의 구체적 질문(Local)과 전체 데이터셋의 트렌드를 묻는 포괄적 질문(Global)을 구분하여 최적의 경로로 답변을 생성한다 [S278].
## 🧩 추출된 패턴 (Extracted patterns)
- **Pre-indexing Heavy Pattern:** 생성 시점의 연산 부하를 줄이기 위해 인덱싱 단계에서 LLM을 대량 호출하여 지식의 의미 구조를 미리 완성해두는 패턴이다 [S277, S279].
- **Connect-the-Dots Inference:** 여러 문서에 흩어진 정보를 지식 그래프의 연결 고리(Relationship)를 따라 추적함으로써 복합적인 질문에 대응하는 추론 패턴이다 [S277, S278].
- **Contextual Aggregation:** 하위 커뮤니티 요약을 상위 계층으로 종합하여 데이터셋 전체의 '주요 주제'를 파악하는 요약 패턴이다 [S277, S278].
## 📖 세부 내용 (Details)
### 1. GraphRAG의 배경 및 정의 [S275, S276]
전통적인 Naive RAG는 문서를 독립적인 조각으로 취급하여 벡터 유사도 검색을 수행하므로, "이 데이터셋의 전체적인 주제는 무엇인가?"와 같은 글로벌 질문에 제대로 답변하지 못하는 한계가 있다. GraphRAG는 마이크로소프트 리서치(Microsoft Research)가 2024년 발표한 기술로, 지식 그래프(Knowledge Graph)를 도입하여 정보 간의 맥락적 연결을 복원함으로써 이러한 한계를 극복한다.
### 2. 작동 메커니즘: 인덱싱과 쿼리 [S277, S278]
1. **인덱싱 단계:**
* **개체/관계 추출:** LLM이 문서에서 개체(Entity)와 그들 사이의 관계(Relationship)를 식별한다.
* **클레임 추출:** 중요한 주장이나 사실 정보(Claim)를 별도로 추출하여 그래프에 보강한다.
* **커뮤니티 요약:** 그래프 알고리즘으로 개체들을 그룹화하고, 계층별 커뮤니티 요약문을 생성하여 저장한다.
2. **쿼리 단계:**
* **로컬 검색:** 특정 개체와 직접 연결된 주변 관계와 관련 문서를 탐색하여 상세 정보를 제공한다.
* **글로벌 검색:** 사전 구축된 계층적 커뮤니티 요약을 활용하여 전체적 관점에서 정보를 종합하며, 기존 RAG 대비 압도적인 토큰 효율성(2~3% 수준)을 보인다.
### 3. 강점 및 벤치마크 결과 [S278]
전통적 RAG 대비 포괄성(Comprehensiveness)과 다양성(Diversity) 측면에서 70~80% 이상의 높은 승률을 보이며, 특히 복잡한 정보 결합이 필요한 "점을 연결해야 하는" 질문에서 탁월한 성능을 발휘한다.
## ⚖️ 모순 및 업데이트 (Contradictions & updates)
- **비용 vs 효율:** 글로벌 쿼리 시 토큰 효율성은 매우 높으나, 인덱싱 과정에서 모든 문서에 대해 LLM을 수회 호출해야 하므로 초기 구축 비용이 상당히 높다는 경고가 명시되어 있다 [S279].
- **벡터 스토어 통합:** 초기에는 지식 그래프 위주였으나, v1.0 이후 LanceDB 및 Azure AI Search와 통합되어 벡터 검색의 장점도 함께 활용하는 구조로 업데이트되었다 [S279].
## 🛠️ 적용 사례 (Applied in summary)
- **입찰 문서 분석:** 신규 공고와 과거 사업 간의 유사성 및 특정 회사의 수주 관계를 파악하기 위해 GraphRAG를 구축하여 경쟁 전략 수립에 활용한 사례가 있다 [S274, S281].
- **MS GraphRAG 1.0:** 2024년 12월 데이터 모델 단순화 및 정식 출시를 통해 기업용 엔터프라이즈 환경에 적용 가능한 라이브러리 형태로 배포되었다 [S279].
## ✅ 검증 상태 및 신뢰도
- **상태:** draft
- **검증 단계:** conceptual (실무 사례 및 MS 오픈소스 리포지토리 근거)
- **출처 신뢰도:** A (Microsoft Research 공식 발표 및 최신 기술 동향 블로그 기반)
- **신뢰 점수:** 0.94
- **중복 검사 결과:** 신규 생성 (New discovery)
## 🔗 관련 문서 링크 (Related document links)
### 상위/유사 개념
#### [아키텍처/기반 기술]
- [[RAG 아키텍처 및 파이프라인 기초]]
- 연결 이유: GraphRAG는 기초 RAG의 검색 한계를 극복하기 위해 설계된 진화된 아키텍처임 [S276].
- [[데이터 인덱싱 및 오케스트레이션]]
- 연결 이유: 그래프 기반의 복잡한 인덱스 구조를 설계하고 관리하는 핵심 단계임 [S220, S277].
#### [상호 보완 기술]
- [[Agentic RAG]]
- 연결 이유: 에이전트가 복합 질문을 해결하기 위한 도구(Tool)로서 그래프 검색을 활용함 [S281].
- [[Advanced RAG 기법]]
- 연결 이유: 질의 변환이나 Re-ranking 기법이 그래프 경로 탐색과 결합되어 성능을 보강함 [S10, S280].
### 심층 후속 질문 (Deeper Research Questions)
- 인덱싱 비용 절감을 위해 GPT-4 대신 경량화된 sLLM을 활용하여 개체와 관계를 추출할 때의 정확도 하락 폭은 어느 정도인가? [S279, S284]
- 동적인 데이터 환경에서 지식 그래프의 노드와 엣지를 실시간으로 업데이트(Incremental Indexing)하는 최적의 방법은 무엇인가? [S279, S333]
- 그래프 상의 관계 밀도(Density)에 따라 커뮤니티 요약의 품질이 어떻게 변하며, 이를 제어하는 파라미터 튜닝 방법은? [S277, S279]
- 멀티모달 데이터를 포함하는 그래프 인덱스를 구축할 때, 이미지 개체와 텍스트 개체 간의 관계 정의 표준은 무엇인가? [S284, S313]
### 실무 적용 맥락 (Practical Application Contexts)
- **Implementation:** Microsoft의 GraphRAG Python 라이브러리를 활용하여 인덱싱 파이프라인 구축 [S279].
- **System Design:** Azure AI Search를 백엔드로 사용하여 엔터프라이즈급 검색 인프라와 통합 설계 [S279].
- **Operation:** 도메인별(법률, 의료 등)로 최적화된 개체 추출 프롬프트를 정기적으로 튜닝하고 감사 [S279, S407].
- **Learning Path:** Naive RAG 구축 → 지식 그래프 개념 학습 → 로컬/글로벌 검색 차이 실습 → GraphRAG 튜닝 [S275, S285].
### 인접 주변 주제
- [[지식 그래프]] (Knowledge Graph)
- 확장 방향: 비정형 데이터로부터 구조화된 지식 베이스를 구축하는 원리와 알고리즘 심화 이해 [S276].
## 🔗 지식 그래프 (Knowledge Graph)
- **상위/루트:** [[RAG 아키텍처 및 파이프라인 기초]]
- **관련 개념:** [[계층적 커뮤니티 요약]], [[로컬 및 글로벌 검색]], [[개체 및 관계 추출]], [[Azure AI Search]]
- **참조 맥락:** 복합적인 정보 연결이 필요한 기업용 지식 분석 및 전략 제안 시스템 설계 시 필수 참조.
## 📚 출처 (Sources)
- [S10] Advanced RAG의 주요 기법 및 질의 변환 (devspoon)
- [S193] 하이브리드 검색의 결합 방식 (CC, RRF) (hjjummy)
- [S220] 데이터 인덱싱 및 오케스트레이션 도구 (교보DTS)
- [S274] 전통적 RAG의 한계와 비즈니스 사례 (CSLEE)
- [S276] GraphRAG의 정의 및 MS Research 배경 (CSLEE)
- [S277] GraphRAG 인덱싱 단계 및 작동 원리 (CSLEE)
- [S278] GraphRAG 쿼리 방식(Local/Global) 및 성능 우위 (CSLEE)
- [S279] GraphRAG 실무 고려사항 및 인프라 통합 (CSLEE)
- [S281] Agentic RAG와의 연동 사례 (CSLEE)
- [S313] 비정형 데이터 파싱 및 메타데이터 연결 (kt cloud)
- [S327] Microsoft GraphRAG 연구의 출처 추적 (kt cloud)
- [S407] 모델 출력 감사 및 정책 위반 감지 (알체라)
## 📝 변경 이력 (Change history)
- 2026-06-08: Initial draft generated via Datacollector_MAC P-Reinforce engine.