Skip to content

priyankeshh/deep-research-agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ”Ž Deep Research AI Agent

An intelligent multi-agent research system that transforms web research through AI orchestration

Python Streamlit Agno ScrapeGraph MCP

Revolutionizing research workflows with autonomous AI agents


πŸš€ Overview

Deep Research AI Agent is a sophisticated research automation system that employs a multi-stage AI workflow to conduct comprehensive web research. Built with cutting-edge AI frameworks, it orchestrates three specialized agents to deliver publication-quality research reports in minutes, not hours.

🎯 Key Innovations

  • πŸ€– Multi-Agent Architecture: Three specialized AI agents working in perfect harmony
  • πŸ” Intelligent Web Scraping: Advanced extraction using ScrapeGraph AI technology
  • πŸ“Š Real-time Analysis: Live synthesis and interpretation of research findings
  • πŸ“ Automated Report Generation: Publication-ready reports with proper citations
  • 🌐 Streamlit Interface: Intuitive web application for seamless user experience
  • πŸ”Œ MCP Integration: Model Context Protocol server for enhanced AI tool integration

πŸ—οΈ Architecture

The system employs a three-stage pipeline powered by Nebius AI Studio and ScrapeGraph AI:

graph LR
    A[πŸ” Searcher Agent] --> B[πŸ”¬ Analyst Agent] --> C[✍️ Writer Agent]
    A --> D[Web Sources]
    B --> E[Synthesized Insights]
    C --> F[πŸ“„ Final Report]
Loading

🧠 Agent Roles

Agent Responsibility Technology Stack
πŸ” Searcher Discovers and extracts web information ScrapeGraph AI + Qwen-30B
πŸ”¬ Analyst Synthesizes findings and identifies insights Qwen-30B + Critical Analysis
✍️ Writer Produces publication-quality reports Qwen-14B + Technical Writing

✨ Features

🎯 Core Capabilities

  • Autonomous Research: End-to-end research automation without human intervention
  • Multi-Source Intelligence: Aggregates data from news, blogs, papers, and forums
  • Real-time Processing: Live status updates and streaming report generation
  • Citation Management: Automatic source verification and reference formatting
  • Controversy Detection: Identifies conflicting viewpoints and debates

πŸ› οΈ Technical Excellence

  • Scalable Architecture: Modular design supporting easy agent customization
  • Error Resilience: Robust error handling and graceful degradation
  • Streaming Interface: Real-time content delivery for enhanced user experience
  • API Integration: RESTful endpoints and MCP server compatibility
  • Security First: API key encryption and secure credential management

πŸš€ Quick Start

Prerequisites

  • Python 3.10+
  • Nebius AI Studio API key
  • ScrapeGraph AI API key

πŸ’» Installation

# Clone the repository
git clone https://github.com/priyankeshh/deep-research-agent.git
cd deep-research-agent

# Install dependencies using uv (recommended)
uv sync

# Or use pip
pip install -r requirements.txt

πŸ”‘ Environment Setup

Create a .env file in the project root:

NEBIUS_API_KEY=your_nebius_api_key_here
SGAI_API_KEY=your_scrapegraph_api_key_here

🌐 Launch Web Application

# Using uv
uv run streamlit run app.py

# Or using Python directly
streamlit run app.py

Navigate to http://localhost:8501 to access the research interface.


πŸ“– Usage Examples

πŸ” Research Query Examples

# Technology Research
"Analyze the current state of quantum computing and its commercial applications"

# Market Analysis  
"Compare the adoption rates of electric vehicles across different regions"

# Trend Investigation
"Investigate the impact of AI on software development productivity"

πŸ› οΈ Programmatic Usage

from agents import DeepResearcherAgent

# Initialize the research agent
agent = DeepResearcherAgent()

# Execute research workflow
research_results = agent.searcher.run("Your research query")
analysis = agent.analyst.run(research_results.content)
report = agent.writer.run(analysis.content)

print(report.content)

πŸ”Œ MCP Server Integration

# Start MCP server
python server.py

# Add to your .cursor/mcp.json
{
  "mcpServers": {
    "deep_researcher_agent": {
      "command": "uv",
      "args": ["run", "python", "server.py"],
      "env": {
        "NEBIUS_API_KEY": "your_key_here",
        "SGAI_API_KEY": "your_key_here"
      }
    }
  }
}

πŸ› οΈ Technology Stack

πŸ”§ Core Frameworks

  • Agno: Advanced AI agent orchestration framework
  • ScrapeGraph AI: Intelligent web scraping and data extraction
  • Nebius AI Studio: High-performance language model inference
  • Streamlit: Interactive web application framework

πŸ”Œ Integration Tools


πŸ† Project Highlights

πŸ’‘ Innovation Points

  • Multi-Agent Orchestration: Sophisticated workflow coordination between specialized AI agents
  • Real-time Streaming: Live report generation with progressive content delivery
  • Source Verification: Automated fact-checking and citation validation
  • Modular Architecture: Easily extensible system supporting custom agent implementations

🎯 Technical Achievements

  • Zero-Configuration Setup: Streamlined installation and deployment process
  • Enterprise-Ready: Scalable architecture supporting high-throughput research operations
  • API-First Design: RESTful endpoints enabling seamless integration
  • Cross-Platform Compatibility: Consistent performance across different operating systems

πŸ”§ Configuration

πŸŽ›οΈ Agent Customization

Each agent can be customized through environment variables and configuration files:

# Custom model configuration
searcher = Agent(
    model=Nebius(id="custom-model", api_key=api_key),
    tools=[ScrapeGraphTools(api_key=sgai_key)],
    description="Custom searcher instructions..."
)

πŸ“Š Performance Tuning

  • Model Selection: Choose optimal models for each agent based on task complexity
  • Concurrency Control: Adjust parallel processing limits for your infrastructure
  • Cache Management: Configure result caching for improved response times

🀝 Contributing

Contributions are welcome! This project follows modern development practices:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ§ͺ Development Setup

# Install development dependencies
uv add --dev pytest black flake8 mypy

# Run tests
uv run pytest

# Format code
uv run black .

# Type checking
uv run mypy .

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ‘¨β€πŸ’» Author

Priyankesh


πŸ™ Acknowledgments

  • Agno Team for the excellent AI agent framework
  • ScrapeGraph AI for advanced web scraping capabilities
  • Nebius for high-performance AI model inference
  • Streamlit for the intuitive web application framework

⭐ Star this repository if you find it useful!

GitHub stars GitHub forks

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages