EnerVision leverages IBM's Granite TinyTimeMixers (TTM) foundation models to deliver accurate short-term energy load forecasting for Indian commercial buildings, enabling 35% cost savings through predictive optimization and automated renewable energy integration.
git clone https://github.com/enervision/ibm-granite-forecasting.git
cd ibm-granite-forecasting
pip install -r requirements.txt
# Copy environment template
cp .env.example .env
# Add your IBM watsonx.ai credentials
export WATSONX_API_KEY="7d2qZqET-QBEVzxakf3vsXAWLWY0ZmcQ1fXDFAfmmPd_"
export WATSONX_URL="https://us-south.ml.cloud.ibm.com"
from src.enervision import EnerVisionTTM
import pandas as pd
# Initialize EnerVision with IBM Granite TTM
forecaster = EnerVisionTTM()
# Load your building energy data
building_data = pd.read_csv('data/sample_building_data.csv')
# Generate 24-hour forecast
forecast = await forecaster.forecast_energy_load(
building_data=building_data,
horizon='24h'
)
print(f"Predicted consumption: {forecast['forecast']}")
print(f"Confidence interval: {forecast['confidence_intervals']}")
notebooks/EnerVision_Demo.ipynb┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Building IoT │───▶│ EnerVision API │───▶│ IBM Granite │
│ Data Sources │ │ Gateway │ │ TTM Models │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│ │
▼ ▼
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Optimization │◀───│ Prediction │◀───│ watsonx.ai API │
│ Dashboard │ │ Engine │ │ Integration │
└─────────────────┘ └──────────────────┘ └─────────────────┘
enervision/
├── src/
│ ├── enervision/
│ ├── __init__.py
│ ├── models/ # IBM Granite TTM integration
│ ├── data/ # Data processing utilities
│ ├── api/ # FastAPI backend
│ └── utils/ # Helper functions
├── notebooks/ # Jupyter demos
├── data/ # Sample datasets
├── tests/ # Unit tests
├── docker/ # Container configurations
├── docs/ # Documentation
├── requirements.txt # Python dependencies
├── .env.example # Environment template
└── README.md # This file
config/model_config.yaml)granite_ttm:
model_id: "ibm-granite/granite-timeseries-ttm-r2"
context_lengths: [512, 1024, 1536]
prediction_length: 96
frequency: "H"
watsonx_api:
url: "https://us-south.ml.cloud.ibm.com"
timeout: 30
preprocessing:
scaling: "standard"
handle_missing: "interpolate"
pytest tests/ -v
python scripts/benchmark.py --dataset data/hitec_city_data.csv
python scripts/evaluate.py --model granite-ttm --horizon 24h
git checkout -b feature/amazing-featuregit commit -m 'Add amazing feature'git push origin feature/amazing-featureThis project is licensed under the Apache License 2.0 - see the LICENSE file for details.
This project was developed for the IndiaAI Impact Hackathon - Track 2: Short-term Energy Load Forecasting, sponsored by IBM Research India.
Team: Rupantar Kar, Shirisha Mangenapally, Sadhu Sri Harshitha
Track: Short-term energy load forecasting
Submission Date: August 30, 2025
For questions about this project or collaboration opportunities:
Transforming Indian buildings into intelligent, sustainable, and profitable energy ecosystems through the power of IBM Granite Time Series Foundation Models.
8 commits
4 commits
Jupyter Notebook
88.6%
Python
11.0%
EnerVision leverages IBM's Granite TinyTimeMixers (TTM) foundation models to deliver accurate short-term energy load forecasting for Indian commercial buildings, enabling 35% cost savings through predictive optimization and automated renewable energy integration.
git clone https://github.com/enervision/ibm-granite-forecasting.git
cd ibm-granite-forecasting
pip install -r requirements.txt
# Copy environment template
cp .env.example .env
# Add your IBM watsonx.ai credentials
export WATSONX_API_KEY="7d2qZqET-QBEVzxakf3vsXAWLWY0ZmcQ1fXDFAfmmPd_"
export WATSONX_URL="https://us-south.ml.cloud.ibm.com"
from src.enervision import EnerVisionTTM
import pandas as pd
# Initialize EnerVision with IBM Granite TTM
forecaster = EnerVisionTTM()
# Load your building energy data
building_data = pd.read_csv('data/sample_building_data.csv')
# Generate 24-hour forecast
forecast = await forecaster.forecast_energy_load(
building_data=building_data,
horizon='24h'
)
print(f"Predicted consumption: {forecast['forecast']}")
print(f"Confidence interval: {forecast['confidence_intervals']}")
notebooks/EnerVision_Demo.ipynb┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Building IoT │───▶│ EnerVision API │───▶│ IBM Granite │
│ Data Sources │ │ Gateway │ │ TTM Models │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│ │
▼ ▼
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Optimization │◀───│ Prediction │◀───│ watsonx.ai API │
│ Dashboard │ │ Engine │ │ Integration │
└─────────────────┘ └──────────────────┘ └─────────────────┘
enervision/
├── src/
│ ├── enervision/
│ ├── __init__.py
│ ├── models/ # IBM Granite TTM integration
│ ├── data/ # Data processing utilities
│ ├── api/ # FastAPI backend
│ └── utils/ # Helper functions
├── notebooks/ # Jupyter demos
├── data/ # Sample datasets
├── tests/ # Unit tests
├── docker/ # Container configurations
├── docs/ # Documentation
├── requirements.txt # Python dependencies
├── .env.example # Environment template
└── README.md # This file
config/model_config.yaml)granite_ttm:
model_id: "ibm-granite/granite-timeseries-ttm-r2"
context_lengths: [512, 1024, 1536]
prediction_length: 96
frequency: "H"
watsonx_api:
url: "https://us-south.ml.cloud.ibm.com"
timeout: 30
preprocessing:
scaling: "standard"
handle_missing: "interpolate"
pytest tests/ -v
python scripts/benchmark.py --dataset data/hitec_city_data.csv
python scripts/evaluate.py --model granite-ttm --horizon 24h
git checkout -b feature/amazing-featuregit commit -m 'Add amazing feature'git push origin feature/amazing-featureThis project is licensed under the Apache License 2.0 - see the LICENSE file for details.
This project was developed for the IndiaAI Impact Hackathon - Track 2: Short-term Energy Load Forecasting, sponsored by IBM Research India.
Team: Rupantar Kar, Shirisha Mangenapally, Sadhu Sri Harshitha
Track: Short-term energy load forecasting
Submission Date: August 30, 2025
For questions about this project or collaboration opportunities:
Transforming Indian buildings into intelligent, sustainable, and profitable energy ecosystems through the power of IBM Granite Time Series Foundation Models.
8 commits
4 commits
Jupyter Notebook
88.6%
Python
11.0%