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-inference]'
This includes anemoi-inference, 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=range(1, 52))
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 = range(1, 52))
Metadata
Release files for earthkit-workflows-anemoi 0.10.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 | Provenance | Actions |
|---|---|---|---|---|
| earthkit_workflows_anemoi-0.10.0.tar.gz | 72.2 kB | Without provenance | Details for earthkit_workflows_anemoi-0.10.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| earthkit_workflows_anemoi-0.10.0-py3-none-any.whl | Python 3 | none | any | Details for earthkit_workflows_anemoi-0.10.0-py3-none-any.whl |
Total release size: 100.7 kB
Release files / earthkit_workflows_anemoi-0.10.0.tar.gz
| Download URL | earthkit_workflows_anemoi-0.10.0.tar.gz |
|---|---|
| Size | 72.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
efd733e52a9bc913b26070dfed4d1f40b90e89af636b3d75a72727eb8c9632a4
|
|
BLAKE2b-256 checksum How to use checksums |
0c31db3776c6b22963cb55ac0c0ee6052369c46c95ef871b70233213ef326969
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.15.1
|
Release files / earthkit_workflows_anemoi-0.10.0-py3-none-any.whl
| Download URL | earthkit_workflows_anemoi-0.10.0-py3-none-any.whl |
|---|---|
| Size | 28.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4119ffd78544014c37eed8ed2ee0b241c34ce0d7ce40caea77e6a9c2e3aa227e
|
|
BLAKE2b-256 checksum How to use checksums |
8bef2b23991de27d14a5ed922b8cb9a11fc8bc9b24d797bfefebcd89ca78d79e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.15.1
|
Security for earthkit-workflows-anemoi 0.10.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.