SKILL.md
GPT Researcher Guide
Overview
GPT Researcher is an autonomous research agent with over 26,000 GitHub stars that conducts comprehensive online research on any given topic. Developed by Assaf Elovic, it generates detailed, factual, and unbiased research reports by planning research questions, searching multiple sources, scraping and filtering relevant content, and synthesizing findings into well-structured reports with citations.
The agent addresses a fundamental challenge in AI-assisted research: generating accurate, comprehensive reports rather than relying on a single LLM's potentially outdated or hallucinated knowledge. GPT Researcher uses a multi-agent architecture where a planner agent decomposes the research query into sub-questions, multiple retriever agents gather information from diverse sources, and a writer agent synthesizes everything into a coherent report.
For academic researchers, GPT Researcher is valuable for conducting preliminary literature surveys, exploring unfamiliar research domains, gathering background information for grant proposals, and generating initial drafts of review sections. The agent can be configured to search specific domains, use academic search engines, and output reports in various formats including markdown and PDF.
Installation and Setup
# Install from PyPI
pip install gpt-researcher
# Or clone for development
git clone https://github.com/assafelovic/gpt-researcher.git
cd gpt-researcher
pip install -e .
Configure your environment with API keys using environment variables:
# Required: LLM provider (choose one)
export OPENAI_API_KEY=$OPENAI_API_KEY
# Or use other providers
export ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY
# Required: Search provider (choose one)
export TAVILY_API_KEY=$TAVILY_API_KEY
# Or alternatives
export SERPER_API_KEY=$SERPER_API_KEY
export SEARX_URL=$SEARX_URL
For a fully local setup without external API dependencies, you can configure local LLMs and search engines:
# Use local LLM via Ollama
export OPENAI_BASE_URL=http://localhost:11434/v1
export LLM_PROVIDER=ollama
export FAST_LLM=llama3
export SMART_LLM=llama3
# Use local search via SearXNG
export SEARX_URL=http://localhost:8888
export SEARCH_PROVIDER=searx
