프로젝트 소개

LightRAG는 지식 그래프를 기반으로 구축된 오픈소스 검색 증강 생성(RAG) 프레임워크로, Microsoft GraphRAG의 경량 대안으로 자리매김하고 있습니다. 그래프 구조화 인덱싱과 벡터 임베딩을 이중 계층 아키텍처로 결합하여, 기존의 청크 기반 벡터 RAG와 그래프 기반 RAG 사이를 연결하는 것을 목표로 합니다. README에 설명된 핵심 기능: - 엔티티 간 의미적 의존성을 포착하는 그래프 구조화 인덱싱으로, 청크 기반 검색의 단편화된 컨텍스트 문제를 극복하기 위한 것입니다. - 다섯 가지 쿼리 모드를 지원하는 이중 수준 검색: local(특정 엔티티 및 속성), global(거시 주제 및 문서 간 관계), hybrid(local + global), naive(텍스트 청크에 대한 단순 벡터 유사도), mix(local + global + naive, 기본값). - 증분 업데이트 및 선택적 삭제: 문서가 제거되면 시스템은 인덱싱 시 LLM 캐시를 사용하여 영향을 받은 엔티티와 관계를 재구축할 수 있습니다. - 다양한 문서 파싱 엔진: MinerU, Docling, 그리고 Word 및 Markdown 문서의 이미지, 표, 수식을 처리하는 네이티브 엔진, 추가로 spaCy 모델을 사용한 .docx 파일용 선택적 스마트 제목 감지 기능을 제공합니다. - 네 가지 텍스트 청크 전략: 고정 길이, 재귀 문자, 벡터 의미론, 문단 의미론. 마지막 전략은 청크 경계를 제목, 문단, 표에 맞춥니다. - 멀티모달 처리(v1.5+): 지식 그래프를 통해 이미지, 수식, 표를 본문 텍스트에 연결하며, PDF, 이미지, Office 문서, 표, 수식을 위한 RAG-Anything 통합을 제공합니다. - 네 가지 역할(EXTRACT, QUERY, KEYWORD, VLM)에 대한 역할별 LLM 구성으로, 각각 독립적으로 설정할 수 있습니다. - 로컬 파일 영속성을 갖춘 인메모리 기본값과 PostgreSQL, MongoDB, Neo4j, Milvus, OpenSearch 등을 포함한 스토리지 백엔드. 프로덕션에는 PostgreSQL이 권장됩니다. - 소스 귀속을 위한 인용 지원, 리랭커 지원, RAGAS 평가 통합, Langfuse 추적을 제공합니다. 배포 및 사용: - PyPI에서 lightrag-hku로 설치할 수 있으며 api 엑스트라를 포함하거나, uv 또는 pip를 사용하여 소스에서 설치할 수 있습니다. Makefile은 make dev 및 make env-base와 같은 타깃을 제공합니다. - Docker Compose 배포가 지원되며, 공식 GHCR 이미지는 Sigstore Cosign으로 서명됩니다. Docker Desktop 없이 Apple Silicon을 위한 Apple Container 설정 가이드도 제공됩니다. - 대화형 설정 마법사는 LLM, 임베딩, 리랭커, 스토리지, 서버, 인증, SSL 설정에 대한 .env 및 docker-compose.final.yml 구성을 생성합니다. - 서버는 웹 UI와 REST API를 제공합니다. README는 네트워크 노출 전에 인증(LIGHTRAG_API_KEY 또는 TOKEN_SECRET이 포함된 AUTH_ACCOUNTS)을 구성해야 하며, WHITELIST_PATHS가 설정되지 않으면 Ollama 호환 /api/* 경로가 기본적으로 열려 있다고 경고합니다. - 선택적 시스템 종속성으로는 네이티브 마크다운/textpack 파싱의 SVG 래스터화를 위한 libcairo와 docx 스마트 제목을 위한 spaCy 언어 모델이 있습니다. README의 모델 가이드에서는 추출에는 빠른 비추론(non-thinking) 모델, 쿼리 응답에는 더 강력한 모델, 키워드 추출에는 경량 비추론 모델, VLM 작업에는 멀티모달 모델을 권장합니다. 임베딩 모델은 인덱싱 전에 선택하고 일관성을 유지해야 하며, 로컬 배포에는 BAAI/bge-m3가 제안됩니다. 이 프로젝트는 arXiv 논문(2410.05779)과 연관되어 있으며 EMNLP 2025에 채택된 것으로 설명됩니다.