Inspiration

The 2025 floods in Pakistan affected nearly 7 million people, yet many fatalities occurred simply because warnings didn't reach the right people in a format they understood. We noticed a "fragmentation gap": the data exists within agencies like the NDMA and PMD, but it’s buried in multi-page PDFs and technical jargon. We were inspired by Japan’s J-Alert system to build a localized, intelligent version that speaks the language of the people.

What it does

Realtime Emergency Alert Collection Hub is an automated "Collection → Processing → Distribution" pipeline.

  • Continuous Scrape: Every 10 minutes, our system scans official government sources for new reports.
  • AI Interpretation: Using a VLM to read all information from test, maps and charts, we transform the collected documents into a Common Alerting Protocol (CAP)-inspired structure that is easily interpretable by laymen and is compliant with other systems.
  • Interactive Visualization: Alerts are plotted on a high-fidelity map dashboard where users can filter by disaster type, search their locality, and view distilled "Information Cards" instead of long technical documents.

How we built it

We built a robust, cloud-native stack designed for speed and scale:

  • The Brain: We utilized the Ernie 4.5 VL in reasoning mode with few-shot prompting to handle the messy, inconsistent formats of official reports.
  • The Pipeline: A BeautifulSoup scraper for data extraction, geocoding place names to polygons and then feeding into a PostgreSQL (PostGIS) database for spatial data storage.
  • The Interface: A beautiful frontend built with React.js and Mapbox.
  • Infrastructure: Hosted on a modular architecture using Supabase to ensure the scrapers and AI workers don't bottleneck each other.

Challenges we ran into

Transformation

The biggest hurdle was unstructured data. Official reports aren't just text; they are often images of maps or tables inside PDFs. While we initially tried first extracting markdown and then using a specialized reasoning LLM like the Ernie X1.1 to transform the data, we found out that this approach lost a lot of the context present in maps and charts. To circumvent this, we moved to a unified pipeline utilizing Ernie 4.5 VL in reasoning mode to perform the transformation of the documents into structured JSON.

JSON structure

Another issue we faced was the model not producing the desired JSON even after extensive prompt engineering. We moved on to a few-shot prompting approach by giving the model examples of documents perfectly transformed to JSON. This drastically improved results.

Geocoding

We faced a lot issues where compositional descriptions of regions were given in the documents. We used a heuristics based approach to solve this for now. For examples, we asked the VLM to transform something like "areas downstream of Tarbela Dam" to the district containing the dam, utilizing the model's world knowledge. For directional descriptions like "Northern Sindh", we used bounding box intersections to extract the desired districts from the provinces area.

Accomplishments that we're proud of

We successfully reduced the "Information-to-Action" window. Seeing the system autonomously scrape a technical NDMA bulletin and, within minutes, render a clean, alert icon over a specific tehsil on our map was a "eureka" moment. We’ve managed to create a system that is independent of telecom provider restrictions, making it accessible to anyone with a data connection.

What we learned

We learned that in disaster management, UX is a safety feature. A pretty map isn't just for show, it reduces the cognitive load on a panicked user. We also learned that multimodal AI (Vision + Text) is no longer optional for government-tech; it is the only way to process the sheer volume of legacy document formats still in use.

What's next for REACH

This prototype is just the beginning. Our next steps include:

  • Community Intelligence: Implementing a portal for verified field officers to report ground-level data (like broken bridges) directly onto the map.
  • Local Languages: Integrating LLM translation to provide alerts in Urdu, Sindhi, Pashto, and Punjabi.
  • Predictive Geofencing: Moving from "where the rain is" to "where the water will flow" by integrating more sophisticated hydraulic modeling.
Share this project:

Updates