프로젝트 소개
Local Deep Researcher는 LangGraph 기반의 오픈소스, 완전 로컬 웹 연구 및 보고서 작성 도우미입니다. Ollama 또는 LMStudio에서 호스팅되는 모든 LLM을 사용하여 사용자 머신에서 완전히 실행되며, 클라우드 기반 AI 서비스가 필요하지 않습니다.
**작동 방식**
이 도우미는 IterDRAG 논문에서 영감을 받은 반복 연구 루프를 따릅니다:
1. **쿼리 생성**: 사용자 제공 주제가 주어지면 로컬 LLM이 웹 검색 쿼리를 생성합니다.
2. **웹 검색**: 구성 가능한 검색 엔진(기본적으로 DuckDuckGo, 또는 SearXNG, Tavily, Perplexity)이 관련 소스를 검색합니다.
3. **요약**: LLM이 연구 주제와 관련하여 검색 결과를 요약합니다.
4. **격차 분석**: LLM이 요약을 반영하여 지식 격차를 식별합니다.
5. **새 쿼리**: 식별된 격차를 해결하기 위해 새 검색 쿼리를 생성합니다.
6. **반복**: 2~5단계가 사용자 정의 횟수(기본값: 3)만큼 반복됩니다.
최종 출력은 사용된 모든 소스에 대한 인용이 포함된 연구 요약을 담은 마크다운 파일입니다.
**모델 지원**
- **Ollama**: Ollama 라이브러리에서 사용 가능한 모든 모델(예: DeepSeek R1, Llama 3.2)을 지원합니다. `OLLAMA_BASE_URL` 및 `LOCAL_LLM` 환경 변수로 구성합니다.
- **LMStudio**: OpenAI 호환 API 서버가 있는 LMStudio에 로드된 모델을 지원합니다. `LMSTUDIO_BASE_URL` 및 `LOCAL_LLM`로 구성합니다.
- **도구 호출**: 2025년 8월 기준, Ollama에서 JSON 모드를 지원하지 않는 gpt-oss와 같은 모델에 대한 도구 호출을 지원합니다.
**검색 엔진 옵션**
- **DuckDuckGo** (기본값): API 키가 필요 없습니다.
- **SearXNG**: 자체 호스팅 메타 검색 엔진입니다.
- **Tavily**: API 키가 필요합니다.
- **Perplexity**: API 키가 필요합니다.
**배포**
- **LangGraph Studio**: `langgraph dev`로 로컬에서 실행하여 설정을 구성하고 연구 프로세스를 단계별로 시각화할 수 있는 대화형 UI를 제공합니다.
- **Docker**: Dockerfile이 제공되지만, Ollama는 종속 서비스로 별도로 실행해야 합니다.
- **구성 우선순위**: 환경 변수 > LangGraph UI 구성 > Configuration 클래스의 기본값 순입니다.
**기술 세부 사항**
- 상태 저장 다단계 에이전트 워크플로를 위해 LangGraph로 구축되었습니다.
- 환경 변수 관리를 위해 `python-dotenv`를 사용합니다.
- 구조화된 JSON 출력에 어려움을 겪는 모델(예: DeepSeek R1 7B 및 1.5B)을 위한 폴백 메커니즘을 포함합니다.
- 별도 저장소에서 TypeScript 포트를 사용할 수 있습니다.
- 브라우저 호환성: Firefox 권장, Safari는 혼합 콘텐츠 경고가 발생할 수 있습니다.
**사용 사례**
- 클라우드 AI 서비스로 데이터를 보내지 않고 모든 주제에 대한 심층 연구.
- 개인 또는 전문적 용도로 인용된 연구 보고서 생성.
- 격차 인식 검색 전략으로 주제를 반복적으로 탐색.
- 에이전트형 AI 연구 워크플로가 어떻게 작동하는지 학습.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.