arihant18 commited on
Commit
49a04f7
Β·
1 Parent(s): 534546c

Updated README.md

Browse files
Files changed (1) hide show
  1. README.md +111 -0
README.md CHANGED
@@ -6,4 +6,115 @@ emoji: πŸš€
6
  app_port: 8501
7
  short_description: A one stop destination for all your finance problems
8
  ---
 
9
  # Multi-Source Multi-Agent Finance Assistant
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  app_port: 8501
7
  short_description: A one stop destination for all your finance problems
8
  ---
9
+
10
  # Multi-Source Multi-Agent Finance Assistant
11
+
12
+ A powerful finance assistant that leverages multiple AI agents to provide comprehensive financial information and insights from various sources.
13
+
14
+ ## πŸ—οΈ Architecture
15
+
16
+ ![Architecture Diagram](arch.jpg)
17
+
18
+ The system is built using a multi-agent architecture with the following components:
19
+
20
+ ### Core Components
21
+
22
+ 1. **Orchestrator**
23
+ - Manages communication between different agents
24
+ - Handles request routing and response aggregation
25
+ - Built with FastAPI for high-performance API endpoints
26
+
27
+ 2. **Agents**
28
+ - **Voice Agent**: Handles speech-to-text and text-to-speech conversions
29
+ - **API Agent**: Interfaces with financial APIs (e.g., yfinance)
30
+ - **Retriever Agent**: Manages document retrieval and processing
31
+ - **Scraping Agent**: Extracts financial information from web sources
32
+
33
+ 3. **Data Ingestion**
34
+ - Handles data collection and preprocessing
35
+ - Supports multiple data sources and formats
36
+
37
+ 4. **Streamlit Frontend**
38
+ - User-friendly web interface
39
+ - Real-time interaction with the multi-agent system
40
+ - Voice input/output capabilities
41
+
42
+ ## πŸ› οΈ Setup & Deployment
43
+
44
+ ### Prerequisites
45
+ - Python 3.12+
46
+ - Docker (for containerized deployment)
47
+ - Google Cloud API credentials (for Gemini AI)
48
+
49
+ ### Local Development Setup
50
+
51
+ 1. Clone the repository:
52
+ ```bash
53
+ git clone https://github.com/yourusername/multi-source-multi-agent-finance-assistant.git
54
+ cd multi-source-multi-agent-finance-assistant
55
+ ```
56
+
57
+ 2. Create and activate a virtual environment:
58
+ ```bash
59
+ python -m venv venv
60
+ source venv/bin/activate # On Windows: venv\Scripts\activate
61
+ ```
62
+
63
+ 3. Install dependencies:
64
+ ```bash
65
+ pip install -r requirements.txt
66
+ ```
67
+
68
+ 4. Set up environment variables:
69
+ ```bash
70
+ cp .env.example .env
71
+ # Edit .env with your API keys and configuration
72
+ ```
73
+
74
+ 5. Run the application:
75
+ ```bash
76
+ # Start the orchestrator
77
+ uvicorn orchestrator.main:app --host 0.0.0.0 --port 8000
78
+
79
+ # In a separate terminal, start the Streamlit app
80
+ streamlit run streamlit_app/app.py
81
+ ```
82
+
83
+ ### Docker Deployment
84
+
85
+ 1. Build the Docker image:
86
+ ```bash
87
+ docker build -t finance-assistant .
88
+ ```
89
+
90
+ 2. Run the container:
91
+ ```bash
92
+ docker run -p 8000:8000 -p 8501:8501 finance-assistant
93
+ ```
94
+
95
+ ## πŸš€ Framework & Toolkit Comparison
96
+
97
+ | Component | Technology | Benefits |
98
+ |-----------|------------|----------|
99
+ | Backend Framework | FastAPI | High performance, async support, automatic API documentation |
100
+ | Frontend | Streamlit | Rapid development, interactive widgets, easy deployment |
101
+ | AI Framework | LangChain | Modular agent architecture, extensive tool integration |
102
+ | Vector Store | FAISS | Efficient similarity search, optimized for large datasets |
103
+ | Speech Processing | SpeechRecognition + gTTS | Cross-platform support, multiple language support |
104
+
105
+ ## πŸ”‘ Key Features
106
+
107
+ - Multi-source financial data aggregation
108
+ - Voice-based interaction
109
+ - Real-time market data processing
110
+ - Document analysis and summarization
111
+ - Interactive financial visualizations
112
+ - Cross-platform compatibility
113
+
114
+ ## 🀝 Contributing
115
+
116
+ Contributions are welcome! Please feel free to submit a Pull Request.
117
+
118
+ ## πŸ“ License
119
+
120
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.