
Agent
AdvancedResearch
harshalmore31
About this agent
An open-source implementation of Anthropic's multi-agent deep research system as defined in: https://www.anthropic.com/engineering/built-multi-agent-research-system built with the swarms framework

Advanced Research System (Based on Anthropic's Paper)
An enhanced implementation of the orchestrator-worker pattern from Anthropic's paper, "How we built our multi-agent research system," using the swarms framework. This system achieves 90.2% performance improvement over single-agent systems through advanced parallel execution, LLM-as-judge evaluation, and professional report generation with export capabilities.
✨ Key Features
| Feature | Description |
|---|---|
| Enhanced Orchestrator-Worker Architecture | A LeadResearcherAgent with explicit thinking processes plans and synthesizes, while specialized ResearchSubagent workers execute focused tasks with iterative search capabilities. |
| Advanced Web Search Integration | Utilizes exa_search with quality scoring, source reliability assessment, and multi-loop search strategies for comprehensive research. |
| LLM-as-Judge Evaluation | Sophisticated progress evaluation system that determines research completeness, identifies missing topics, and guides iterative refinement. |
| High-Performance Parallel Execution | Leverages ThreadPoolExecutor to run up to 5 specialized agents concurrently, achieving 90% time reduction for complex queries. |
| Professional Citation System | Enhanced CitationAgent with intelligent source descriptions, quality-based formatting, and academic-style citations. |
| Export Functionality | Built-in report export to Markdown files with customizable paths, automatic timestamping, and comprehensive metadata. |
| Multi-Layer Error Recovery | Advanced error handling with fallback content generation, emergency report creation, and adaptive task refinement. |
| Enhanced State Management | Comprehensive orchestration metrics, conversation history tracking, and persistent agent states. |
🏗️ Architecture
The system follows a dynamic, multi-phase workflow with enhanced coordination:
[User Query + Export Options]
│
▼
┌─────────────────────────────────┐
│ LeadResearcherAgent │ (Enhanced Orchestrator)
│ - Query Analysis & Planning │
│ - LLM-as-Judge Evaluation │
│ - Iterative Strategy Refinement│
└─────────────────────────────────┘
│ 1. Analyze & Decompose (with thinking process)
▼
┌─────────────────────────────────────────┐
│ Parallel Sub-Tasks │
│ (Up to 5 concurrent tasks) │
└─────────────────────────────────────────┘
│ │ │ │
▼ ▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│SubAgent 1│ │SubAgent 2│ │SubAgent 3│ │SubAgent N│ (Specialized Workers)
│Multi-loop│ │Multi-loop│ │Multi-loop│ │Multi-loop│
│ Search │ │ Search │ │ Search │ │ Search │
└──────────┘ └──────────┘ └──────────┘ └──────────┘
│ │ │ │
▼ ▼ ▼ ▼
┌─────────────────────────────────────────┐
│ Enhanced Results Aggregation │
│ - Quality Assessment & Confidence │
│ - Source Deduplication & Scoring │
└─────────────────────────────────────────┘
│ 2. Synthesis & LLM-as-Judge Evaluation
▼
┌─────────────────────────────────┐
│ LeadResearcherAgent │
│ - Completeness Assessment │
│ - Gap Identification │
│ - Iterative Refinement │
└─────────────────────────────────┘
│ 3. Generate Final Report
▼
┌─────────────────────────────────┐
│ Enhanced CitationAgent │ (Post-Processor)
│ - Smart Source Descriptions │
│ - Professional Citations │
│ - Quality Assurance │
└─────────────────────────────────┘
│ 4. Export & Delivery
▼
[Final Cited Report + Optional Export]
🔄 Enhanced Workflow Process
- Strategic Planning: Advanced query analysis with explicit thinking processes and complexity assessment
- Parallel Research: Multiple
ResearchSubagentworkers with 3-loop search strategies execute concurrently - LLM-as-Judge Evaluation: Sophisticated progress assessment identifies gaps and determines iteration needs
- Professional Citation: Enhanced processing with intelligent source descriptions and quality indicators
- Export & Delivery: Optional file export with customizable paths and comprehensive metadata
📦 Installation
Prerequisites
- Python 3.10 or higher
- API keys for Claude (Anthropic) and Exa search
Install with uv (Recommended)
uv provides the fastest and most reliable package management experience:
# Install uv if you haven't already
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install the package
uv add advancedresearch
# Or create a new project with advancedresearch
uv init my-research-project
cd my-research-project
uv add advancedresearch
Alternative Installation Methods
# Using pip
pip install advancedresearch
# Using poetry
poetry add advancedresearch
Development Installation
For development or to access the latest features:
# Clone the repository
git clone https://github.com/The-Swarm-Corporation/AdvancedResearch.git
cd AdvancedResearch
# Install with uv (recommended)
uv sync
# Or with poetry
poetry install
# Or with pip
pip install -e .
Why uv?
We recommend uv for the best experience with AdvancedResearch:
- ⚡ 10-100x faster than pip for dependency resolution and installation
- 🔒 Reliable: Deterministic builds with automatic virtual environment management
- 🎯 Simple: Single tool for project management, dependency resolution, and Python version management
- 🔄 Compatible: Drop-in replacement for pip with better performance
Environment Setup
Create a .env file in your project root:
# Claude API Key (Primary LLM)
ANTHROPIC_API_KEY="your_anthropic_api_key_here"
# Exa Search API Key
EXA_API_KEY="your_exa_api_key_here"
# Optional: OpenAI API Key (alternative LLM)
OPENAI_API_KEY="your_openai_api_key_here"
🚀 Quick Start
Complete uv Workflow
Get started with AdvancedResearch using uv for the optimal experience:
# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Create a new project
uv init my-research-project
cd my-research-project
# Add advancedresearch
uv add advancedresearch
# Create your research script
cat > research.py << 'EOF'
from advancedresearch import AdvancedResearch
# Initialize the system
research_system = AdvancedResearch()
# Run research
results = research_system.research(
"What are the latest developments in quantum computing?",
export=True,
export_path="quantum_computing_report.md"
)
print(f"Research completed! Report: {results['research_metadata']['exported_to']}")
EOF
# Run your research
uv run research.py
Example
from advanced_research import AdvancedResearch
# Initialize the system
research_system = AdvancedResearch(max_iterations=1)
# Run research
results = research_system.research(
"What are the latest developments in quantum computing?",
export=True,
export_path="quantum_computing_report.md",
)
print(results)
🤝 Contributing
This implementation is part of the open-source swarms ecosystem. We welcome contributions!
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-research-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-research-feature) - Open a Pull Request
Development Setup with uv
# Clone and setup development environment
git clone https://github.com/The-Swarm-Corporation/AdvancedResearch.git
cd AdvancedResearch
# Install development dependencies with uv (recommended)
uv sync --dev
# Run tests
uv run pytest
# Run linting
uv run ruff check .
uv run black --check .
# Run type checking
uv run mypy advanced_research/
# Format code
uv run black .
uv run ruff check --fix .
📄 License
This project is licensed under the MIT License. See the LICENSE file for details.
📚 Citation
If you use this work in your research, please cite both the original paper and this implementation:
@misc{anthropic2024researchsystem,
title={How we built our multi-agent research system},
author={Anthropic},
year={2024},
month={June},
url={https://www.anthropic.com/engineering/built-multi-agent-research-system}
}
@software{advancedresearch2024,
title={AdvancedResearch: Enhanced Multi-Agent Research System},
author={The Swarm Corporation},
year={2024},
url={https://github.com/The-Swarm-Corporation/AdvancedResearch},
note={Implementation based on Anthropic's multi-agent research system paper}
}
@software{swarms_framework,
title={Swarms: An Open-Source Multi-Agent Framework},
author={Kye Gomez},
year={2023},
url={https://github.com/kyegomez/swarms}
}
🔗 Related Work
- Original Paper - "How we built our multi-agent research system" by Anthropic
- Swarms Framework - The underlying multi-agent AI orchestration framework
- Full Documentation - Comprehensive API reference and advanced usage guide
📞 Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Discord: Join our community
Source: https://github.com/The-Swarm-Corporation/AdvancedResearch
Requirements
| Package | Installation |
|---|---|
| requests | pip3 install requests |
Agent Code
The main implementation code for this agent
Comments & Discussion
Scroll to load comments...
Tags
Share
Loading recommendations...