GridMind

About GridMind · Overview

From live grid data to plain-language answers

GridMind is AI-powered electricity demand forecasting and grid intelligence, built and tested on Delhi's live public data (SLDC Delhi load, Open-Meteo weather). It forecasts demand and explains it in plain words. Machine learning makes every number; the AI only explains them. Short forms are explained in the glossary under Technical details.

  • Reads Delhi's live electricity demand every 5 minutes and the weather every hour, by itself.
  • Forecasts demand for the next 48 hours, hour by hour, with a likely range — and locks a day-ahead forecast every night.
  • Checks every forecast against the real load and scores it against two simple guesses.
  • Explains it all in plain words: an hourly AI briefing, and answers to any question in the AI panel.

Watch the walkthrough

A 5-minute tour: why GridMind exists, each screen, the AI panel answering real questions, and how to run it. Recorded in the real app on live SLDC Delhi data (6 Oct 2026); narration is a computer voice.

0:00 / 5:03

The problem

  • Demand swings hard

    From under 2,000 MW on a winter night to a record 8,748 MW on 30 June 2026. Heat, humidity, holidays and festivals all move it.

  • Power is bought a day ahead

    The grid team must know tomorrow's demand to buy enough power and keep spare capacity for the peak. Too little means power cuts; too much means paying for power nobody uses.

  • The data is scattered

    Load is on the SLDC website, weather elsewhere. Turning it into a forecast and an explanation takes time a control room does not have.

The AI-driven solution

AI is the way in, not an add-on: the briefing and the AI panel are where you start. Machine learning makes every number; the language model explains it, using tools to fetch each one.

  1. 1. Live data

    Delhi's power use every 5 minutes from the grid operator (SLDC), plus the weather.

  2. 2. Forecast

    A machine-learning model predicts demand for the next 48 hours, with a likely range.

  3. 3. Explanation

    An AI assistant explains the numbers in plain words; it never makes a number up.

  4. 4. Human decision

    People plan power purchase and the evening peak. GridMind never controls the grid.

Before and after

"Before" is the usual manual routine, not measured at a specific utility.

The same tasks before and with GridMind
TaskBeforeWith GridMind
Getting the dataOpen the SLDC website and a weather site, copy the numbers by hand.Load every 5 minutes and weather every hour, saved automatically with the time received.
Forecasting tomorrowExperience and spreadsheets, usually a single number.An ML forecast for the next 48 hours, re-issued every hour, with a likely range (P10–P90).
Starting the shiftBuild the picture yourself before you can plan.An AI briefing, rewritten every hour, is ready when you open the app.
Knowing how good the forecast isChecked later, if at all.Each day scored at 01:00 against the real load and against two simple guesses.
Spotting a data problemNoticed when someone happens to look."Live feed delayed" on every screen after 15 minutes without a reading.
Answering "why?" or "what if?"Ask an analyst, wait for them to dig.Ask in plain English; get an answer with a chart, sources and an audit id.

The side menu: what each screen shows

Briefing

  • Three cards: current demand (with the time of the latest reading), how it compares with the forecast, and today's expected peak.
  • "What this means": the AI summary, written every hour, with the time it was written.
  • "Explain today's forecast" opens the AI panel; the demand chart and more detail follow below.

Data: SLDC Delhi load, Open-Meteo weather, GridMind forecasts. The briefing is read from the database, so opening the page costs no AI call.

Live grid

  • Status, the time of the latest reading, and four tiles: demand, expected peak, forecast error so far, temperature.
  • Demand chart, today 00:00 to tomorrow 24:00: actual demand every 5 minutes (orange) and the latest forecast with its likely range (dashed blue line and band). Last night's forecast can be switched on above the chart. Gaps mean SLDC published no reading.
  • Temperature today and tomorrow, and tomorrow's expected peak with its likely range.

Data: Updates by itself: the page gets a push the moment new data is saved; if that connection drops it refreshes every 30 seconds.

Models

  • One-sentence takeaway, then the past test (days the model never saw): how much better it is than a simple guess, how far off the daily peak was, and how often the likely range was right.
  • A side-by-side bar with two simple guesses — "repeat last week" and "repeat yesterday" — so you can see the model beats them.
  • Scores on real days since going live, shown separately, and the exact tables under "Technical details".

Data: Backtest results saved by the nightly retraining job, and daily scores saved after midnight.

About

  • This page: what GridMind does, the problem, the AI-driven solution, before vs after, each screen and the AI panel; step detail, the stack, the data schedule and the glossary under "Technical details".

Data: Static text; no live numbers.

AI panel

On the right of every screen, and ⌘K

Opens from the header button, ⌘K or "Explain today's forecast". Ask a question in plain English. You see each tool the AI uses, then the answer with a chart, table or what-if card, and "Why? · Sources". Try:

  • What is Delhi's load right now?
  • Why is tomorrow's peak higher than today's?
  • How accurate were we yesterday?
  • What if it is 3 °C hotter tomorrow?

Why its numbers can be trusted

  • Numbers come from data, never from the AI

    The AI fetches every number with a tool (live load, forecast, accuracy, weather) and only explains it.

  • Every number is checked

    Before an answer is shown, each number is matched against the tool results. If one does not match, a plain template answer is shown instead.

  • Every AI answer is logged

    Question, tools used, answer and model go into an append-only audit log; each answer shows its audit id and "Why? · Sources".

  • Read-only by design

    GridMind reads data and gives advice. It has no way to switch, dispatch or change anything on the grid.

Technical details— each step, the stack, the data schedule and the glossary

Each step in detail

Five steps run on their own, all day. Numbers come from data and the ML model; the AI only explains them.

  1. 1. Collect live data

    Live data

    Every 5 minutes GridMind reads Delhi's load from the SLDC website. Every hour it reads the weather forecast for New Delhi from Open-Meteo.

    Result: Real load and weather, stored with the time they were received.

  2. 2. Forecast demand

    Machine learning

    A machine-learning model trained on Delhi's load since 2023 forecasts the next 48 hours, hour by hour. It looks at yesterday's and last week's load, temperature and humidity, the day of the week and public holidays.

    Result: A most likely value and a likely range for every hour. The forecast for each day is locked at 00:05 that night.

  3. 3. Check against reality

    Fixed ruleMachine learning

    As the real load arrives, GridMind compares it with the locked forecast and scores the error. Fixed rules flag a late data feed (no reading for 15 minutes) and heat days (forecast maximum 40 °C or more).

    Result: "In line with / higher / lower than forecast", error so far today, daily accuracy scores, "Live feed delayed" banner and heat-day flag.

  4. 4. Explain in plain words

    AI (LLM)

    The AI writes the hourly briefing and answers questions. It calls tools for every number and never makes one up; each number is checked against the tool results before it is shown.

    Result: Short answers with charts, "Why? · Sources" and an audit id.

  5. 5. People decide

    People

    Control-room staff use the forecast and the explanations to plan power purchase and the evening peak. GridMind only reads data; it never switches anything on the grid.

    Result: Decisions stay with people. Every AI answer is in the audit log.

Under the hood

Forecast model
LightGBM quantile models (P10, P50, P90) on load lags (yesterday, last week), temperature, humidity, weekday and holidays. Retrained nightly; tested on unseen days against "same hour last week" and "same hour yesterday".
AI assistant
An LLM with tool use over 7 read-only tools (live load, load history, forecast, accuracy, explanation, what-if, weather). A fast model handles chat; a stronger model handles deep analysis. Tokens and tool steps stream to the screen.
Grounding
Every number in an answer is matched against the tool results before it is shown; on a mismatch a plain template answer is shown instead.
One AI adapter
All LLM calls go through one module, so the model provider is a setting, not a code change.
Audit trail
Question, tools, answer and model go into an append-only, hash-chained log in PostgreSQL.
Apps
Next.js web app, Python FastAPI service for data and ML, PostgreSQL 16. New data reaches open screens by push (SSE).

How live data is fetched

  1. SLDC Delhi + Open-Meteo
  2. GridMind jobs (every 5 min)
  3. Database
  4. ML forecast
  5. Screens + AI panel
What runs when
WhenWhatSource
Every 5 minDelhi load for today (and yesterday until 00:30), Delhi total and each DISCOMSLDC Delhi load page
When the load page lagsThe single "Delhi load" value from the SLDC home page, replaced once the 5-minute rows arriveSLDC Delhi home page
Every hour (:02)Weather for the last 2 days and a 48-hour forecast, kept exactly as issuedOpen-Meteo
Every hour (:05)New rolling forecast for the next 48 hoursGridMind ML model
Every hourBriefing facts from the tools, then the AI briefing textGridMind tools + LLM
00:05 dailyDay-ahead forecast for the day, frozen (used for the error score)GridMind ML model
01:00 dailyYesterday's forecast scored against the real loadGridMind
02:00 dailyModel retrained on all history; accuracy test re-runGridMind ML model
Every 15 minDISCOM drawl schedules (each revision) and grid frequencySLDC Delhi website data
Every hour (:10)Power exchange prices, day-ahead and real-time marketsIEX
07:45 dailyTomorrow's forecast in 96 blocks of 15 minutes, for Delhi and each DISCOM, frozen (screens next)GridMind ML model
Every 15 minUpdate for the next 2 hours (8 blocks), for Delhi and each DISCOM (screens next)GridMind ML model
02:30 daily15-minute block models retrainedGridMind ML model
  • Polite fetching: only the requests each job needs, with a name that identifies GridMind. SLDC has no documented API: load comes from the public table on its load page; schedules and frequency from the data behind its website.
  • Bad values (blank, zero, negative, or more than twice the recent maximum) are dropped. Missing readings stay missing — they show as gaps, never filled in.
  • The SLDC load page often runs 30–60 minutes behind. If nothing new arrives for 15 minutes, every screen shows "Live feed delayed (last: HH:MM IST)" and keeps the last data.
  • History since 2023 is saved with the app, so it still works without internet (shown as history, not live).

Glossary: short forms and words

SLDC
State Load Despatch Centre, Delhi — runs Delhi's grid and publishes its load on delhisldc.org.
DISCOM
Distribution company. Delhi's are BRPL (BSES Rajdhani), BYPL (BSES Yamuna), TPDDL (Tata Power Delhi Distribution; "NDPL" on the SLDC page), NDMC (New Delhi Municipal Council) and MES (Military Engineer Services).
MW
Megawatt — unit of power demand. Delhi used about 1,700–8,700 MW in 2023–2026 (SLDC data), depending on the hour and season.
Load / demand
How much electricity Delhi is using at that moment, in MW.
Peak
The highest hourly load of the day, and when it happens.
IST
India Standard Time (UTC + 5:30). All times in the app are IST.
UTC
Coordinated Universal Time — the world reference clock.
P50
The forecast's most likely value (half the time the real load is higher, half the time lower).
P10–P90
The forecast range: the real load should fall inside it about 8 times in 10.
Day-ahead
Forecast for the whole day, frozen at 00:05 IST — what the forecast is judged on.
Rolling forecast
Re-issued every hour with the newest data, for the next 48 hours.
MAPE
Mean Absolute Percentage Error — the average forecast error in %. Lower is better.
Backtest
Testing the model on past days it never saw during training.
Seasonal-naive
Simple guess: "same hour last week". Persistence: "same hour yesterday". The model must beat both.
Heat flag
Forecast maximum temperature ≥ 40 °C (IMD heat-wave criterion for the plains).
IMD
India Meteorological Department.
AI
Artificial intelligence — here, the ML model plus the LLM.
ML
Machine learning — the model that calculates every forecast (LightGBM, a gradient-boosted tree model).
LLM
Large language model — the AI that writes the briefing and answers questions, using tools for every number.
Tool
A small function the AI calls to read data (live load, load history, forecast, accuracy, explanation, what-if, weather).
SSE
Server-Sent Events — how the page receives new data the moment it is saved, without reloading.
⌘K / Ctrl+K
Opens the command bar: jump to a screen or ask the AI.
CC BY 4.0
Creative Commons licence of the Open-Meteo data: free to use with credit.

Badges on this page

  • Live data
  • Machine learning
  • Fixed rule
  • AI (LLM)
  • People

Sources: live load — State Load Despatch Centre, Delhi (delhisldc.org), monitoring data, not official. Weather — Open-Meteo.com (CC BY 4.0). Record peak: Republic World, 30 June 2026.