본문으로 건너뛰기

© 2026 Molayo

GitHub요약2026. 06. 10. 08:50

YZ-Cai/SimGRAG

요약

ACL 2025에 채택된 SimGRAG는 지식 그래프(KG) 기반의 RAG 접근 방식으로, 유사 서브그래프를 활용해 질의응답 및 사실 검증 성능을 높입니다. LLM, 임베딩 모델, 벡터 DB를 플러그 앤 플레이 방식으로 결합하여 높은 유연성을 제공합니다.

핵심 포인트

  • ACL 2025 논문 기반의 KG-RAG 프레임워크
  • 유사 서브그래프를 활용한 지식 그래프 기반 검색 최적화
  • LLM, 임베딩, 벡터 DB의 플러그 앤 플레이 구성 지원
  • Llama 3, Nomic, Milvus 등 오픈소스 솔루션 활용

이곳은 ACL 2025 논문인 *"SimGRAG: Leveraging Similar Subgraphs for Knowledge Graphs Driven Retrieval-Augmented Generation"*를 위한 저장소입니다.
SimGRAG는 질의응답 (Question Answering) 및 사실 검증 (Fact Verification)과 같은 다양한 지식 그래프 (KG) 기반 작업을 지원할 수 있는 KG 기반 RAG (Retrieval-Augmented Generation) 접근 방식입니다.

SimGRAG는 다음 세 가지 구성 요소를 통해 플러그 앤 플레이 (Plug-and-play) 사용성을 지원합니다:

  • 거대 언어 모델 (Large Language Model): 생성을 위한 모델.
  • 임베딩 모델 (Embedding Model): 노드 (Node) 및 관계 (Relation) 임베딩을 위한 모델.
  • 벡터 데이터베이스 (Vector Database): 지식 그래프 내 노드와 관계의 임베딩을 저장하여 효율적인 유사도 검색 (Similarity Search)을 지원.

이 저장소는 다음 구성 요소들의 오픈 소스 솔루션을 기반으로 구축되었습니다:

  • Llama 3 70B 거대 언어 모델을 실행하기 위한 Ollama
  • 노드 및 관계 임베딩을 위한 Nomic 임베딩 모델
  • 벡터 데이터베이스를 위한 Milvus

사용자의 선호에 따라 구성 요소를 교체할 수 있으며, API만 준비하면 됩니다. 다음은 저희가 사용한 구성 요소들에 대한 준비 단계입니다.

Ollama 웹사이트를 방문하여 로컬 환경에 Ollama를 설치해 주세요. 설치 후, 다음 명령어를 사용하여 Llama 3 70B 모델을 실행할 수 있습니다:

ollama run llama3:70b

그 다음, 다음 명령어를 사용하여 SimGRAG에 필요한 서비스를 시작할 수 있습니다:

bash ollama_server.sh

다음 명령어를 통해 여기서 모델을 클론 (Clone)할 수 있습니다:

mkdir -p data/raw
cd data/raw
git clone https://huggingface.co/nomic-ai/nomic-embed-text-v1

Milvus 웹사이트를 방문하여 로컬 환경에 Milvus를 설치해 주세요. 설치 후, 해당 문서를 따라 SimGRAG에 필요한 서비스를 시작할 수 있습니다.

저장소에 있는 URL을 따라 MetaQA 데이터셋을 다운로드하여 data/raw 폴더에 넣어주세요.

저장소에 있는 URL을 따라 FactKG 데이터셋을 다운로드하여 data/raw 폴더에 넣어주세요.

준비가 완료되면 디렉토리는 다음과 같이 구성되어야 합니다:

SimGraphRAG
├── data
│ └── raw
...

설정 파일은 configs에서 찾을 수 있습니다.

폴더입니다. 필요에 따라 설정 파일(configuration files)을 수정할 수 있습니다.

MetaQA의 경우, 다음 명령어를 실행할 수 있습니다:

cd pipeline
python metaQA_index.py
python metaQA_query1hop.py
...

FactKG의 경우, 다음 명령어를 실행할 수 있습니다:

cd pipeline
python factKG_index.py
python factKG_query.py

결과는 설정 파일의 "output_filename"에 할당된 파일에서 확인할 수 있습니다. 예를 들어, "results/FactKG_query.txt"와 같습니다. 결과 파일의 각 줄은 딕셔너리(dictionary) 형태이며, 그중 "correct" 키는 최종 답변의 정답 여부를 나타냅니다.

이 프로젝트를 연구에 사용하신다면, 다음 논문을 인용해 주세요:

@inproceedings{simgrag2025,
title = "{SimGRAG}: Leveraging Similar Subgraphs for Knowledge Graphs Driven Retrieval-Augmented Generation",
author = "Cai, Yuzheng and
...

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub AI Tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0