After Bangkok’s September 2026 flood, one question keeps coming up in our conversations with factories, estates and local administrations: can’t we just use AI — ChatGPT, Claude, an LLM — to predict the next one?
The honest answer has two parts. An LLM on its own is the wrong tool to forecast a water level. But an LLM is a very good tool for almost everything around the forecast — and the part most projects underestimate isn’t the AI at all. It’s the gauge data the forecast depends on.
This post covers what actually predicts floods, why water-level data is the real bottleneck, where drones help (and where they don’t), and where an LLM earns its place in the system. It’s the sensing-and-AI companion to two earlier posts: Running Flood Response Like a SOC, which covers turning signals into cases and playbooks, and a digital twin for urban drainage, which covers modelling the network itself.
1. Why an LLM is the wrong tool for the forecast itself
A flood forecast is a numerical answer to a physical question: given rainfall, upstream flows, soil moisture and terrain, what will the water level be at this gauge, at this time? The answer comes from how water moves through a catchment and a channel.
A large language model is trained to predict text. Ask one "will the river at our site overflow on Thursday?" and it will produce a fluent, confident-sounding answer — without any live gauge data, without any model of your catchment, and without any way to know it’s wrong. For most questions that’s an inconvenience. For a flood warning it’s dangerous: a plausible wrong number is worse than no number.
So the first rule is simple: never let an LLM invent a water level. Every number in a flood warning should trace back to a sensor reading or a forecast model output.
2. What actually predicts floods
| Approach | What it is | Strengths | Limits |
|---|---|---|---|
| Physics-based models | Hydrological and hydraulic simulation, such as SWMM or HEC-RAS | Explainable, handles pumps, gates and backwater; works for "what if" questions | Needs calibration, network data and a hydrologist |
| ML time-series models | LSTMs and similar models trained on rainfall and gauge history | Strong accuracy on rivers with good records; fast | Needs years of gauge data to train well |
| Time-series foundation models | Pretrained models such as TimesFM and Chronos | Reasonable zero-shot forecasts where records are short | Not hydrology-aware; a baseline, not an authority |
| LLMs | General language models | Explain, translate, summarise, answer questions over data | Do not forecast water levels |
The best-known AI flood system is a good example of the second row. Google’s Flood Hub runs on LSTM models, and its Nature paper showed that AI-based forecasts in ungauged watersheds at up to five days’ lead time were as reliable as a leading global system’s same-day nowcasts. According to Google Research, the system provides river forecasts up to seven days ahead across more than 80 countries.
Two details from that work matter for anyone planning a local system:
- It was trained on data from 5,680 streamflow gauges. Even the most advanced AI forecast is built on gauge records.
- It targets riverine floods. Google itself lists flash floods and urban floods as future work. A factory drain, a municipal canal or a small tributary is exactly the kind of place a global river model won’t resolve for you.
The row about foundation models is worth a note too. Chronos is interesting precisely because it borrows language-model architecture: it turns a time series into tokens and predicts the next ones. That’s the closest thing to "an LLM that predicts water levels" — and it’s a specialised numeric model, not a chatbot.
3. The real bottleneck: gauge data
Every approach in that table depends on the same input: frequent, trustworthy water-level readings at the places you care about.
In Thailand, national data has improved a lot — ThaiWater now brings together data from dozens of agencies, as we described in the Flood SOC post. But national stations are spaced for national decisions. Your site’s perimeter drain, the canal you discharge into, or the tributary two kilometres upstream is often measured by a painted staff gauge that someone reads by eye — once or twice a day, if at all, and least often at night during a storm.
That’s the gap: the forecast models are ready, and the local data isn’t. There are three ways to close it.
4. Three ways to capture water levels
| Fixed level sensor | Fixed camera reading a staff gauge | Drone survey | |
|---|---|---|---|
| How it works | Radar or ultrasonic sensor above the water | IP camera photographs the gauge; computer vision reads the level | Drone flies a route, photographs gauges and the surrounding area |
| Update rate | Every 1–15 minutes | Every 1–15 minutes | A few flights a day at most |
| During heavy rain and wind | Yes | Yes, with rain-resistant housing and lighting | Usually no |
| At night | Yes | With IR lighting | Restricted |
| Coverage | One point | One point, plus a visual record | Wide area, including places with no gauge |
| Human check | Hard — a number only | Easy — every reading has a photo | Easy |
| Best use | The continuous feed for the forecast | The continuous feed, with evidence | Mapping, validation and discharge measurement |
The key point: flood forecasting needs continuous data, and drones produce snapshots. A river can rise faster in the hour you aren’t flying than in the whole day you are. And heavy rain and strong wind — the conditions you most need data for — are exactly when drones can’t fly safely.
So fixed sensors and gauge cameras form the backbone. Drones earn their place for the things fixed points can’t do:
- Flood-extent mapping. Orthophotos show which areas are actually underwater — the best way to check whether a forecast was right.
- Water surface levels where there’s no gauge, using photogrammetry or LiDAR.
- Surface flow velocity from video, using a technique called LSPIV (large-scale particle image velocimetry). Combined with a surveyed channel cross-section, that gives discharge — the flow volume hydrologists need, not just the level.
- Checking and calibrating fixed sensors, and inspecting banks, gates and outfalls after an event.
If you plan routine drone work in Thailand, budget for compliance too. Camera drones must be registered with both CAAT and the NBTC, operators need third-party liability insurance, flights are normally within visual line of sight and in daylight unless specifically authorised, and PDPA applies when footage captures people. Restricted zones change, particularly near borders, so check the current CAAT rules for each area before every campaign.
5. Reading a gauge from an image: computer vision first, LLM as second opinion
Whether the image comes from a fixed camera or a drone, something has to turn pixels into a water level. There are two options, and they’re best used together.
Dedicated computer vision — a detection or segmentation model trained on your own gauges — finds the gauge, finds the waterline, and reads the level. It’s fast, cheap per image, consistent, and gives a confidence score. This should be the primary reader.
A multimodal LLM can also read a gauge photo from a plain prompt, with no training. That makes it excellent for prototyping and useful as a second opinion on hard images: glare, debris, a partly submerged gauge. But it’s slower, costs more per image, and can misread with complete confidence. It should never be the only thing standing between a photo and a flood alert.
The logic that combines them is small and worth getting right:
from dataclasses import dataclass
from datetime import datetime
MIN_CONFIDENCE = 0.85 # below this, the CV reading needs a second opinion
AGREE_M = 0.05 # CV and second reader must agree within 5 cm
MAX_RATE_M_PER_H = 0.6 # tuned per station from its flood history
@dataclass
class GaugeReading:
station: str
level_m: float | None
confidence: float
image_path: str
taken_at: datetime
def triage(reading, previous, second_reader):
"""Decide whether an image-based gauge reading can feed the forecast."""
if reading.level_m is None:
return "human_review" # gauge not found in image
if reading.confidence < MIN_CONFIDENCE:
second = second_reader(reading.image_path) # multimodal model
if second is None or abs(second - reading.level_m) > AGREE_M:
return "human_review"
if previous is not None:
hours = (reading.taken_at - previous.taken_at).total_seconds() / 3600
if hours > 0 and abs(reading.level_m - previous.level_m) / hours > MAX_RATE_M_PER_H:
return "urgent_verify" # misread, or a real surge
return "accept"
Note the last check. A reading that jumps faster than the station has ever risen might be a misread — or it might be the flood. It shouldn’t be silently discarded. It goes to a person urgently, with the photo attached. That’s the same principle as treating a silent sensor as a signal, described in the Flood SOC post.
6. Where the LLM earns its place
With trustworthy readings flowing into a real forecast model, the LLM finally has a job it’s good at:
- Turning forecasts into warnings people act on. "Gauge 7 projected to exceed 4.2 m at 03:00" becomes a clear message in Thai, English, Japanese, Chinese or Myanmar, written differently for a line supervisor, a farmer or a village head — with the numbers inserted from the model, never generated.
- A natural-language interface to the data. An operator asks "which stations are rising fastest in the last six hours?" or "how does today compare with last October?" The LLM calls the database and forecast tools, and answers from their results.
- Reading the unstructured stream. Citizen photos and LINE messages, field reports, news and social posts get extracted into location, time and severity much faster than people can read them.
- Answering from your own documents. Evacuation plans, dam operating rules, BCP procedures and past event reports become searchable through retrieval-augmented generation, so answers are grounded in your procedures.
- Writing up the drone survey. Turning a flight’s findings into a short report for management or the local administration.
For many organisations, especially public bodies and factories with data-sovereignty requirements, this LLM layer should run on-premise, so sensor data, resident contacts and internal plans never leave their infrastructure.
7. The architecture
flowchart TD
S1["Radar and ultrasonic level sensors"] --> Q["Reading validation and triage"]
S2["Fixed cameras on staff gauges"] --> CV["Computer vision gauge reader"]
S3["Drone survey images"] --> CV
CV --> Q
VLM["Multimodal model second opinion"] --> Q
Q -->|accepted| DB["Time series store"]
Q -->|doubtful| HR["Human review with photo"]
P["ThaiWater and rain forecast feeds"] --> DB
DB --> FM["Forecast models ML or hydraulic"]
FM --> AL["Alert rules and Flood SOC cases"]
S3 --> MAP["Flood extent and discharge mapping"]
MAP --> FM
AL --> LLM["On-premise LLM layer"]
DB --> LLM
LLM --> OUT1["Multilingual alerts via LINE and SMS"]
LLM --> OUT2["Operator questions and answers"]
LLM --> OUT3["Event and survey reports"]
Read it top to bottom: sensors and cameras feed a validation step; only accepted readings reach the forecast models; the forecast drives alert rules; and the LLM sits at the end, explaining and communicating — never at the start, inventing.
8. What exists today, what’s built per project, and what’s out of scope
Available today:
- simpliLLM, our on-premise LLM platform, for the language layer: alerts, operator Q&A and document search without sending data off-site.
- Sensor ingestion, gateways and dashboards through our edge and distributed computing service.
- simpliSOC components for alerting and case management, and our TAK integration service for field coordination.
Built per engagement (there is no packaged flood product):
- The computer-vision gauge reader, trained and tested on your own gauges, day and night.
- The reading-triage logic, thresholds and human-review workflow.
- Integration of forecast models — ML time-series models, foundation-model baselines or a partner’s hydraulic model — calibrated to your stations.
- Processing pipelines for drone imagery: extent maps, level estimates and discharge, with licensed drone operators.
- LLM prompts, tools and message templates for your languages and audiences.
Out of scope:
- Flying drones and supplying drone or sensor hardware. We work with licensed operators and hardware partners.
- Official public warnings and evacuation orders, which remain with the Department of Disaster Prevention and Mitigation, the Thai Meteorological Department and local authorities.
- Certified hydrological forecasts and engineering sign-off, which belong to qualified hydrologists and engineers.
FAQ
Can ChatGPT or Claude tell me if my area will flood this week?
Not reliably. Without live gauge data and a forecast model, an LLM can only produce a plausible-sounding guess. Use official forecasts and your own sensors for the numbers, and use the LLM to explain and communicate them.
Isn’t Google Flood Hub enough?
It’s a valuable input for larger rivers. But it targets riverine floods, and Google lists flash and urban floods as future work. Site drains, canals and small tributaries still need local gauges.
Should we buy drones or cameras first?
For forecasting, fixed sensors and gauge cameras first — they give the continuous record. Add drones for mapping, validation and discharge measurement.
Can a multimodal LLM read our staff gauges?
Yes, often well, and it’s a quick way to prototype. In production, use a trained computer-vision reader as the primary and the multimodal model as a second opinion, with a person reviewing any disagreement.
Does our data have to leave our site?
No. The LLM layer can run on-premise, and sensor data, images and contact lists stay on your infrastructure.
What does a first project look like?
A thin slice: a handful of gauges on one waterway, cameras or sensors on each, a validated time series, one forecast approach, and one alert channel — tuned against a real rainy season before expanding.
Talk to us
Send us a list of the gauges that matter to your site or district, with one daytime and one night-time photo of each, and tell us how they’re read today — by whom and how often. We’ll come back with a thin-slice plan: which gauges get a camera, which need a sensor, where a drone survey adds value, and which forecast approach fits the data you have.
Email hello@simplico.net.
Sources:
- Global prediction of extreme floods in ungauged watersheds — Nature, March 2024
- Using AI to expand global access to reliable flood forecasts — Google Research
- TimesFM — Google Research
- Chronos: Pretrained models for time series forecasting — Amazon Science
- Drones in Thailand 2026: Rules, Registration and No-Fly Zones — Drone Association Thailand
- Running Flood Response Like a SOC — Simplico
- When the Canals Are Full: A Digital Twin for Urban Drainage — Simplico
Latest Posts
- Building a CoT Bridge: How to Get NVR, AIS and Drone Feeds onto a TAK Map Without Flooding It October 1, 2026
- Inside simpliSSO: What a 12-Module Identity Rollout Actually Delivers, from Azure AD Federation to the Last Legacy ERP October 1, 2026
- Running Flood Response Like a SOC: A Detection-and-Response Blueprint for Thailand’s Water Crises September 26, 2026
- Japan’s Active Cyber Defense Law Goes Live October 1: What “Report Promptly, Detail in 30 Days” Demands From Your SOC September 24, 2026
- From Whiteboard to Dashboard: Vehicle Load Planning Meets Live GPS Tracking September 22, 2026
- From Paper to Pipeline: Digitizing Multi-Factory Precast Slab Production, Warehouse, and Delivery September 20, 2026