agents-deep-research  by qx-labs

Agentic tool for iterative deep research using the OpenAI Agents SDK

created 4 months ago
568 stars

Top 57.5% on sourcepulse

GitHubView on GitHub
Project Summary

This project provides an automated, iterative deep research system designed for generating comprehensive reports on any topic. It targets researchers, students, and professionals needing in-depth analysis, offering a multi-agent architecture that continuously refines understanding and synthesizes findings.

How It Works

The system employs a multi-agent approach, with two primary modes: IterativeResearcher for shorter, continuous research loops, and DeepResearcher for more extensive projects. DeepResearcher first generates a report outline, then runs parallel IterativeResearcher instances for each section. Each IterativeResearcher identifies knowledge gaps, selects appropriate tools (like web search or crawlers), executes research actions, and synthesizes findings into a section, with a final agent compiling and proofreading the complete report.

Quick Start & Requirements

  • Install via pip: pip install deep-researcher
  • Requires Python and an .env file for API keys (OpenAI, Serper, etc.).
  • Official documentation and examples are available in the repository.

Highlighted Details

  • Supports a wide range of LLMs compatible with the OpenAI API spec, including AzureOpenAI, Anthropic, Gemini, and local models via Ollama.
  • Offers both IterativeResearcher for simple queries and DeepResearcher for structured, multi-section reports.
  • Allows custom LLM configuration at runtime for flexible model selection.
  • Integrates with OpenAI's tracing feature for monitoring execution flow.

Maintenance & Community

  • Developed by Jai Juneja at QX Labs.
  • TODOs include adding unit tests, more search providers, caching, and specialized research tools.

Licensing & Compatibility

  • Released under the MIT License.
  • Compatible with commercial use and closed-source linking.

Limitations & Caveats

The system may encounter rate limits with frequent API calls, especially on lower-tier plans. LLMs can struggle with precise output length instructions, often producing 1-2,000 words per response despite requests for longer content. Gemini 2.0 Flash is noted to frequently fail tool calls.

Health Check
Last commit

2 months ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
161 stars in the last 90 days

Explore Similar Projects

Starred by Jason Liu Jason Liu(Author of Instructor) and Ross Taylor Ross Taylor(Cofounder of General Reasoning; Creator of Papers with Code).

Search-R1 by PeterGriffinJin

1.3%
3k
RL framework for training LLMs to use search engines
created 5 months ago
updated 3 weeks ago
Feedback? Help us improve.