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.

BharatWater-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.

BharatWater-Chronos is Chronos-2 (120M parameters) fine-tuned on train-period water series from India: daily live storage and fill of the reservoirs monitored by the Central Water Commission, district rainfall and district soil moisture. It returns nine quantiles for any horizon; it is scored on BharatWater-Bench at 7, 30 and 90 days.

  • At 7 days, the lowest overall WQL is BharatWater-Chronos (bharatwater_chronos) (0.2631); 1.9% below chronos2, 16.3% below lightgbm.
  • At 30 days, the lowest overall WQL is BharatWater-Chronos (bharatwater_chronos) (0.2928); 4.0% below chronos2, 17.6% below lightgbm.
  • At 90 days, the lowest overall WQL is BharatWater-Chronos (bharatwater_chronos) (0.3331); 11.0% below chronos2, 14.5% below climatology.
  • BharatWater-Chronos has the lowest WQL in 10 of 14 track x horizon tasks.

Coverage: 153 CWC reservoirs (daily live storage and % of capacity, 1991-01-01 to 2026-04-14), 702 districts of daily rainfall (weekly: 670), 733 districts of daily soil moisture (2018-07-24 to 2025-06-30)

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/BharatWater-Chronos")
sys.path.insert(0, path)
from bharatwater_chronos import BharatWaterChronos

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

bench = snapshot_download("judicialmind/BharatWater-Bench", repo_type="dataset")
df = pd.read_parquet(f"{bench}/data/reservoir_pct/series.parquet", columns=["series_id", "ts", "target"])
one = df[df.series_id == df.series_id.iloc[0]]
fc = model.predict_df(one, origin="2025-06-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 (regular daily or weekly grid ending the step before the origin, oldest first, NaN for missing steps) and returns an array (n_series, horizon, 9) of the quantiles 0.1 ... 0.9. BharatWater-Bench gives every model the 512 days (156 weeks for weekly rainfall) before the origin. From the shell: python bharatwater_chronos.py my_series.parquet --origin 2025-06-01 --horizon 30.

Results

BharatWater-Bench, overall = mean of the four 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
7 BharatWater-Chronos (bharatwater_chronos) 0.2631 0.9030 0.7458
7 chronos2 0.2682 0.9531 0.7502
7 timesfm25 0.2840 0.9308 0.7552
7 lightgbm (best baseline) 0.3141 1059.4330 0.7780
30 BharatWater-Chronos (bharatwater_chronos) 0.2928 1.4518 0.7330
30 chronos2 0.3050 1.5879 0.7470
30 timesfm25 0.3458 1.5877 0.7499
30 lightgbm (best baseline) 0.3552 809.5556 0.7461
90 BharatWater-Chronos (bharatwater_chronos) 0.3331 20.2052 0.7283
90 chronos2 0.3744 20.8066 0.7286
90 timesfm25 0.4525 20.8013 0.7111
90 climatology (best baseline) 0.3895 22.3129 0.4526

Per track:

track h BharatWater-Chronos WQL zero-shot Chronos-2 WQL best other model (WQL)
reservoir_storage 7 0.0289 0.0298 chronos2 0.0298
reservoir_storage 30 0.0511 0.0620 chronos2 0.0620
reservoir_storage 90 0.0949 0.1586 timesfm25 0.1530
reservoir_pct 7 0.0365 0.0380 timesfm25 0.0367
reservoir_pct 30 0.0678 0.0753 timesfm25 0.0741
reservoir_pct 90 0.1183 0.1598 timesfm25 0.1542
rain_daily 7 0.9008 0.8940 chronos2 0.8940
rain_daily 30 0.9358 0.9300 climatology 0.9235
rain_daily 90 0.9665 0.9478 climatology 0.9246
soil_moisture 7 0.0861 0.1109 chronos2 0.1109
soil_moisture 30 0.1167 0.1527 chronos2 0.1527
soil_moisture 90 0.1526 0.2315 climatology 0.1776
rain_weekly 4 0.8606 0.9850 climatology 0.9168
rain_weekly 13 1.0220 1.0694 climatology 0.9679

Files

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

Source data

Fine-tuned and evaluated on BharatWater-Bench. Derived from three resources of the Open Government Data Platform India (data.gov.in): the CWC daily reservoir level and storage bulletin, the NRSC district-wise daily soil moisture series and IMD district rainfall (gridded IMD rainfall averaged to districts, continued with the NDAP district daily rainfall series), all under the Government Open Data License - India (GODL-India).

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

Original data: published by Central Water Commission (CWC), Ministry of Jal Shakti (reservoir levels and storage); India Meteorological Department (IMD) and NITI Aayog's NDAP (district rainfall); National Remote Sensing Centre (NRSC), ISRO (district soil moisture) 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{judicialmind2026bharatwaterchronos,
  title={BharatWater-Chronos: Chronos-2 Fine-tuned for India Water Forecasting},
  author={JudicialMind},
  year={2026},
  publisher={Hugging Face},
  howpublished={\url{https://huggingface.co/judicialmind/BharatWater-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/BharatWater-Chronos

Base model

amazon/chronos-2
Finetuned
(13)
this model

Datasets used to train judicialmind/BharatWater-Chronos

Space using judicialmind/BharatWater-Chronos 1

Collection including judicialmind/BharatWater-Chronos