Repolode
langchain-ai

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. 1

    Clone the repository

    git clone https://github.com/langchain-ai/local-deep-researcher.git
  2. 2

    Enter the project directory and copy the example environment file

    cd local-deep-researcher && cp .env.example .env
  3. 3

    Pull a local model with Ollama (install the Ollama app first)

    ollama pull deepseek-r1:8b
  4. 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