Team Ai
Apppublic

arihant18/multi-source-multi-agent-finance-assistant

sourceHugging Facemitupdated 1y agoView on Hugging Face
2likes
App README

Multi-Source Multi-Agent Finance Assistant

A powerful finance assistant that leverages multiple AI agents to provide comprehensive financial information and insights from various sources.

๐Ÿ—๏ธ Architecture

[image]

The system is built using a multi-agent architecture with the following components:

Core Components

  1. 1.Orchestrator
  2. 2.Manages communication between different agents
  3. 3.Handles request routing and response aggregation
  4. 4.Built with FastAPI for high-performance API endpoints
  1. 1.Agents
  2. 2.Voice Agent: Handles speech-to-text and text-to-speech conversions
  3. 3.API Agent: Interfaces with financial APIs (e.g., yfinance)
  4. 4.Retriever Agent: Manages document retrieval and processing
  5. 5.Scraping Agent: Extracts financial information from web sources
  1. 1.Data Ingestion
  2. 2.Handles data collection and preprocessing
  3. 3.Supports multiple data sources and formats
  1. 1.Streamlit Frontend
  2. 2.User-friendly web interface
  3. 3.Real-time interaction with the multi-agent system
  4. 4.Voice input/output capabilities

๐Ÿ› ๏ธ Setup & Deployment

Prerequisites

  • โ€”Python 3.12+
  • โ€”Docker (for containerized deployment)
  • โ€”Google Cloud API credentials (for Gemini AI)

Local Development Setup

  1. 1.Clone the repository:
bash
git clone https://github.com/yourusername/multi-source-multi-agent-finance-assistant.git
cd multi-source-multi-agent-finance-assistant
  1. 1.Create and activate a virtual environment:
bash
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. 1.Install dependencies:
bash
pip install -r requirements.txt
  1. 1.Set up environment variables:
bash
cp .env.example .env
# Edit .env with your API keys and configuration
  1. 1.Run the application:
bash
# Start the orchestrator
uvicorn orchestrator.main:app --host 0.0.0.0 --port 8000

# In a separate terminal, start the Streamlit app
streamlit run streamlit_app/app.py

Docker Deployment

  1. 1.Build the Docker image:
bash
docker build -t finance-assistant .
  1. 1.Run the container:
bash
docker run -p 8000:8000 -p 8501:8501 finance-assistant

๐Ÿš€ Framework & Toolkit Comparison

ComponentTechnologyBenefits
Backend FrameworkFastAPIHigh performance, async support, automatic API documentation
FrontendStreamlitRapid development, interactive widgets, easy deployment
AI FrameworkLangChainModular agent architecture, extensive tool integration
Vector StoreFAISSEfficient similarity search, optimized for large datasets
Speech ProcessingSpeechRecognition + gTTSCross-platform support, multiple language support

๐Ÿ”‘ Key Features

  • โ€”Multi-source financial data aggregation
  • โ€”Voice-based interaction
  • โ€”Real-time market data processing
  • โ€”Document analysis and summarization
  • โ€”Interactive financial visualizations
  • โ€”Cross-platform compatibility

๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

๐Ÿ“ License

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