πŸ”Ž GPT Researcher

by assafelovic

28.1k 3.5k downloads Not rated yet Apache-2.0

About

An autonomous agent that conducts deep research on any data using any LLM providers

Details

License
Apache-2.0

Explore

- πŸ“ Generate detailed research reports using web and local documents.
- πŸ–ΌοΈ Smart image scraping and filtering for reports.
- 🍌 AI-generated inline images using Google Gemini (Nano Banana) for visual illustrations.
- πŸ“œ Generate detailed reports exceeding 2,000 words.
- 🌐 Aggregate over 20 sources for objective conclusions.
- πŸ–₯️ Frontend available in lightweight (HTML/CSS/JS) and production-ready (NextJS + Tailwind) versions.
- πŸ” JavaScript-enabled web scraping.
- πŸ“‚ Maintains memory and context throughout research.
- πŸ“„ Export reports to PDF, Word, and other formats.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name πŸ”Ž GPT Researcher
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

1. Install Python 3.11 or later. Guide.
2. Clone the project and navigate to the directory:

    git clone https://github.com/assafelovic/gpt-researcher.git
    cd gpt-researcher
    

3. Set up API keys by exporting them or storing them in a .env file.

    export OPENAI_API_KEY={Your OpenAI API Key here}
    export TAVILY_API_KEY={Your Tavily API Key here}
    

(Optional) For enhanced tracing and observability, you can also set:


Extend Claude's deep research capabilities by installing GPT Researcher as a Claude Skill:

bash
npx skills add assafelovic/gpt-researcher

Once installed, Claude can leverage GPT Researcher's deep research capabilities directly within your conversations.

python
...
from gpt_researcher import GPTResearcher

query = "why is Nvidia stock going up?"
researcher = GPTResearcher(query=query)

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "\ud83d\udd0e gpt researcher": {
            "gpt-researcher": {
                "command": "npx",
                "args": [
                    "skills",
                    "add",
                    "assafelovic/gpt-researcher"
                ]
            }
        }
    }
}

McpServers

{
    "gpt-researcher": {
        "command": "npx",
        "args": [
            "skills",
            "add",
            "assafelovic/gpt-researcher"
        ]
    }
}

GPT Researcher the first open deep research agent designed for both web and local research on any given task.

The agent produces detailed, factual, and unbiased research reports with citations. GPT Researcher provides a full suite of customization options to create tailor made and domain specific research agents. Inspired by the recent Plan-and-Solve and RAG papers, GPT Researcher addresses misinformation, speed, determinism, and reliability by offering stable performance and increased speed through parallelized agent work.

Our mission is to empower individuals and organizations with accurate, unbiased, and factual information through AI.

Why GPT Researcher?

- Objective conclusions for manual research can take weeks, requiring vast resources and time.
- LLMs trained on outdated information can hallucinate, becoming irrelevant for current research tasks.
- Current LLMs have token limitations, insufficient for generating long research reports.
- Limited web sources in existing services lead to misinformation and shallow results.
- Selective web sources can introduce bias into research tasks.

Demo

<a href="https://www.youtube.com/watch?v=f60rlc_QCxE" target="_blank" rel="noopener"> Demo video </a>

Install as Claude Skill

Extend Claude's deep research capabilities by installing GPT Researcher as a Claude Skill:

npx skills add assafelovic/gpt-researcher

Once installed, Claude can leverage GPT Researcher's deep research capabilities directly within your conversations.

Architecture

The core idea is to utilize 'planner' and 'execution' agents. The planner generates research questions, while the execution agents gather relevant information. The publisher then aggregates all findings into a comprehensive report.

<div align="center">

</div>

Steps:
Create a task-specific agent based on a research query.
Generate questions that collectively form an objective opinion on the task.
Use a crawler agent for gathering information for each question.
Summarize and source-track each resource.

  • Filter and aggregate summaries into a final research report.


Tutorials


- How it Works
- How to Install
- Live Demo

Features

- πŸ“ Generate detailed research reports using web and local documents.
- πŸ–ΌοΈ Smart image scraping and filtering for reports.
- 🍌 AI-generated inline images using Google Gemini (Nano Banana) for visual illustrations.
- πŸ“œ Generate detailed reports exceeding 2,000 words.
- 🌐 Aggregate over 20 sources for objective conclusions.
- πŸ–₯️ Frontend available in lightweight (HTML/CSS/JS) and production-ready (NextJS + Tailwind) versions.
- πŸ” JavaScript-enabled web scraping.
- πŸ“‚ Maintains memory and context throughout research.
- πŸ“„ Export reports to PDF, Word, and other formats.

πŸ“– Documentation

See the Documentation for:
- Installation and setup guides
- Configuration and customization options
- How-To examples
- Full API references

βš™οΈ Getting Started

Installation

1. Install Python 3.11 or later. Guide.
2. Clone the project and navigate to the directory:

    git clone https://github.com/assafelovic/gpt-researcher.git
    cd gpt-researcher
    

3. Set up API keys by exporting them or storing them in a .env file.

    export OPENAI_API_KEY={Your OpenAI API Key here}
    export TAVILY_API_KEY={Your Tavily API Key here}
    

(Optional) For enhanced tracing and observability, you can also set:

    # export LANGCHAIN_TRACING_V2=true
# export LANGCHAIN_API_KEY={Your LangChain API Key here}

For custom OpenAI-compatible APIs (e.g., local models, other providers), you can also set:

    export OPENAI_BASE_URL={Your custom API base URL here}

4. Install dependencies and start the server:

    pip install -r requirements.txt
    python -m uvicorn main:app --reload
    

Visit http://localhost:8000 to start.

For other setups (e.g., Poetry or virtual environments), check the Getting Started page.

Run as PIP package

pip install gpt-researcher


Example Usage:


```python
...
from gpt_researcher import GPTResearcher

query = "why is Nvidia stock going up?"
researcher = GPTResearcher(query=query)

No reviews yet β€” be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.