earthkit-workflows-anemoi
[!IMPORTANT] This software is Sandbox and subject to ECMWF's guidelines on Software Maturity.
Earthkit-Workflows-Anemoi is a Python library for connecting anemoi-inference to earthkit-workflows. Allowing for the inference tasks to be run as part of a larger DAG. It provides an API to directly create a graph consisting of initial condition retrieval and model execution, or to run inference off other source nodes which themselves are the initial conditions.
Installation
The package has a split dependency structure to allow flexible installation:
For workflow creation (minimal)
To create workflows without running them locally:
pip install earthkit-workflows-anemoi
This installs only the core dependencies needed to define and serialize workflows.
For workflow execution (full runtime)
To both create and execute workflows locally:
pip install 'earthkit-workflows-anemoi[runtime]'
This includes anemoi-inference and anemoi-datasets required for local execution.
For development
git clone https://github.com/ecmwf/earthkit-workflows-anemoi.git
cd earthkit-workflows-anemoi
pip install -e '.[dev]'
Additionally you may want to install pre-commit hooks:
pip install pre-commit
pre-commit install
Quick Start
To create a graph relying on anemoi-inference to get the initial conditions the following can be used:
from earthkit.workflows.plugins import anemoi as anemoi_workflows
CKPT = {'huggingface': 'ecmwf/aifs-single-1.0'}
model_action = anemoi_workflows.fluent.from_input(CKPT, 'mars', '2022-01-01T00:00', lead_time = '7D', ensemble_members=51)
model_action
Note: For models with multiple datasets (supported since anemoi-inference 0.11.0), the resulting action includes a dataset dimension. Use .select({"dataset": "era5"}) to select a specific dataset if needed.
Given other nodes as the initial conditions:
from earthkit.workflows.plugins import anemoi as anemoi_workflows
from earthkit.workflows import fluent
SOURCE_NODES: fluent.Action
CKPT = {'huggingface': 'ecmwf/aifs-single-1.0'}
SOURCE_NODES.anemoi.infer(CKPT, lead_time = '7D', ensemble_members = 51)
Metadata
Release files for earthkit-workflows-anemoi 0.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| earthkit_workflows_anemoi-0.8.0.tar.gz | 52.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| earthkit_workflows_anemoi-0.8.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 76.7 kB
Release files / earthkit_workflows_anemoi-0.8.0.tar.gz
| Download URL | earthkit_workflows_anemoi-0.8.0.tar.gz |
|---|---|
| Size | 52.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d840d6262db27bf22e55f9f5f2f9b66fef3c7beb3adf1dca496f67054729d66b
|
|
BLAKE2b-256 checksum How to use checksums |
2cc8f00dfeb6cc90328927d3a6c8e82d6cea7744b455ba881f93db7a0184b733
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / earthkit_workflows_anemoi-0.8.0-py3-none-any.whl
| Download URL | earthkit_workflows_anemoi-0.8.0-py3-none-any.whl |
|---|---|
| Size | 24.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bc87873f47281fc30b2225ba9ec734bcf65cb70b336664476ce47a9c803b28e8
|
|
BLAKE2b-256 checksum How to use checksums |
dd17a7a69d934a2e27b7a31fcdc0701430064496fa7a0382040221598efc9238
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|