Skip to content

Latest commit

Β 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ”¬ Multi-Agent Research Lab

An AI-powered multi-agent research system that automatically searches the web, extracts relevant information, generates a structured research report, and uses a dedicated critic agent to review the generated output.

The project demonstrates how specialized AI agents can work together as an orchestrated pipeline instead of relying on a single LLM prompt.

πŸš€ Live Demo

Live Application: https://debojeet-multi-agent.streamlit.app

Enter a research topic and let the multi-agent pipeline search, analyze, write, and review the report automatically.


πŸ“Έ Screenshots

[Multi-Agent Research Lab]Screenshot (12)

[Generated Research Report]Screenshot (13)

[Critic Review]Screenshot (14)


✨ Features

  • πŸ”Ž Search Agent β€” Searches the web for relevant information and sources.
  • πŸ“– Reader Agent β€” Extracts and processes content from selected web pages.
  • ✍️ Writer Agent β€” Generates a structured research report from the collected information.
  • 🧐 Critic Agent β€” Reviews the generated report and provides feedback.
  • πŸ”— Multi-Agent Pipeline β€” Coordinates multiple specialized agents through a shared workflow.
  • πŸ“š Source-Based Reports β€” Generated reports include references to the sources used during research.
  • πŸ–₯️ Streamlit UI β€” Interactive interface for entering research briefs and reviewing results.
  • πŸ“Š Pipeline Metrics β€” Displays agent count, search notes, scraped content, and report statistics.
  • πŸ“„ Report Review β€” Allows users to inspect the generated report and critic feedback.

πŸ—οΈ Architecture

                 Research Brief
                       β”‚
                       β–Ό
                β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                β”‚ Search Agent β”‚
                β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                       β”‚
                       β–Ό
                β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                β”‚ Reader Agent β”‚
                β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                       β”‚
                       β–Ό
                β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                β”‚ Writer Agent β”‚
                β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                       β”‚
                       β–Ό
                β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                β”‚ Critic Agent β”‚
                β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                       β”‚
                       β–Ό
              Final Research Report
                       β”‚
                       β–Ό
                Streamlit Interface

Pipeline Flow

  1. The user provides a research brief.
  2. The Search Agent discovers relevant web sources.
  3. The Reader Agent extracts useful information from the selected pages.
  4. The Writer Agent synthesizes the collected information into a structured report.
  5. The Critic Agent evaluates the generated report.
  6. The final report, sources, and critic feedback are presented through the Streamlit interface.

πŸ› οΈ Tech Stack

Technology Purpose
Python Core application development
LangChain LLM orchestration and agent/tool integration
LLMs Research, synthesis, and evaluation
Web Search Finding relevant research sources
Web Scraping Extracting webpage content
Streamlit Interactive web interface
python-dotenv Environment variable management

πŸ“ Project Structure

multi_agent_system/
β”‚
β”œβ”€β”€ app.py                 # Streamlit application
β”œβ”€β”€ pipeline.py            # Multi-agent research pipeline
β”œβ”€β”€ agents.py              # Agent definitions and configurations
β”œβ”€β”€ tools.py               # Search/scraping and custom tools
β”‚
β”œβ”€β”€ .streamlit/
β”‚   └── config.toml        # Streamlit configuration
β”‚
β”œβ”€β”€ requirements.txt       # Python dependencies
β”œβ”€β”€ pyproject.toml         # Project configuration
β”œβ”€β”€ pyrightconfig.json     # Python type-checking configuration
β”œβ”€β”€ .gitignore
└── README.md

βš™οΈ Getting Started

1. Clone the repository

git clone https://github.com/YOUR_USERNAME/multi_agent_system.git
cd multi_agent_system

2. Create a virtual environment

python -m venv venv

3. Activate the environment

Windows:

.\venv\Scripts\activate

macOS/Linux:

source venv/bin/activate

4. Install dependencies

pip install -r requirements.txt

5. Configure environment variables

Create a .env file in the project root and add the API keys required by the application.

YOUR_API_KEY=your_api_key

Never commit .env or API keys to GitHub.

6. Run the application

streamlit run app.py

The application will be available locally at:

http://localhost:8501

πŸ” Environment & Secrets

For local development, API credentials are loaded through environment variables.

For deployment, configure the required secrets through the hosting platform's secret management system.

The repository intentionally does not contain .env or API credentials.


πŸ“Έ Application

The application provides a research dashboard where users can:

  • Submit a research topic
  • Track pipeline progress
  • View search results
  • Inspect scraped content
  • Read the generated report
  • Review critic feedback
  • Inspect cited sources

🎯 Example

Research Brief

Impact of AI on the Job Market

Pipeline

Search
   ↓
Read
   ↓
Write
   ↓
Critique

Output

The system generates a structured research report containing:

  • Introduction
  • Key findings
  • Analysis
  • Conclusion
  • Sources
  • Critic review

🧠 What I Learned

This project helped me understand and implement:

  • Multi-agent AI architecture
  • LangChain agent and tool orchestration
  • LLM-based research workflows
  • Web search and content extraction
  • Prompt-driven report generation
  • AI-generated content evaluation
  • Shared state between pipeline stages
  • Streamlit application development
  • Environment and secret management
  • Deploying an AI application

πŸš€ Future Improvements

  • Add persistent research history
  • Add PDF report export
  • Introduce parallel research agents
  • Add source credibility scoring
  • Add RAG with a vector database
  • Add human-in-the-loop approval before report generation
  • Improve critic-based iterative refinement
  • Add authentication and user-specific research history

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

Debojeet Mitra

Computer Science (AI & ML) | Backend & Generative AI Developer


⭐ If you find this project useful

Feel free to explore the code, try the live demo, or give the repository a star.

About

A multi-agent AI research system built with LangChain that searches the web, extracts content, generates sourced reports, and uses a critic agent to review the output.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Contributors

Languages