Metadata-Version: 2.4
Name: aiice-bench
Version: 0.16.8
Summary: A standardized benchmark for spatio-temporal forecasting of Arctic sea ice concentration
Author-email: kdduha <just.andrew.kd@gmail.com>
License-File: LICENSE
Requires-Python: >=3.10
Requires-Dist: huggingface-hub>=1.3.1
Requires-Dist: imageio>=2.37.3
Requires-Dist: matplotlib>=3.10.8
Requires-Dist: numpy>=2.2.6
Requires-Dist: pydantic>=2.12.5
Requires-Dist: pytorch-msssim>=1.0.0
Requires-Dist: requests>=2.32.5
Requires-Dist: torch>=2.9.1
Requires-Dist: torchcnnbuilder>=0.1.5
Description-Content-Type: text/markdown

# Aiice

[![uv](https://img.shields.io/badge/uv-F0DB4F?style=flat&logo=uv&logoColor=black)](https://uv.io)
[![Hugging Face](https://img.shields.io/badge/huggingface-FF9900?style=flat&logo=huggingface&logoColor=white)](https://huggingface.co/)
[![PyTorch](https://img.shields.io/badge/pytorch-CB2C31?style=flat&logo=pytorch&logoColor=white)](https://pytorch.org/)
[![NumPy](https://img.shields.io/badge/numpy-013243?style=flat&logo=numpy&logoColor=white)](https://numpy.org/)

---

**AIICE** is an open-source Python framework designed as a standardized benchmark for spatio-temporal forecasting of Arctic sea ice concentration. It provides reproducible pipelines for loading, preprocessing, and evaluating satellite-derived OSI-SAF data, supporting both short- and long-term prediction horizons

## Installation

The simplest way to install framework with `pip`:
```shell
pip install aiice-bench
```

## Quickstart

The AIICE class provides a simple interface for loading Arctic ice data, preparing datasets, and benchmarking PyTorch models:

![image](docs/media/aiice-flow.png)

```python
from aiice import AIICE

# Initialize AIICE with a sliding window 
# of past 30 days and forecast of 7 days
aiice = AIICE(
    pre_history_len=30,
    forecast_len=7,
    batch_size=32,
    start="2022-01-01",
    end="2022-12-31"
)

# Define your PyTorch model
model = MyModel()

# Run benchmarking to compute metrics on the dataset
report = aiice.bench(model)
print(report)
```

Check [package doc](https://itmo-nss-team.github.io/Aiice/) and see more [usage examples](https://github.com/ITMO-NSS-team/Aiice/tree/main/scripts/examples). You can also explore the [raw dataset](https://huggingface.co/datasets/ITMO-NSS/Aiice) and work with it independently via Hugging Face

**Anonymous versions for review:**

| Artifact | Link |
|---|---|
| 📦 Repository | [anonymous.4open.science/r/Aiice-0BF8](https://anonymous.4open.science/r/Aiice-0BF8) |
| 📖 Documentation | [prismatic-baklava-6691d5.netlify.app](https://prismatic-baklava-6691d5.netlify.app) |
| 🗄️ Dataset | [huggingface.co/datasets/anon-aiice/Aiice](https://huggingface.co/datasets/anon-aiice/Aiice) |
