Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

VectorInstitute/gaca-early-warning

Open more actions menu

Repository files navigation

Vector Institute

Global AI Alliance for Climate Action

High-Resolution Temperature Forecasting


code checks unit tests integration tests docs GitHub License

Automated production forecasting system for Southwestern Ontario. Features hourly GCNGRU predictions stored in BigQuery with rolling 30-day evaluation metrics.

Key Features:

  • Automated Forecasts: Hourly execution at :15 past each hour
  • Multi-Horizon: 1, 6, 12, 18, 24, 36, 48-hour predictions
  • Live Dashboard: Real-time forecast visualization with auto-refresh
  • CLI Tools: Manual inference and batch prediction capabilities
  • Evaluation: Daily rolling 30-day RMSE/MAE metrics

Installation

This project uses uv for dependency management and requires Python 3.12+.

Prerequisites

If you don't have uv installed, install it using:

curl -LsSf https://astral.sh/uv/install.sh | sh

Setup

# Clone the repository
git clone https://github.com/VectorInstitute/gaca-early-warning.git
cd gaca-early-warning

# Install all dependencies
uv sync --dev --group docs

# Activate the virtual environment
source .venv/bin/activate

Automated Forecasting System

The backend runs automated hourly forecasts and daily evaluations using APScheduler:

Production Deployment

Forecasting Schedule:

  • Runs hourly at :15 (after NOAA data availability)
  • Automatically stores predictions to BigQuery
  • CSV outputs saved to configurable directory

Evaluation Schedule:

  • Runs daily at 00:30 UTC
  • Computes rolling 30-day metrics (RMSE/MAE)
  • SQL-based aggregation for efficiency

Dashboard:

  • Auto-refreshes every 30 minutes
  • Smart polling checks for new data before fetching
  • Displays scheduler status and last update time
  • Manual refresh button available

Environment Variables:

FORECAST_OUTPUT_DIR=forecasts/         # Output directory for CSVs
GCP_PROJECT_ID=your-project-id         # BigQuery project (optional)
BIGQUERY_DATASET=gaca_evaluation       # BigQuery dataset name

CLI Usage

The CLI remains unchanged and works independently of the automated system:

# Single forecast
gaca-ews predict --config config.yaml --output results/

# Batch predictions for date range
gaca-ews batch-predict --start-date "2024-02-06 12:00" --end-date "2024-02-10 12:00" --interval 24

# Model information
gaca-ews info

# Version
gaca-ews version

Author

Joud El-Shawa - Vector Institute for AI & Western University

This repository is intended for early deployment testing of the GACA forecasting pipeline.

Releases

Packages

Used by

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.