Skip to content

SimantaSarma/Multi-agent-research-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Multi-Agent Research System

A powerful Multi-Agent Research System built with Python, Streamlit, LangChain, and Google Gemini. The application uses multiple AI agents to perform research, gather information, analyze findings, and generate structured outputs.

Features

  • Multi-agent workflow for research and analysis
  • Powered by Google Gemini models
  • Interactive Streamlit web interface
  • Modular architecture with separate agents and tools
  • Environment variable-based configuration
  • Easy local setup and deployment

Project Structure

Multi-agent-research-system/
│
├── app.py                # Streamlit application entry point
├── agents.py             # Agent definitions
├── pipeline.py           # Agent workflow pipeline
├── tools.py              # Custom tools and utilities
├── requirements.txt      # Project dependencies
├── .env.example          # Environment variables template
└── README.md

Prerequisites

Before running the project, ensure you have:

  • Python 3.10 or higher
  • Git
  • Google Gemini API Key

Installation

1. Clone the Repository

git clone <your-repository-url>
cd Multi-agent-research-system

2. Create a Virtual Environment

Windows

python -m venv venv
venv\Scripts\activate

Linux/macOS

python -m venv venv
source venv/bin/activate

3. Install Dependencies

pip install -r requirements.txt

Environment Variables

Create a .env file in the root directory.

Example:

GEMINI_API_KEY=""

TAVILY_API_KEY=your_tavily_api_key_here

You can copy the template:

cp .env.example .env

or on Windows:

copy .env.example .env

Running the Application

Start the Streamlit application:

streamlit run app.py

Alternatively:

python -m streamlit run app.py

After starting, Streamlit will display a local URL similar to:

Local URL: http://localhost:8501

Open the URL in your browser.


Using Google Gemini

This project is configured to use Google Gemini through LangChain.

Example configuration:

from langchain_google_genai import ChatGoogleGenerativeAI

llm = ChatGoogleGenerativeAI(
    model="gemini-2.5-flash",
    temperature=0
)

You can also use:

model="gemini-2.5-pro"

for more advanced reasoning capabilities.


Troubleshooting

Streamlit Not Found

ModuleNotFoundError: No module named 'streamlit'

Solution:

pip install streamlit

Missing Environment Variables

Ensure your .env file exists and contains all required API keys.


Dependency Issues

Update pip and reinstall dependencies:

python -m pip install --upgrade pip
pip install -r requirements.txt

Tech Stack

  • Python
  • Streamlit
  • LangChain
  • Google Gemini
  • dotenv

Contributing

Contributions, issues, and feature requests are welcome.

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to your branch
  5. Open a pull request

License

This project is intended for educational and research purposes. Feel free to modify and extend it according to your needs.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages