피드로 돌아가기
Dev.toAI/ML
원문 읽기
Hybrid Graph RAG 도입을 통한 Context Precision 0.219 향상
RAG Series (16): Graph RAG — Using Knowledge Graphs to Solve Multi-Hop Reasoning
AI 요약
Context
Vector Search 기반의 RAG는 단순 유사도 기반 검색으로 인해 Multi-hop Reasoning이 필요한 관계형 질의 처리 과정에서 한계를 보임. 텍스트 청크 간의 암시적 관계를 LLM이 직접 추론해야 하므로 복잡한 엔티티 간 연결성 파악에 따른 정밀도 저하가 발생함.
Technical Solution
- Knowledge Graph 구축을 통한 엔티티 및 관계의 명시적 구조화로 단순 유사도 검색을 Graph Traversal 문제로 전환
- GLM-4-flash의 JSON 출력 불안정성을 해결하기 위해 Pipe-delimited(Entity A | relation | Entity B) 형식의 Custom Prompt 및 Parsing 전략 채택
- NetworkX DiGraph를 활용한 BFS 2-hop Traversal 설계로 질문 엔티티와 연관된 인접 노드 및 엣지 정보를 효율적으로 추출
- Graph Traversal의 Entity Boundary로 인한 누락 가능성을 보완하기 위해 Top-2 Vector Documents를 Fallback으로 결합한 Hybrid Retrieval 구조 설계
- LLMGraphTransformer의 엄격한 Pydantic 검증 대신 단순 문자열 분할 방식을 통한 파싱 성공률 및 결함 허용 범위 확대
실천 포인트
1. LLM의 구조화된 출력(JSON)이 불안정할 경우 구분자 기반의 단순 텍스트 포맷 검토
2. Multi-hop 추론 필요 시 단순 유사도 검색 대신 Knowledge Graph 기반의 BFS 탐색 도입
3. Graph RAG 적용 시 누락된 엔티티 대응을 위해 Vector Search를 Fallback으로 구성
4. 데이터셋 특성에 따라 Precision과 Recall의 Trade-off를 분석하여 Retrieval 전략 선택