Skip to content

D2I-ai/agentic_deep_research

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

9 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

A Strong Baseline for Agentic Deep Research

A simple, powerful, and extensible framework for agentic deep research using LLMs

GitHub Deployments License: MIT GitHub stars

๐ŸŒŸ Overview

This project provides a lightweight yet powerful agentic framework designed to enable multi-hop web search and automated deep research report generation using the function-calling capabilities of LLMs. It empowers developers and researchers to build autonomous agents that can search, reason, and synthesize information from the web with minimal setup.

Whether you're building a research assistant, competitive intelligence tool, or knowledge curation system, this project provides a clean, modular, and easy-to-extend foundation.

๐ŸŽฅ Demo

deepresearch demo 1 deepresearch demo 2

๐Ÿ”ง Key Features

  • โœ… Easy-to-Use - Simple interface for multi-hop search and report generation โ€” get started in minutes.

  • ๐Ÿ” Multi-Hop Web Search - Agents perform iterative searches to gather comprehensive information across multiple sources.

  • ๐ŸŒ Multiple Search Tools Supported - Choose from Serper, Jina, Tavily, Firecrawl, and more โ€” plug in your preferred search engine.

  • ๐Ÿง  LLM Agnostic - Supports various LLMs via API (e.g., Qwen, GPT-4o) through the DashScope or OpenAI-compatible interface.

  • ๐Ÿ“ˆ Built-in Evaluation Pipeline - Evaluate performance on multi-hop QA and report generation tasks out-of-the-box.

  • ๐ŸŒ Multi-Language Support - Fully supports both English and ็ฎ€ไฝ“ไธญๆ–‡.

  • ๐Ÿ–ฅ๏ธ Local Deployment Ready - Supports full-stack deployment (frontend + backend) in local or private environments for enhanced privacy and control.

  • ๐Ÿ“œ MIT Licensed - Open-source and free for personal and commercial use.

๐Ÿš€ Quickstart

1. Use Dashscope API

Dashscope is a platform providing AI-powered APIs and tools for natural language processing, computer vision, and other machine learning tasks. You can get the LLM API from Dashscope.

  1. Dashscope Uasge
  2. Get Your API Key ๏ฝœ ่Žทๅ–ๆ‚จ็š„ API Key
  3. Put your API key in _settings.py

2. Websearch Tools

Websearch tools are used to perform websearch and retrieve webpages for deep research.

Get Your search API Key

We support the following websearch tools:

You can set search backend in _settings.py:

WEBSEARCH_API = ("jina")  # or "tavily", "firecrawl", "local_jina", "custom"

๐Ÿ’ก Tips:

  1. We recommend Jina for its cost-efficiency and excellent content extraction. You can deploy Jina Read locally for full control.
  2. If you want to choose serper_api, you need to set the WEBSEARCH_API to custom.

3. Installation and Configuration

3.1 Clone the repository

git clone https://github.com/D2I-ai/agentic_deep_research.git
cd agentic_deep_research
export PYTHONPATH=$PYTHONPATH:$(pwd)

3.2 Install dependencies

pip install -r requirements.txt

3.3 Set up your API keys

You need to edit the _settings.py file and provide your API key. You need to provide at least dashscope API key and one of the websearch API keys.

 APIKeys = {
     "dashscope_api_key": "your dashscope api key",
     "serper_api": "your serper api key",
     "jina_api_key": "your jina api key",
     "tavily_api_key": "your tavily api key",
     "firecrawl_api_key": "your firecrawl api key"
 }

3.4 Test Your LLM API

 python agent/model.py

3.5 Test the websearch tool

python websearch/query2text.py

4. Run the deep search pipeline

Launch the full agentic pipeline:

python agent/deep_research_demo.py

๐Ÿ“Š Performance Benchmarks

Our agentic deep research achieve strong results on multi-hop QA and report generation tasks. Below are accuracy scores on public benchmarks (โ†‘ is better):

Models HotpotQA_dev_subset Musique_test_subset Bamboogle
qwen2.5-7b 30.00% 13.00% 36.00%
qwen2.5-max 60.00% 25.00% 74.40%
qwen3-235b-a22b 53.30% 25.00% 66.40%
gpt-4o-0806 66.70% 36.00% 76.80%
DeepSeek-R1-0528 53.30% 34.00% 78.40%
Search-R1
๏ผˆLocal RAG๏ผ‰ *
63.00% 27.50% 57.60%
R1-Searcher * 53.10% 25.60% 65.60%
DeepResearcher * 64.30% 29.30% 72.80%
Ours
๏ผˆqwen2.5-7b-instruct๏ผ‰
70.00% 29.00% 64.80%
Ours
๏ผˆqwen2.5-max๏ผ‰
83.30% 41.00% 78.40%
Ours
๏ผˆqwen3-235b-a22b๏ผ‰
80.00% 36.00% 84.00%

๐Ÿงช Auto Evaluation

Evaluate your agentโ€™s performance using our built-in pipeline:

python evaluation/eval_deepresearch.py

๐Ÿ“‹ Roadmap (TODO)

  • Add support for MCP.
  • Add support for more evaluation benchmarks, such as GAIA.
  • Add more finegrained tools.
  • Provide docker image for easy deployment.
  • Release an agent RL training dataset 10K+ samples.

โš™๏ธ Development

1. Backend development

Launch the backend server:

python server.py

2. Frontend development

Following the web/README-EN.md | web/README-ZH.md to launch the frontend server

๐Ÿ™ Acknowledgements

We thank the following projects for inspiration and foundational tools:

  • Qwen Agent - Qwen agent is a powerful LLM agent that provides a simple and intuitive interface for users to implement different agent systems.
  • Jina Read - Jina read provides a simple and efficient way to extract text from given urls.

โญ Star History

Star History Chart

๐Ÿ“ License

This project is released under the MIT License. This license allows for free use, modification, and distribution for both commercial and non-commercial purposes.

๐ŸŒŸ Cite Us

If you use this project in your research, please cite:

@misc{SADR,
      title={A Strong Baseline for Agentic Deep Research},
      author={Chao Chen, Zhihang Fu, Ze Chen},
}

Made with โค๏ธ for the open-source community

View on GitHub โ€ข Star Us

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors