AI Briefing

GraphRAG Toolkit으로 지식 그래프를 인덱싱하기

·2026.05.07 10:04

GraphRAG Toolkit이 문서를 문장·개체·사실로 추출해 지식 그래프와 벡터 인덱스를 구축한다.

GraphRAG Toolkit은 기존 RAG의 벡터 유사도 중심 검색 한계를 보완하기 위해 어휘 그래프(Lexical Graph) 를 구성한다. 핵심 컨텍스트 단위는 청크가 아니라 문장(Statement) 이며, 질문에 필요한 관련 문장 집합을 더 정밀하게 모으는 데 초점을 맞춘다.

그래프는 계보(Lineage), 요약(Summarization), 개체-관계(Entity-relationship) 의 3계층으로 나뉜다. Source와 Chunk로 원본 추적성을 유지하고, Topic과 Fact로 로컬·글로벌 연결성을 분리하며, Entity와 Relation으로 도메인 의미를 담는다. 과잉 연결은 맥락을 흐리고 과소 연결은 중요한 관계를 놓치게 하므로, 설계의 핵심은 연결성과 정교함의 균형이다.

인덱싱은 ExtractBuild 의 두 단계로 진행된다.

  • Extract: 문서를 LlamaIndex Reader로 불러온 뒤 MarkdownNodeParserSentenceSplitter로 청크를 나누고, 각 청크마다 두 번의 LLM 호출로 명제(Propositions)Topic·Entity·Fact 를 추출한다.
  • Build: 추출 결과를 그래프 저장소와 벡터 저장소에 반영해 검색 가능한 인덱스로 만든다.
  • 옵션: 통합 실행, 분리 실행, 그리고 대규모 데이터용 Amazon Bedrock 배치 추론을 선택할 수 있다.

추출 결과는 aws::graph::propositionsaws::graph::topics 메타데이터로 저장되며, LexicalGraphIndex, GraphStoreFactory, VectorStoreFactory, FileBasedDocs를 조합해 파이프라인을 구성한다. 구축이 끝나면 Notebook 시각화로 Source, Chunk, Topic, Entity, Fact, Statement 관계를 확인하고, 추론된 스키마까지 펼쳐 볼 수 있다.

쿼리 단계에서는 단순 키워드 매칭이 아니라 Traversal-based search 로 답을 찾는다. 예시에서는 r7i와 r8g 인스턴스군의 차이를 제품 사양, 세대 차이, 성능 지표의 연결 관계로 추적하며, 실습은 GitHub Workshop의 Indexing 노트북에서 바로 따라 할 수 있다.

이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.

요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.