Home
Login

RAG 기술 기반의 오픈 소스 문서 지능형 질의응답 도구로, 문서와 대화형 상호 작용을 지원합니다.

Apache-2.0Python 22.5kCinnamon Last Updated: 2025-06-11

Kotaemon - 오픈 소스 RAG 문서 지능형 질의응답 도구

프로젝트 개요

Kotaemon은 문서와 대화형으로 상호 작용하기 위해 특별히 설계된 오픈 소스 RAG(검색 증강 생성) 도구입니다. 이 프로젝트는 최종 사용자와 개발자에게 문서에 대한 질의응답 요구를 충족하고 개발자가 자체 RAG 파이프라인을 구축하는 데 도움이 되는 완전한 기능을 갖춘 RAG 사용자 인터페이스를 제공하는 것을 목표로 합니다.

핵심 기능

최종 사용자 기능

  • 간결하고 아름다운 UI 인터페이스: 사용자 친화적인 RAG 질의응답 인터페이스 제공
  • 다양한 LLM 지원: 다양한 LLM API 제공업체(OpenAI, AzureOpenAI, Cohere 등) 및 로컬 LLM(ollama 및 llama-cpp-python을 통해)과 호환
  • 간편한 설치: 간단한 스크립트를 통해 빠른 시작 제공
  • 다중 사용자 지원: 다중 사용자 로그인을 지원하며, 개인/공용 문서 컬렉션을 생성하고 협업 및 공유 지원

개발자 기능

  • RAG 파이프라인 프레임워크: RAG 문서 질의응답 파이프라인을 구축하는 도구 제공
  • 맞춤형 UI: Gradio를 기반으로 구축되어 RAG 파이프라인의 실제 효과 확인 가능
  • 혼합 RAG 파이프라인: 혼합(전체 텍스트 및 벡터) 검색기와 재정렬을 채택하여 최적의 검색 품질 보장
  • 확장성: 사용자 정의 UI 요소와 다양한 문서 인덱싱 및 검색 전략 지원

고급 기능

  • 다중 모달 질의응답 지원: 차트와 표를 포함하는 다중 문서 질의응답 지원, 다중 모달 문서 분석 지원
  • 고급 인용 기능: LLM 답변의 정확성을 보장하기 위해 자세한 인용 정보 제공, 브라우저 PDF 뷰어에서 강조 표시된 인용 내용 직접 확인 가능
  • 복잡한 추론 방법: 복잡한/다단계 질문에 답변하기 위해 문제 분해 지원, ReAct, ReWOO 등과 같은 에이전트 기반 추론 지원
  • 구성 가능한 설정 인터페이스: UI에서 검색 및 생성 프로세스의 중요한 측면(프롬프트 포함) 조정 가능

기술 아키텍처

지원되는 문서 형식

  • PDF, HTML, MHTML, XLSX
  • Unstructured 라이브러리를 통해 더 많은 형식 지원(.doc, .docx 등)

데이터 저장 옵션

  • 문서 저장: Elasticsearch, LanceDB, SimpleFileDocumentStore
  • 벡터 저장: ChromaDB, LanceDB, InMemory, Milvus, Qdrant

LLM 모델 지원

  • API 제공업체: OpenAI, Azure OpenAI, Cohere, Groq 등
  • 로컬 모델: Ollama 및 llama-cpp-python을 통해 GGUF 형식 모델 지원

GraphRAG 통합

프로젝트는 두 가지 GraphRAG 구현을 지원합니다.

NanoGraphRAG (권장)

  • Kotaemon과 더 직접적인 통합
  • 기본 LLM 및 임베딩 모델 자동 식별

MS GraphRAG

  • 공식 Microsoft GraphRAG 구현
  • OpenAI 또는 Ollama API만 지원
  • 로컬 모델 및 사용자 정의 설정 지원

설치 및 배포

Docker 배포 (권장)

경량 버전과 전체 버전의 Docker 이미지 제공:

  • 경량 버전: 기본 파일 형식 지원, 이미지 크기 작음
  • 전체 버전: unstructured 패키지 포함, 더 많은 파일 형식 지원

로컬 설치

  1. 최신 버전의 릴리스 파일 다운로드
  2. .env 파일 구성
  3. python app.py를 실행하여 서비스 시작
  4. 기본 사용자 이름과 비밀번호는 모두 admin

사용자 정의 및 확장

사용자 정의 추론 파이프라인

  • libs/ktem/ktem/reasoning/에 새로운 .py 구현 추가 가능
  • flowsettings를 통해 새로운 추론 파이프라인 활성화

사용자 정의 인덱스 파이프라인

  • libs/ktem/ktem/index/file/graph의 예제 구현 참조
  • GraphRAG 인덱스 파이프라인 지원

구성 파일

  • flowsettings.py: 애플리케이션 구성
  • .env: 모델 및 자격 증명 구성

응용 시나리오

  1. 기업 지식 관리: 내부 문서 질의응답 시스템 구축
  2. 학술 연구: 연구 문헌에 대한 지능형 질의응답
  3. 법률 문서 분석: 법률 문서의 빠른 검색 및 분석
  4. 기술 문서 지원: 사용자에게 기술 문서 지능형 쿼리 제공
  5. 개인 지식 베이스: 개인 문서 컬렉션 관리 및 쿼리

프로젝트 장점

  • 오픈 소스 무료: 완전한 오픈 소스로 자유롭게 사용 및 수정 가능
  • 기능 완전: 간단한 질의응답부터 복잡한 추론까지, 기능 범위 포괄적
  • 사용 용이: 직관적인 웹 인터페이스로 기술 배경 없이 사용 가능
  • 높은 사용자 정의: 다양한 구성 및 확장 옵션 지원
  • 활발한 커뮤니티: 지속적인 업데이트 및 커뮤니티 지원

기술 특징

  • Python 기반 개발
  • Gradio를 사용하여 웹 인터페이스 구축
  • Docker 컨테이너화 배포 지원
  • 모듈식 아키텍처 설계
  • GPU 가속 지원 (로컬 모델)

요약

Kotaemon은 사용자가 대화 방식으로 문서와 상호 작용할 수 있도록 하는 강력한 RAG UI 도구입니다. 최종 사용자에게 간단하고 사용하기 쉬운 문서 질의응답 인터페이스를 제공할 뿐만 아니라 개발자에게 사용자 정의 RAG 시스템을 구축하기 위한 완전한 프레임워크를 제공합니다. 혼합 검색, 다중 모달 지원, 고급 인용 등의 기능을 통해 Kotaemon은 문서 지능형 질의응답 분야에서 포괄적이고 전문적인 솔루션을 제공합니다.