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)
Release files for earthkit-workflows-anemoi 0.7.3
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.7.3.tar.gz | 51.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| earthkit_workflows_anemoi-0.7.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 75.8 kB
Release files / earthkit_workflows_anemoi-0.7.3.tar.gz
| Download URL | earthkit_workflows_anemoi-0.7.3.tar.gz |
|---|---|
| Size | 51.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ba57a0b776bbc2f05b72eb1cb7a54e473852189d324c5cda337d43dcd60f0a3b
|
|
BLAKE2b-256 checksum How to use checksums |
07d1d2ca34b8fea078ae5b0e764aa89df2a3ff49f34d3520a34f56e7ae21cbb9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.6
|
Release files / earthkit_workflows_anemoi-0.7.3-py3-none-any.whl
| Download URL | earthkit_workflows_anemoi-0.7.3-py3-none-any.whl |
|---|---|
| Size | 24.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1896f90760788d8106b7e084bc0934381aa25c6185c92f8b6b10df37bad98e29
|
|
BLAKE2b-256 checksum How to use checksums |
aa8e4214e188f483ab483cf30023c8ded362f9bea9f7f9d7d35bfc408876f72f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.6
|