Foundation-style benchmarks and baselines for machine learning research on power systems challenges.
PFMs provides:
- Unified loaders that fetch and standardize popular open datasets into a common machine learning ready format.
- Canonical train/val/test splits spanning state-of-the-art challenges in optimization, control and forecasting problems.
- The first power system foundation model for solving these task.
git clone https://github.com/ArsamAryandoust/PowerFoundationModels
cd PowerFoundationModels
pip install -U ai4climate
pip uninstall -y ai4climate # ensure the PyPI version is removed
export PYTHONPATH=$PYTHONPATH:$(pwd)/ai4climate
Dependency | Version |
---|---|
Python | ≥ 3.9 |
PyTorch | ≥ 2.2 |
CUDA (opt) | 11.8 / 12.X |
Create a clean environment (example with conda):
conda create -n psfm python=3.10 pytorch=2.2 cudatoolkit=11.8 -c pytorch -y
conda activate psfm
Install additional project requirements
pip install -r requirements.txt
All standardized tasks are hosted on Hugging Face Hub and can be downloaded
automatically via ai4climate.load
. Current coverage:
Task / Dataset | Modality | Docs |
---|---|---|
OPFData | Graphs (optimal-power-flow) | details |
PowerGraph | Transmission-grid graphs | details |
SolarCube | Satellite imagery | details |
BuildingElectricity | Time-series load profiles | details |
WindFarm | SCADA & weather | details |
Load a dataset in three lines:
from ai4climate import load
ds = load(
task_name="OPFData",
subtask_name="train_small_test_medium",
root_path="~/AI4Climate" # local cache directory
)
Experiments are configured via the config.yml file and executed through src/main.py.
python src/main.py
We welcome pull requests for new datasets, models and evaluation metrics. Please read contributions.md before opening an issue or PR.
This project is licensed under the MIT License. See the license file for details.