Ai2_Climate_Emulator

Model Introduction

The AI2 Climate Emulator (ACE) is a global atmospheric state emulator proposed by the Allen Institute for AI (AI2).

Paper: ACE: A fast, scalable foundation model for the atmosphere

https://arxiv.org/abs/2310.02074

Model Description

This project implements the spherical Fourier neural operator (SFNO) forward graph with PyTorch and torch_harmonics. It takes the atmospheric state and external forcings at the current six-hour time step as input, predicts the state at the next time step, and can generate multi-step climate or weather fields autoregressively.

Use Cases

Scenario Description
Global atmospheric state simulation Train a one-step ACE model with FV3GFS data following the 40/44-channel protocol.
Local quick validation Generate synthetic NPZ files with scripts/fake_data.py to check the training, inference, and result-visualization pipeline.
ModelScope / OneCode execution Download the standalone model package, install dependencies, and run the scripts directly.
Multi-GPU training Launch PyTorch DDP with torchrun.

Usage Guide

1. OneCode Usage

Experience intelligent one-click AI4S programming through the OneCode online environment:

Click to Experience Intelligent One-Click AI4S Programming

2. Manual Installation and Usage

Hardware Requirements

  • A GPU or DCU is recommended.
  • CPU can be used for import and small-scale connectivity verification; full training and inference will be slow.
  • DCU users must install DTK in advance. DTK 25.04.2 or above, or the OneScience recommended version matching your cluster, is recommended.

Download the Model Package

hf download OneScience-Group/Ai2_Climate_Emulator --local-dir ./Ai2_Climate_Emulator
cd Ai2_Climate_Emulator

Install the Runtime Environment

DCU Environment

# Please activate DTK and CONDA first
conda create -n onescience311 python=3.11 -y
conda activate onescience311
# uv installation is supported
pip install onescience[earth-dcu] -i http://mirrors.onescience.ai:3141/pypi/simple/  --trusted-host mirrors.onescience.ai

GPU Environment

# Please activate CONDA first
conda create -n onescience311 python=3.11 -y libstdcxx-ng=12 libgcc-ng=12 gcc_linux-64=12 gxx_linux-64=12
conda activate onescience311
# uv installation is supported
pip install onescience[earth-gpu] -i http://mirrors.onescience.ai:3141/pypi/simple/  --trusted-host mirrors.onescience.ai

Training Data Introduction

The ACE paper uses an ensemble of 11 FV3GFS initial conditions: 10 members for training and one member for validation. The simulations are written at six-hour intervals and regridded to a Gaussian latitude-longitude grid. The original FV3GFS files and NOAA fregrid are not included in this model package; users must prepare and convert them to the NPZ format required by the project:

inputs:  [N, 40, H, W]
targets: [N, 44, H, W]

When real data is unavailable, generate synthetic data for pipeline validation:

python scripts/fake_data.py

Training

Single GPU:

python scripts/train.py

Multi-GPU:

torchrun --nproc_per_node=8 scripts/train.py

Training checkpoints are written to data/checkpoint/model_bak.pt by default.

Training Weights

This repository provides weights trained on FV3GFS data in the weight/ folder. The weight files will be uploaded soon and are expected to be available in the near future.

Inference

python scripts/inference.py

Inference results are saved to output/infer/rollout.npz by default.

Evaluation and Visualization

python scripts/result.py

Area-weighted RMSE, global mean bias, and PNG figures are written to output/pic/ by default.

Official OneScience Resources

Citation and License

  • This repository is a reproduction of the ACE model.
Downloads last month
-
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Paper for OneScience-Group/Ai2_Climate_Emulator