Heatwave advisories and early warnings
A departure of +7.0 °C is a number. What a farmer needs is a decision about tomorrow's irrigation. The advisory module rewrites the validated forecast once per audience, and a duty meteorologist signs it off before it leaves the building.
Human-in-the-loop by design
Every advisory below was drafted by the language model from structured forecast fields and then reviewed and approved by a duty meteorologist. Nothing is auto-published. This is a demonstration platform; operational heat warnings for India are issued only by the India Meteorological Department.
How it works
From a validated forecast to four different letters
The generator never sees free text. It receives only the structured fields that the validation stage has already signed off, which is what keeps the output factually anchored.
Structured input to the model
{
"region" : "Interior Peninsula",
"tmax_c" : 46.4,
"normal_c" : 39.4,
"departure_c" : 7.0,
"severity" : "severe_heat_wave",
"valid_from" : "2026-09-02T00:00+05:30",
"valid_to" : "2026-09-04T00:00+05:30",
"hotspots" : 5,
"audience" : "farmers",
"language" : "en-IN"
}
The same record is re-rendered for each audience, so the four advisories can never disagree about the underlying numbers.
Guard rails on generation
- The model may only restate numbers present in the input record; any figure it introduces fails the post-generation check and the draft is rejected.
- Severity wording is drawn from a fixed vocabulary tied to the IMD classification, so "severe" always means the same threshold.
- Advisory actions are selected from a curated action library reviewed against NDMA heat action plan guidance, rather than invented per request.
- Every draft carries the forecast identifier it came from, so a published advisory can be traced back to the model run and the validating observations.
- A meteorologist must approve before dissemination; rejected drafts are logged with the reason and fed back into prompt review.
| Stakeholder | Channel | Trigger | Cadence |
|---|---|---|---|
| Citizens | SMS, platform banner, local radio | Heat wave or above | Twice daily |
| Farmers | SMS in regional language, Kisan call centre | Heat wave or above | Daily, 06:00 IST |
| Health agencies | Email bulletin, surveillance dashboard | Caution or above | Daily |
| Local authorities | Dashboard alert, email, control-room feed | Caution or above | Continuous |
| Disaster management | API push into the state EOC system | Severe or above | Continuous |