EcoSphereAI is a Streamlit-based application leveraging the power of Gemini and traditional machine learning models to provide actionable insights for optimizing network infrastructure, resource allocation, and sustainability efforts. It offers a suite of AI-powered tools designed to address various aspects of network management, from energy optimization to disaster preparedness and predictive maintenance.
- Interactive Dashboard: Visualize key metrics, node locations, and regional analysis for a comprehensive overview of your network. Upload your own datasets for custom analysis.
- AI-Powered Tools: Leverage nine specialized AI tools, each designed for a specific task:
- Energy & CO₂ Optimizer: Predicts energy usage and carbon emissions, offering optimization strategies.
- Maintenance Forecaster: Predicts potential maintenance issues based on historical data and node characteristics.
- Disaster Assessor: Assesses disaster risk levels based on environmental factors and infrastructure vulnerability.
- Traffic Forecaster: Predicts future traffic load to inform capacity planning and resource allocation.
- Procurement Planner: Optimizes procurement decisions by predicting costs, delivery times, and required quantities.
- Connectivity Insights: Provides region-specific connectivity insights and recommendations.
- Deployment Strategist: Plans network deployments by predicting costs and timelines.
- Network Node Monitor: Monitors node performance, predicts data usage, peak usage, and downtime events.
- Sustainability Tracker: Tracks and reports on key sustainability metrics, providing recommendations for improvement.
- Gemini Integration: Each AI tool integrates with Google's Gemini for advanced natural language processing, providing insightful and actionable recommendations based on predictions.
- Session Management: Save and review past sessions for each AI tool, enabling tracking and analysis of historical predictions and insights.
- Ticketing System: Built-in ticketing system for reporting issues, providing feedback, and requesting support.
- User Authentication: Secure user login and signup functionality with password validation.
- Customizable User Profiles: Update user information, including full name, username, password, and avatar.
- Clone the repository:
git clone https://github.com/mmfarabi/EcoSphereAI.git
- Navigate to the project directory:
cd EcoSphereAI
- Install the required packages:
pip install -r requirements.txt
- Set up your Gemini API key:
- Obtain a Gemini API key from https://ai.google.dev/gemini-api/docs/api-key
- Replace
"gemini_api_key"
in the code with your actual Gemini API key.
- Run the app:
streamlit run app.py
- Login/Signup: Create an account or log in with your credentials.
- Dashboard: Explore the main dashboard for an overview of your network.
- AI Tools: Navigate to the desired AI tool using the sidebar.
- Input Data: Provide the required input data for the selected tool.
- Predict: Click the "Predict" button to generate predictions and insights.
- Sessions: Review past sessions and download data.
- Tickets: Submit tickets for issues or feedback.
- Settings: Manage your user profile and settings.
- Streamlit: For building the interactive web application.
- Gemini: For advanced natural language processing and generation of insights.
- FLAML: For automated machine learning model training and selection.
- Scikit-learn, XGBoost, LightGBM, CatBoost: Machine learning libraries used for model training.
- Pandas: For data manipulation and analysis.
- Joblib: For saving and loading machine learning models.
- Plotly, Folium, Streamlit-folium: For data visualization.
- Pillow: For image processing.
- SQLite: For database management.
- Other:
numpy
,ray[tune]
,fsspec
Contributions are welcome! Please feel free to submit pull requests or open issues.
Apache License Version 2.0