Oqura-ai/deepdoc
Deep research tool for local knowledge base.
deepdoc – 로컬에서 작동하는 심층 리서치 보고서 생성기
기능 설명
- 로컬 문서 폴더(PDF, DOCX, PPTX, 이미지, TXT, Markdown)를 입력으로 받아 Qdrant로 검색 가능한 벡터 인덱스를 생성합니다.
- 보고서 주제와 개요를 지정할 수 있습니다. 플래너 LLM이 섹션 구조를 생성하며, 편집이 가능합니다.
- 각 섹션마다 리서치 에이전트 가 다음 단계를 수행합니다:
- 집중적인 쿼리를 생성합니다.
- Qdrant에서 후보 청크를 검색합니다.
- TypeSafe의 Jev 모델을 사용해 관련성, 증거 품질, 모순, 프롬프트 인젝션 가능성을 점수 매깁니다.
- 청크를 필터링/재순위하고, 각 하위 섹션에 충분한 증거가 있는지 확인합니다. 부족할 경우 설정 가능한 반사 제한까지 새로운 쿼리를 발행합니다.
- 검증된 증거를 글쓰기용 LLM에 전달하여 해당 섹션의 최종 Markdown을 생성합니다.
- 모든 섹션은 하나의 Markdown 보고서로 통합되어
output_folder에 저장됩니다.
주요 구성 요소
- Qdrant – 빠른 유사성 검색을 위한 로컬 벡터 데이터베이스.
- Jev (TypeSafe) – 타입화된 확률을 반환하는 분류기. 고품질 증거만 작가에게 전달되도록 게이트키퍼 역할을 합니다.
- LLM – 기본은 OpenAI
gpt-4o-mini이지만, 설정을 통해 교체 가능(예: Mistral, Anthropic). - Python 3.10+ – 파이프라인을 조율하며, 설정은
configuration.py에 저장됩니다. - uv – 가벼운 가상환경 및 종속성 관리 도구.
왜 중요한가
- 모든 데이터를 로컬에 보관하므로 기밀 문서가 자신의 기계를 벗어나지 않습니다.
- 원시 벡터 검색 결과에 Jev를 통한 검증 레이어를 추가하여 환각을 줄이고 인용 품질을 향상시킵니다.
- 완전히 구성 가능: 검색 크기, 동시성, Jev 임계값, 재시도 제한 등을 하드웨어 또는 API 할당량에 맞게 조정할 수 있습니다.
일반적인 워크플로우
uv설치, 리포지토리 클론, 가상 환경 생성 및 활성화..env.example→.env로 복사하고 OpenAI 및 TypeSafe API 키를 추가합니다.- Docker로 Qdrant 실행 (
docker-compose up --build). python main.py실행, CLI 프롬프트(주제, 개요, 문서 폴더)에 응답합니다.- 생성된 개요를 검토하고 승인 또는 편집한 후, 에이전트가 리서치 및 작성하도록 합니다.
output_folder에서 완성된 Markdown 보고서를 가져옵니다.
누구에게 적합한가
- 기밀 문서 컬렉션에 대한 빠르고 구조화된 요약이 필요한 연구자 또는 분석가.
- 인용을 고려한 생성이 필요한 내부 지식 기반을 구축하는 팀.
- 리트리ieval-증강 생성(RAG) 파이프라인을 실험 중이며, 추가적인 증거 필터링 단계가 필요한 사람.
라이선스
- MIT 라이선스 (see
LICENSE).
기여 방법
- 이슈 및 풀 리퀘스트를 환영합니다. 리포지토리 내
CONTRIBUTING가이드라인을 참조하세요.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트