A modular Agentic RAG tutorial and project built with LangGraph, featuring hierarchical indexing, conversation memory, and query clarification.
langchain-ai/local-deep-researcher
A fully local web research assistant that runs iterative search, summarization and gap-reflection loops with LLMs served by Ollama or LM Studio.
- Stars
- 9,378
- Forks
- 981
- Open issues
- 47
- Last commit
- 5 days ago
What is it?
Local Deep Researcher takes a research topic, uses a local LLM to generate a web search query, gathers results, and summarizes them. It then reflects on the summary to identify knowledge gaps, generates a follow-up query to fill them, and repeats for a configurable number of cycles. The final output is a markdown report with the sources used, and all gathered sources are kept in the LangGraph state.
The assistant runs LLMs through Ollama or LM Studio's OpenAI-compatible server, so models stay on your own machine. Search defaults to DuckDuckGo, which needs no API key, and can be switched to SearXNG, Tavily or Perplexity by setting environment variables. Models that struggle with structured JSON output are handled by a fallback mechanism.
The project is built on LangGraph, and you can run it locally with LangGraph Studio, which shows each step of the research process. A Dockerfile is included, though Ollama must be run separately.
Key features
- 01Runs LLMs locally through Ollama or LM Studio.
- 02Iteratively searches, summarizes and reflects to fill knowledge gaps.
- 03Defaults to DuckDuckGo, with optional SearXNG, Tavily or Perplexity search.
- 04Outputs a markdown summary with citations to all sources used.
- 05Configurable number of research loops and full-page fetching.
Use cases
- Researching a topic while keeping prompts and data on your own machine.
- Prototyping a multi-step search-and-summarize agent on LangGraph.
- Generating cited background reports without a paid search API key.
Quick start
- 1
Clone the repository
git clone https://github.com/langchain-ai/local-deep-researcher.git - 2
Enter the project directory and copy the example environment file
cd local-deep-researcher && cp .env.example .env - 3
Pull a local model with Ollama (install the Ollama app first)
ollama pull deepseek-r1:8b - 4
Start the LangGraph server with uv
uvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.11 langgraph dev
Things to know
- The README's setup instructions are written mainly for Mac and Windows, with the Ollama guide specifically targeting Mac.
- Output quality depends on the local model; some models struggle with the required structured JSON output.
- Running it requires a local LLM server (Ollama or LM Studio) and enough hardware to run the chosen model.
Topics
FAQ
- What is local-deep-researcher?
- A fully local web research assistant that runs iterative search, summarization and gap-reflection loops with LLMs served by Ollama or LM Studio. Local Deep Researcher takes a research topic, uses a local LLM to generate a web search query, gathers results, and summarizes them. It then reflects on the summary to identify knowledge gaps, generates a follow-up query to fill them, and repeats for a configurable number of cycles. The final output is a markdown report with the sources used, and all gathered sources are kept in the LangGraph state.
- Is local-deep-researcher free to use? What license does it have?
- local-deep-researcher is open source under the MIT license. Check the license terms before using it in commercial products.
- Is local-deep-researcher still maintained?
- Actively maintained. The last commit to local-deep-researcher was on Oct 15, 2026.
- What can I use local-deep-researcher for?
- Researching a topic while keeping prompts and data on your own machine. Prototyping a multi-step search-and-summarize agent on LangGraph. Generating cited background reports without a paid search API key.
- How do I install local-deep-researcher?
- Clone the repository: git clone https://github.com/langchain-ai/local-deep-researcher.git Enter the project directory and copy the example environment file: cd local-deep-researcher && cp .env.example .env Pull a local model with Ollama (install the Ollama app first): ollama pull deepseek-r1:8b Start the LangGraph server with uv: uvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.11 langgraph dev
- Where can I get local-deep-researcher?
- The source code and installation instructions are on GitHub: https://github.com/langchain-ai/local-deep-researcher
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A collection of 28 code-first tutorials for taking GenAI agents from prototype to production, covering memory, RAG, deployment, security and observability.
Self-hostable AI second brain that answers questions from the web and your own documents, with custom agents and scheduled automations.
FastGPT is an open-source AI Agent building platform with data processing, RAG knowledge bases, and visual workflow orchestration for LLM apps.
Open-source platform for building AI-powered chat bots that connect LLMs to Slack, Discord, Telegram, WeChat, Lark, DingTalk and more.
Agent-native memory infrastructure that turns LLM agent conversations and execution into persistent, structured memory for Python and TypeScript apps.