국소에서 전역으로, GraphRAG
이번 챕터는 Microsoft의 GraphRAG를 논문과 공식 문서로 따라갑니다. 첫 회차에서는 전역 질문에 답하기 위해 인덱싱 단계에서 무엇을 미리 만들어 두는지 전체 흐름을 봅니다.
이번 회차, 내 속도로.
기초를 더 짚거나 궁금한 주제로 잠깐 넓혀 보세요. 최대 3단계를 거쳐 DAY 86로 돌아옵니다.
난이도·관심 주제 고르기
1/2개 선택 · 새 보충·심화 수업과 본과정 다시 읽기를 선택할 수 있어요.
이렇게 다녀와요 1단계 · 약 12분
- 출발 · DAY 86GraphRAG 인덱싱 흐름
- 1. 관심 주제토큰 예산·선불 비용·질의 비용추가 35 · 새 추가 수업
- 복귀 · DAY 86원래 회차 이어가기
- 토큰 예산·선불 비용·질의 비용 · DAY 86에서 ‘비용은 인덱싱 때 먼저 낸다’고 했는데, 그 크기를 토큰으로 세어 보면 청크 크기·글리닝·커뮤니티 레벨 선택의 무게가 보입니다.
선택과 경로 기록은 이 브라우저에 저장됩니다. 본과정의 회차 완료와는 별도입니다.
핵심 개념
Edge et al.(2024) “From Local to Global”은 벡터 RAG가 “데이터셋의 주요 주제는?” 같은 전역 질문에 실패하는 이유를, 그것이 명시적 검색이 아니라 질의 중심 요약(QFS)이기 때문이라고 설명합니다. 기존 QFS 방법은 RAG가 다루는 분량의 텍스트로 확장되지 않습니다. GraphRAG는 둘을 결합해 LLM으로 그래프 인덱스를 두 단계로 만듭니다. 먼저 원문에서 엔티티 지식 그래프를 도출하고, 다음으로 밀접하게 연결된 엔티티 무리(커뮤니티)마다 요약을 미리 만들어 둡니다.
논문의 인덱싱 흐름은 원문 문서 → 텍스트 청크 → 엔티티·관계(선택적으로 주장) 추출 → 지식 그래프 → 그래프 커뮤니티 → 커뮤니티 요약입니다. 같은 엔티티가 여러 청크에서 추출되면 그 인스턴스들을 노드 하나로 합치고 설명을 요약하며, 같은 관계가 중복 추출된 횟수는 엣지 가중치가 됩니다. 커뮤니티는 계층 Leiden(DAY 24)으로 찾습니다. 서로 촘촘히 연결된 엔티티 무리가 곧 하나의 주제가 됩니다.
공식 문서는 같은 흐름의 산출물을 텍스트 단위(TextUnit), 엔티티(Entity), 관계(Relationship), 공변량(Covariate, 추출된 주장), 커뮤니티(Community), 커뮤니티 보고서(Community Report) 표로 부릅니다. 문서 기준 기본 청크 크기는 1200토큰이고, 주장 추출은 프롬프트 조정이 필요해 기본으로 꺼져 있습니다. 마지막에는 텍스트 단위·엔티티 설명·보고서 내용을 임베딩해 질의 단계에서 씁니다.
비용은 인덱싱 때 먼저 냅니다. 청크마다 추출 호출, 설명이 여러 개인 요소마다 요약 호출, 커뮤니티마다 보고서 호출이 필요합니다. 인스턴스를 노드·엣지로 합치는 일과 Leiden 커뮤니티 탐지는 LLM 없이 그래프 계산으로 돌아갑니다. 추출에서 빠진 엔티티는 그래프에도 보고서에도 없으므로 품질의 상한은 추출이 정합니다. 논문은 약 100만 토큰 규모 데이터셋 두 개로 평가했고, 다른 도메인으로의 일반화는 더 연구가 필요하다고 스스로 밝힙니다.
작은 예제로 따라가기
뉴스 6개 청크를 추출하면 LLM 호출 6회로 엔티티 9개와 관계 11개가 나왔다고 합시다(가상 값).
‘가람전자’가 세 청크에서 추출되어 설명이 3개면 요약 한 번으로 합치고, (가람전자–누리칩) 관계가 두 번 추출되면 엣지 가중치는 2입니다. 설명이 여러 개인 요소가 3개라면 요약 호출은 3회입니다.
Leiden이 엔티티를 ‘반도체 인수’와 ‘부산항 파업’ 커뮤니티 2개로 나누면 보고서 호출 2회가 더해져, 인덱싱 LLM 호출은 6+3+2=11회입니다.
직접 실험해 보기
6단계를 처음부터 하나씩 눌러 단계별 산출물을 확인하고, LLM 호출이 필요한 단계와 그래프 알고리즘만 쓰는 단계를 구분해 footer의 누적 호출 수를 기록하세요.
GraphRAG 인덱싱 6단계 따라가기
문서를 토큰 단위 청크(텍스트 단위)로 자른다. 실제 기본값은 1,200토큰·겹침 100. 여기선 기사 한 꼭지 = 1단위 → 6개.
이번에는 직접 풀어 보세요
정답을 보기 전에 계산과 이유를 적어 보세요. 해설과 비교하고 확인 표시를 남기면 완료할 수 있습니다.
힌트 보기
추출은 청크마다, 요약은 설명이 여러 개인 요소마다, 보고서는 커뮤니티마다 한 번으로 셉니다.
풀이와 비교하기
40+25+8=73회입니다. Leiden 커뮤니티 탐지는 그래프 알고리즘이라 LLM 호출을 더하지 않습니다. 다만 커뮤니티 수가 보고서 호출 수를 정하므로, 계층이 깊고 커뮤니티가 많을수록 보고서 비용이 늘어납니다. 임베딩 계산은 별도 비용입니다.
풀이와 확인 표시는 이 브라우저에 저장됩니다.
오늘 이해한 것과 다시 볼 것
계산이 달라진 이유, 헷갈린 개념, 다음에 확인할 질문을 남겨 보세요.
메모는 이 브라우저에 저장됩니다. 홈에서 전체 기록을 내려받을 수 있습니다.오늘의 이해 확인
GraphRAG 인덱싱 단계 가운데 LLM 호출 없이 그래프 알고리즘으로 수행되는 단계는?
완료 조건: 확인 퀴즈 정답 · / 직접 풀기 0/1
더 깊이 읽기
예제와 실험 데이터는 이 과정을 위해 만든 것입니다. 원문은 선택 자료이며, 강의와 직접 풀기만으로도 다음 회차를 이어갈 수 있습니다.
From Local to Global: A Graph RAG Approach to Query-Focused SummarizationEdge et al. (2024)GraphRAG DocumentationMicrosoftGraphRAG: Unlocking LLM discovery on narrative private dataMicrosoft Research (2024)From Louvain to Leiden: guaranteeing well-connected communitiesTraag, Waltman & van Eck (2019)이 자료는 개념 학습용입니다. 실제 데이터베이스·라이브러리·플랫폼의 동작과 설정은 제품과 버전마다 다를 수 있습니다.