automataIA/graphrag-rs

GraphRAG-rs is a high-performance, state-of-the-art Rust implementation of GraphRAG (Graph-based Retrieval Augmented Generation) that builds knowledge graphs from documents and enables natural language querying with configurable entity extraction and local LLM integration

What it solves

GraphRAG-rs는 그래프 기반 Retrieval Augmented Generation을 고성능 Rust로 구현한 프로젝트입니다. 비구조화된 문서에서 지식 그래프를 구축하고 자연어로 질의할 수 있게 하여, 전통적인 RAG가 갖는 한계를 그래프 구조를 활용해 엔터티 간 관계와 개념적 연결을 보다 잘 포착하도록 합니다.

How it works

이 프로젝트는 7단계 파이프라인을 구현합니다: 인덱싱(청킹, 엔터티 추출, 관계 추출, 그래프 구축)과 질의(임베딩, 검색, 답변 생성). 세 가지 배포 아키텍처를 지원합니다. 기존 서버 전용 설정, WebGPU와 ONNX Runtime Web을 이용한 100% 클라이언트‑사이드 WASM 구현, 그리고 향후 계획 중인 하이브리드 방식입니다. 검색 품질 향상을 위해 LightRAG 이중 레벨 검색, Leiden 커뮤니티 탐지, HippoRAG 개인화 PageRank와 같은 연구 기반 기술을 통합했습니다.

Who it’s for

프라이버시 우선 애플리케이션, 오프라인 도구, 혹은 복잡하고 상호 연결된 데이터를 고성능으로 인덱싱·검색해야 하는 확장 가능한 엔터프라이즈 RAG 시스템을 구축하는 개발자를 위해 설계되었습니다.

Highlights

  • Flexible Deployment: Supports Server-Only, WASM-Only (browser-based), and Hybrid architectures.
  • Research-Driven: Implements state-of-the-art techniques like Symbolic Anchoring, Causal Chain Analysis, and Cross-Encoder Reranking.
  • Hardware Acceleration: GPU acceleration via WebGPU and support for local LLMs via Ollama.
  • Extensible Chunking: Includes trait-based strategies, including hierarchical chunking and Tree-sitter AST chunking for code.
  • Broad Provider Support: Compatible with 8 different embedding providers including OpenAI, HuggingFace, and Cohere.