infiniflow/ragflow
RAGFlow is a leading open-source Retrieval-Augmented Generation (RAG) engine that fuses cutting-edge RAG with Agent capabilities to create a superior context layer for LLMs
📚 RAGFlow란 무엇인가?
RAGFlow는 대규모 언어 모델(LLM) 위에 에이전트 계층을 추가하는 오픈소스 검색 증강 생성(RAG) 플랫폼입니다. PDF, Word, 스프레드시트, 이미지, 웹 페이지 등 모든 종류의 문서를 수집하여 검색 가능한 임베딩으로 변환하고, 가장 관련성 높은 청크를 검색하여 LLM이 이를 추론하도록 함으로써 질문에 답변할 수 있습니다. 또한 시스템은 다단계 '에이전트' 검색을 지원하여 모델이 복잡한 질의를 하위 질문으로 분해하고, 증거를 수집하며, 응답 전에 답변을 검증할 수 있습니다.
🚀 시작하기
- 클라우드 – https://cloud.ragflow.io에서 호스팅 서비스를 사용해 보세요.
- 로컬 – Docker로 배포(빠른 방법)하거나 소스에서 빌드(완전한 제어)할 수 있습니다. README에는 두 경로 모두에 대한 단계별 명령이 포함되어 있으며, 필수 하드웨어(예: 4 CPU / 16 GB RAM) 및 Docker-Compose 설정도 포함되어 있습니다.
✨ 핵심 기능
| 기능 | 설명 |
|---|---|
| 템플릿 기반 청킹 | 다양한 문서 유형에 대한 사전 설정 템플릿을 사용한 지능적이고 설명 가능한 청킹. |
| 지식 컴파일 | 원시 청크를 위키, 그래프, 마인드맵, 타임라인 또는 스킬 트리와 같은 상위 수준 아티팩트로 변환. |
| 에이전트 검색 | 다중 턴 검색 및 추론; 낮음, 중간, 높음, 울트라 사고 모드를 선택하여 깊이를 제어. |
| 근거 기반 인용 | 사용된 청크를 표시하여 환각을 줄이고 추적 가능한 참조를 제공. |
| 이기종 데이터 소스 | Word, PPT, Excel, PDF(스캔 포함), 이미지, 구조화 데이터, 웹 페이지 등을 처리. |
| 구성 가능한 모델 | 간단한 공급자 UI를 통해 모든 LLM, 임베딩 모델 또는 리랭커를 연결. |
| 확장 가능한 아키텍처 | Docker 또는 베어 메탈에서 실행할 수 있는 분리된 서비스(Admin, Ingestor, Syncer, API); MySQL, Elasticsearch 또는 내장 Infinity 엔진 지원. |
🏗️ 시스템 아키텍처(개괄)
- 프론트엔드 – React 웹 UI.
- API 서비스 – UI 및 SDK에서 사용하는 REST 엔드포인트.
- Ingestor – 문서를 파싱하고, OCR/레이아웃 분석(DeepDoc)을 실행하며, 임베딩을 생성.
- Syncer – 외부 소스(예: Google BigQuery, 사이트맵)에서 데이터를 주기적으로 가져옴.
- Admin – 데이터셋, 모델, 사용자 및 시스템 상태를 위한 관리 콘솔.
- 의존성 – MySQL, MinIO(객체 스토리지), NATS(메시징), KVROCKS(키-값 저장소), 선택적 Elasticsearch/Infinity(벡터 검색용).
📦 설치 빠른 참조
Docker(대부분의 사용자에게 권장)
git clone https://github.com/infiniflow/ragflow.git && cd ragflow/dockergit checkout v1.0.0-rc2docker compose up -d- 상태 확인:
curl -f http://localhost/api/v1/system/healthz - 브라우저에서
http://<host>를 열고 로그인합니다. - 모델 공급자 페이지에서 LLM, 임베딩 및 리랭커를 추가합니다.
소스에서 빌드(개발자용)
- Go 1.27, Clang 20, CMake ≥ 4, PCRE2, Node.js(UI용)를 설치합니다.
uv run tools/scripts/download_dev_deps.py를 실행하여 네이티브 라이브러리와 DeepDoc 모델을 가져옵니다../build.sh --all로 모든 서비스를 컴파일합니다.- 의존성 컨테이너를 시작합니다(
docker compose … es01 mysql minio nats kvrocks). - 마이그레이션 실행:
./bin/ragflow_server --migrate. - 각 서비스(
--admin,--ingestor,--syncer,--api)를 별도의 터미널에서 실행합니다. - (선택 사항) React UI의 경우
cd web && npm install && npm start.
🎯 일반적인 사용 사례
- 엔터프라이즈 지식 베이스 – 내부 문서, 매뉴얼 및 스프레드시트를 검색 가능한 AI 어시스턴트로 변환.
- 고객 지원 – 티켓에 응답할 때 정확한 정책 발췌문이나 문제 해결 단계를 검색.
- 연구 어시스턴트 – 학술 논문을 그래프나 타임라인으로 컴파일하고 에이전트가 종합 질문에 답변하도록 함.
- 데이터 기반 앱 – 구조화된 소스(BigQuery, 데이터베이스)와 비정형 파일을 결합하여 통합된 LLM 기반 분석 제공.
📚 문서 및 리소스
- 빠른 시작 및 구성: https://ragflow.io/docs/dev/
- 사용자 가이드, 개발자 가이드, FAQ 및 API 참조는 모두 동일한 사이트에서 호스팅됩니다.
- 릴리스 노트와 로드맵은 GitHub에서 공개적으로 제공됩니다.
🤝 커뮤니티 및 기여
- Discord: https://discord.gg/NjYzJD3GM3
- X (Twitter): https://x.com/infiniflowai
- Q&A를 위한 GitHub Discussions.
- 기여를 환영합니다. README에 링크된 기여 가이드를 참조하세요.
📄 라이선스
Apache-2.0 – 상업적 사용, 수정 및 배포를 허용하는 허용적 오픈소스 라이선스.
결론: RAGFlow는 내장된 에이전트 추론, 광범위한 데이터 소스 지원, 원시 문서를 구조화된 지식 아티팩트로 변환하는 도구를 갖춘 프로덕션 등급의 자체 호스팅 RAG 엔진을 제공합니다. 맞춤화 가능하고 확장 가능한 AI 증강 검색 및 답변 시스템이 필요한 개발자와 기업에 적합합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트