--- 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