Welcome to anemoi-utils documentation!
Anemoi is a framework for developing machine learning weather forecasting models. It comprises of components or packages for preparing training datasets, conducting ML model training and a registry for datasets and trained models. Anemoi provides tools for operational inference, including interfacing to verification software. As a framework it seeks to handle many of the complexities that meteorological organisations will share, allowing them to easily train models from existing recipes but with their own data.
anemoi-utils is the shared utility layer that the rest of the Anemoi
packages depend on. It provides:
- Configuration & settings
A Pydantic-settings based configuration system that loads from TOML/YAML files and environment variables, with built-in secret management. See Settings for the full schema reference and environment variable naming conventions.
- Checkpoint I/O
Read and write extra metadata inside PyTorch checkpoint files (zip archives). See checkpoints.
- Date & frequency handling
Normalise frequencies, generate date ranges, and parse date specifications used across Anemoi workflows. See dates.
- GRIB parameter database
Look up GRIB parameter metadata from the ECMWF parameter database, with local caching support. See grib.
- Human-readable formatting
Convert bytes, seconds, and other quantities into human-friendly strings. See humanize.
- Provenance tracking
Collect environment information (Python version, installed packages, git state) for experiment reproducibility. See provenance.
- S3 / object storage
Helpers for interacting with S3-compatible object storage, including per-bucket credential overrides. See s3.
- Testing utilities
Shared test helpers and fixtures used across Anemoi packages. See testing.
- Text & table formatting
Terminal-friendly text utilities including table rendering, dotted lines, and tree display. See text.
License
Anemoi is available under the open source Apache License.