Spaces:
Running
Running
| title: SentinelOne | |
| emoji: π°οΈ | |
| colorFrom: blue | |
| colorTo: green | |
| sdk: gradio | |
| sdk_version: 5.33.0 | |
| app_file: app.py | |
| pinned: false | |
| license: mit | |
| short_description: AI Agents for climate risk assessment and monitoring | |
| # π°οΈ SentinelOne β Climate Risk Assessment Platform | |
| Welcome to our submission for the **Hugging Face GenAI Agents & MCP Hackathon**! | |
| This project showcases **a multi-agent system** powered by **Gradio** and **Smolagents**, designed to monitor, process, and analyze environmental data to **assess climate-related risks and provide recommendations**. | |
| Link to demo : https://youtu.be/aLK_HUSRl4w | |
| --- | |
| ## π¨π‘π **IMPORTANT NOTICE FOR HACKATHON!** π€π°οΈπ¨ | |
| π **If our project wins a prize at the hackathon, we will use the award to purchase additional API credits so we can continue development and maintain the Agents for everyone.** π | |
| π Your support will directly contribute to making this open-source climate risk platform sustainable and accessible! π | |
| π **Thank you for your trust and your votes!** π | |
| --- | |
| ## π Project Overview | |
| This system leverages autonomous agents that collaborate to perform complex data science workflows: | |
| - π°οΈ **Risk Assessment Agent**: Analyzes environmental data and assesses potential climate-related risks. | |
| - π **Recommendation Agent**: Provides actionable recommendations based on risk assessments. | |
| - π― **Orchestrator**: Coordinates the workflow (deterministic for now) between different agents and tools. | |
| --- | |
| ## ποΈ Data Sources & External APIs | |
| Our platform relies on **real, authoritative, and up-to-date environmental data sources**. Each data stream is directly queried and processed by dedicated AI tools, enabling both precise geolocation and a truly holistic risk assessment. | |
| **Here is a detailed overview of the APIs and data sources leveraged by the agents:** | |
| ### 1. **OpenStreetMap β Geolocation & Mapping** | |
| - **Purpose:** Converts city names or user input into precise latitude/longitude coordinates. | |
| - **API Used:** [Nominatim API](https://nominatim.org/release-docs/develop/api/Search/) | |
| - **Usage:** All risk assessments start by locating the point of interest. This is the backbone for all downstream weather, risk, and local resource queries. | |
| ### 2. **Open-Meteo β Weather, Climate, Marine & Flood Data** | |
| A suite of APIs offering a wide spectrum of meteorological and environmental data: | |
| - **Current & Forecasted Weather:** | |
| - `api.open-meteo.com/v1/forecast` | |
| - Daily/weekly forecasts: temperature, precipitation, wind, humidity. | |
| - **Historical Weather:** | |
| - `archive-api.open-meteo.com/v1/archive` | |
| - Up to 50 years of daily meteorological records for any coordinate. | |
| - **Climate Change Projections:** | |
| - `climate-api.open-meteo.com/v1/climate` | |
| - Multi-model climate projections (1950β2050), covering temperature, rainfall, humidity, wind, radiation, soil moisture, etc. | |
| - **Flood Risk:** | |
| - `flood-api.open-meteo.com/v1/flood` | |
| - River discharge, flood probability, and trends, updated daily. | |
| - **Marine & Coastal Data:** | |
| - `marine-api.open-meteo.com/v1/marine` | |
| - Daily oceanic conditions: wave heights, swell, periods, and wind on sea. | |
| - **Satellite Solar Radiation:** | |
| - `satellite-api.open-meteo.com/v1/archive` | |
| - Hourly solar and terrestrial radiation from satellite observation. | |
| - **Air Quality:** | |
| - `air-quality-api.open-meteo.com/v1/air-quality` | |
| - Hourly PM10, PM2.5, CO, NO2, SO2, ozone, pollen, and AQI. | |
| **Open-Meteo** is open, reliable, and integrates data from a variety of meteorological institutes. | |
| ### 3. **USGS β Earthquake Data** | |
| - **Purpose:** Provides real-time and historical seismic activity near a given location. | |
| - **API Used:** [USGS Earthquake Catalog API](https://earthquake.usgs.gov/fdsnws/event/1/) | |
| - **Usage:** Retrieves all seismic events (magnitude, time, depth, location) in a configurable radius and time window (default: last 30 days, within 100 km). | |
| ### 4. **NASA FIRMS β Wildfire Detection** | |
| - **Purpose:** Detects active wildfires using data from earth observation satellites. | |
| - **API Used:** [NASA FIRMS (Fire Information for Resource Management System)](https://firms.modaps.eosdis.nasa.gov/) | |
| - **Data:** MODIS & VIIRS satellite observations, real-time fire detections (location, brightness, confidence, time, etc.). | |
| - **Authentication:** Requires a NASA FIRMS API key (set in `.env`). | |
| - **Usage:** All fire events in the last 2 days within a given radius (default: 50km) of the query point. | |
| ### 5. **OpenStreetMap β Local Emergency Resources** | |
| - **Purpose:** Finds nearest hospitals, fire stations, and police stations for a given location. | |
| - **API Used:** [Overpass API](https://wiki.openstreetmap.org/wiki/Overpass_API) | |
| - **Usage:** Critical for vulnerability assessment and emergency preparedness, especially in high-risk areas. | |
| --- | |
| ## π¦ Data Integration Logic | |
| All data is retrieved in real time and cross-referenced using geospatial coordinates. The system is designed to: | |
| - Query and aggregate up-to-date meteorological, geophysical, and environmental signals | |
| - Offer long-term context (climate, trends) and immediate alerts (fire, flood, quake, air pollution) | |
| - Provide geographic context: local emergency resources and infrastructural exposure | |
| - Output both raw data and actionable visualizations (charts, maps, PDF reports) | |
| **Example API calls in our workflow:** | |
| - π¦οΈ Weather: Open-Meteo | |
| - π₯ Wildfire: NASA FIRMS | |
| - π Flood: Open-Meteo Flood API | |
| - π Mapping & Resources: OpenStreetMap Nominatim & Overpass | |
| - π Seismic: USGS | |
| - π Air Quality: Open-Meteo Air Quality API | |
| - ποΈ Marine and coastal data: Open-Meteo Marine API | |
| - βοΈ Solar radiations: Open-Meteo Satellite API | |
| - π Climate Change: Open-Meteo Climate API | |
| --- | |
| ## π§© Core Components | |
| ### ποΈ Risk Assessment Agent (`risk_agent.py`) | |
| - **Role:** Analyzes environmental data and assesses risks | |
| - **Responsibilities:** | |
| - Process environmental data | |
| - Evaluate risk levels | |
| - Generate risk reports | |
| ### π§ Recommendation Agent (`recommendation_agents.py`) | |
| - **Role:** Provides actionable recommendations | |
| - **Responsibilities:** | |
| - Analyze risk assessments | |
| - Generate tailored recommendations | |
| - Prioritize actions | |
| ### π§ Tools (`tools.py`) | |
| - Data processing utilities | |
| - Mapping utilities (`mapping_utils.py`) | |
| - Configuration management (`config.py`) | |
| ### π¨ User Interface (`ui.py`) | |
| - Interactive Gradio interface | |
| - Real-time data visualization | |
| - User-friendly controls | |
| --- | |
| ## π§βπ» Authors | |
| - Tristan DARRIGOL β AI Consultant @Wavestone | |
| - ClΓ©ment PEPONNET β AI Agents engineer @Wavestone | |
| - Paul BARBASTE β AI Agents architect @Wavestone & AI Researcher @Inclusive Brains | |
| --- | |
| ## π License | |
| This project is licensed under the MIT License |