You need to agree to share your contact information to access this model

This repository is publicly accessible, but you have to accept the conditions to access its files and content.

This model is released under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 licence (CC BY-NC-SA 4.0): research, academic, personal and other non-commercial use is permitted with attribution; adaptations must be shared under the same licence; commercial use is not permitted. The original public source data remains under the Government Open Data License - India (GODL-India). Commercial use: contact surya@judicialmind.ai or hello@judicialmind.ai.

Log in or Sign Up to review the conditions and access this model content.

BharatEnergy-Chronos

Licence: CC BY-NC-SA 4.0 — research and non-commercial use only; derivatives must be shared under the same licence. Commercial use: contact surya@judicialmind.ai or hello@judicialmind.ai

Access is approved automatically when the email you enter matches your Hugging Face account email and belongs to the organisation you name; other requests are reviewed manually.

BharatEnergy-Chronos is Chronos-2 (120M parameters) fine-tuned on train-period daily electricity generation series from India: every power station and every thermal and nuclear generating unit in the Central Electricity Authority's daily generation report. It returns nine quantiles for any horizon; it is scored on BharatEnergy-Bench at 1, 7 and 30 days.

  • At 1 day, the lowest overall WQL is BharatEnergy-Chronos (bharatenergy_chronos) (0.0897); 2.0% below chronos2, 6.1% below naive.
  • At 7 days, the lowest overall WQL is BharatEnergy-Chronos (bharatenergy_chronos) (0.1381); 3.2% below chronos2, 12.4% below lightgbm.
  • At 30 days, the lowest overall WQL is BharatEnergy-Chronos (bharatenergy_chronos) (0.1757); 5.3% below chronos2, 15.3% below lightgbm.
  • BharatEnergy-Chronos has the lowest WQL in 5 of 6 track x horizon tasks.

Coverage: 459 power stations and 608 generating units across 33 states/UTs and 5 regions (+ Bhutan imports), daily actual generation 2022-01-01 to 2026-01-02

Quickstart

pip install -r requirements.txt     # chronos-forecasting 2.3.2, torch, pandas, pyarrow
import sys
import pandas as pd
from huggingface_hub import snapshot_download

path = snapshot_download("judicialmind/BharatEnergy-Chronos")
sys.path.insert(0, path)
from bharatenergy_chronos import BharatEnergyChronos

model = BharatEnergyChronos.from_pretrained(path)               # bfloat16 on GPU, float32 on CPU

bench = snapshot_download("judicialmind/BharatEnergy-Bench", repo_type="dataset")
df = pd.read_parquet(f"{bench}/data/station_generation/series.parquet", columns=["series_id", "ts", "target"])
one = df[df.series_id == df.series_id.iloc[0]]
fc = model.predict_df(one, origin="2025-10-01", horizon=30)    # long table: series_id, origin, h, ts, q0.1..q0.9
print(fc[["series_id", "h", "q0.1", "q0.5", "q0.9"]].head())

predict(contexts, horizon) takes a list of 1-D arrays (daily generation in MU on a regular daily grid ending the day before the origin, oldest first, NaN for missing days) and returns an array (n_series, horizon, 9) of the quantiles 0.1 ... 0.9. BharatEnergy-Bench gives every model the 512 days before the origin. From the shell: python bharatenergy_chronos.py my_series.parquet --origin 2025-10-01 --horizon 30.

Results

BharatEnergy-Bench, overall = mean of the two daily tracks, averaged over the test origins of each track. Lower WQL and MASE are better; a calibrated 80% interval covers 0.80.

h (days) model WQL MASE cov_80
1 BharatEnergy-Chronos (bharatenergy_chronos) 0.0897 0.5900 0.7380
1 chronos2 0.0915 0.6070 0.7413
1 timesfm25 0.0919 0.6060 0.7831
1 naive (best baseline) 0.0956 0.5955 0.7469
7 BharatEnergy-Chronos (bharatenergy_chronos) 0.1381 0.8812 0.7593
7 chronos2 0.1427 0.9239 0.7560
7 timesfm25 0.1453 0.9360 0.7815
7 lightgbm (best baseline) 0.1576 0.9659 0.7413
30 BharatEnergy-Chronos (bharatenergy_chronos) 0.1757 1.2044 0.7671
30 chronos2 0.1855 1.3140 0.7513
30 timesfm25 0.1903 1.3288 0.7800
30 lightgbm (best baseline) 0.2073 1.3566 0.7233

Per track:

track h BharatEnergy-Chronos WQL zero-shot Chronos-2 WQL best other model (WQL)
station_generation 1 0.0855 0.0855 timesfm25 0.0853
station_generation 7 0.1261 0.1287 chronos2 0.1287
station_generation 30 0.1594 0.1656 chronos2 0.1656
unit_generation 1 0.0940 0.0976 chronos2 0.0976
unit_generation 7 0.1501 0.1567 chronos2 0.1567
unit_generation 30 0.1919 0.2055 chronos2 0.2055

Power-station daily generation by fuel type (WQL, lower is better; best per horizon in bold)

fuel windows BharatEnergy-Chronos (bharatenergy_chronos) WQL h=7 chronos2 WQL h=7 BharatEnergy-Chronos (bharatenergy_chronos) WQL h=30 chronos2 WQL h=30
HYDRO 1,268 0.1490 0.1573 0.2042 0.2458
NUCLEAR 42 0.0923 0.0926 0.1440 0.1298
THER (DG) 6 0.0081 0.0086 0.0100 0.0109
THER (GT) 230 0.2267 0.2332 0.3314 0.3307
THERMAL 1,131 0.1229 0.1245 0.1512 0.1530

Power-station daily generation by grid region (WQL, lower is better; best per horizon in bold)

region windows BharatEnergy-Chronos (bharatenergy_chronos) WQL h=7 chronos2 WQL h=7 BharatEnergy-Chronos (bharatenergy_chronos) WQL h=30 chronos2 WQL h=30
EASTERN 336 0.1008 0.1006 0.1191 0.1249
NORTH EASTERN 141 0.1019 0.1036 0.1327 0.1440
NORTHERN 807 0.1328 0.1350 0.1621 0.1733
SOUTHERN 715 0.1466 0.1540 0.1979 0.2093
WESTERN 678 0.1244 0.1263 0.1582 0.1580

Generating-unit daily generation by fuel type (WQL, lower is better; best per horizon in bold)

fuel windows BharatEnergy-Chronos (bharatenergy_chronos) WQL h=7 chronos2 WQL h=7 BharatEnergy-Chronos (bharatenergy_chronos) WQL h=30 chronos2 WQL h=30
NUCLEAR 126 0.0971 0.1031 0.1808 0.1687
THERMAL 3,488 0.1526 0.1592 0.1925 0.2070

Generating-unit daily generation by grid region (WQL, lower is better; best per horizon in bold)

region windows BharatEnergy-Chronos (bharatenergy_chronos) WQL h=7 chronos2 WQL h=7 BharatEnergy-Chronos (bharatenergy_chronos) WQL h=30 chronos2 WQL h=30
EASTERN 612 0.1149 0.1180 0.1474 0.1607
NORTH EASTERN 18 0.0843 0.0844 0.0759 0.0783
NORTHERN 918 0.1530 0.1606 0.1919 0.2100
SOUTHERN 755 0.1852 0.1970 0.2497 0.2652
WESTERN 1,311 0.1503 0.1557 0.1884 0.1987

Files

file content
model.safetensors, config.json Chronos-2 weights and configuration
bharatenergy_chronos.py BharatEnergyChronos.from_pretrained, predict, predict_df and a CLI
requirements.txt pinned runtime dependencies

Source data

Fine-tuned and evaluated on BharatEnergy-Bench. Derived from the Central Electricity Authority (CEA) daily generation report (region-, state-, sector-, type-, station- and unit-wise actual and programmed generation), published on NITI Aayog's National Data and Analytics Platform (NDAP) and the Open Government Data Platform India (data.gov.in) under the Government Open Data License - India (GODL-India).

Base model: amazon/chronos-2 (Apache-2.0).

Original data: published by Central Electricity Authority (CEA), Ministry of Power on the Open Government Data Platform India (data.gov.in) and, where marked, NITI Aayog's National Data and Analytics Platform (NDAP), under the Government Open Data License - India (GODL-India). The original public data remains under GODL-India; the CC BY-NC-SA 4.0 licence of this repository covers JudicialMind's compilation, derived fields, annotations, benchmarks and models.

Citation

@misc{judicialmind2026bharatenergychronos,
  title={BharatEnergy-Chronos: Chronos-2 Fine-tuned for India Power Generation Forecasting},
  author={JudicialMind},
  year={2026},
  publisher={Hugging Face},
  howpublished={\url{https://huggingface.co/judicialmind/BharatEnergy-Chronos}}
}

License

CC BY-NC-SA 4.0 (see LICENSE): research, academic, personal and other non-commercial use, with attribution to JudicialMind and to the original data publishers; adaptations must be shared under the same licence. Commercial use requires a separate licence.

Commercial use: contact surya@judicialmind.ai or hello@judicialmind.ai.

Base model(s): amazon/chronos-2 (apache-2.0). Their licence terms and notices continue to apply to the upstream components; see THIRD_PARTY_NOTICES.md.

Downloads last month
-
Safetensors
Model size
0.1B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for judicialmind/BharatEnergy-Chronos

Base model

amazon/chronos-2
Finetuned
(13)
this model

Datasets used to train judicialmind/BharatEnergy-Chronos

Space using judicialmind/BharatEnergy-Chronos 1

Collection including judicialmind/BharatEnergy-Chronos