Hestia's module to orchestrate the models.
Project description
Hestia Engine Orchestrator
Orchestrate your different models to run on a Cycle, an ImpactAssessment or a Site.
Documentation
Documentation can be found in the source folder.
Install
- Install the library:
pip install hestia_earth.orchestrator
You can now install your own models or follow the steps below to use the default Hestia models.
Install the Hestia Models
If you want to use the hestia default models, follow these steps:
- Install the library:
pip install hestia_earth.models
- Download the latest configuration files:
curl https://gitlab.com/hestia-earth/hestia-engine-orchestrator/-/raw/master/scripts/download_config.sh?inline=false -o download_config.sh && chmod +x download_config.sh
# pip default install directory is /usr/local/lib/python<version>/site-packages
./download_config.sh <pip install directory>
Using your own models
You can create your own models in addition (or instead of) the default set of models provided by Hestia.
The model needs to expose only one method:
def run(key: str, data): ...
It will be given the data that has been given to the orchestrator, i.e. by calling:
from hestia_earth.orchestrator import run
my_data = {'@type': 'Cycle', 'inputs': []}
config = {
"models": [{
"key": "inputs",
"model": "my_model",
"value": "my_model_value",
"runStrategy": "add_if_missing_key"
}]
}
run(my_data, config)
Will be calling in your own model my_model.py
:
def run('my_model_value', my_data: dict): ...
Usage
# will work with either Cycle or Site
from hestia_earth.orchestrator import run
# cycle is a JSONLD node cycle
cycle = {'@type': 'Cycle', ...}
result = run(cycle, '/path/to/my-config.json') # configuration stored in a file
print(result)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for hestia-earth-orchestrator-0.1.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9aa4270ef398dabc24f4aad4445f19d2437c9123460815da27e7d0e152024c47 |
|
MD5 | e0b9f6873c5b41e85d43e44e7b5500ff |
|
BLAKE2b-256 | b43ba06c32ab9b5f978b6fe63033a019ac0a21881a8595f3d4e4c2ba99569bb5 |
Close
Hashes for hestia_earth_orchestrator-0.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c1ae1e982fca5c5ab26bd24ff2fe378647f87d876ba46adb036dbfb11ee94667 |
|
MD5 | 8e3063797dbc28262e50636eb40a1b04 |
|
BLAKE2b-256 | 0e05f50d39223f87b91d893186acaba6e8c58e36d92d9b32a0c276c4b7b8374c |