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

No packages published

Languages