A workflow management system (WfMS) built on top of the flowrep data paradigm, for transforming prospective recipes into retrospective data results.
- Clear provenance coupling
flowrep's recipes to resulting data, augmented with practical metadata for each run - Easy, dynamic workflow construction with the core
Workflowobject - Type and ontological validation of recipes using semantikon for ontological analysis
- Scale compute by applying python executors to any node in the workflow, including HPC SLURM-allocated resources leveraging executorlib
- Monitor progress with a flexible event hook system, useful for dumping checkpoints or state-at-exception for failed runs, or for GUIs to grab onto for visually monitoring what has been executed so far
For an introduction and full tour of available features, check out the user guide notebook
conda install -c conda-forge pyiron_workflow
See the pyproject file for optional dependencies to unlock extra functionality.
Versions of pyiron_workflow <0.17.0 pre-date flowrep; Version 0.18.0 offers old and flowrep-based implementations concurrently, and includes a compatibility module and notebook to aid with migration; From version 0.19.0 onwards, only the flowrep-based implementation is available. However, the API still offers @as_function_node and @as_macro_node decorators which turn functions into constructors for the new, modern node instances, and all other legacy API elements will provide a hint on the path forwards when they fail to import. The upgrading notebook gives some tips on managing minor syntactic differences and migrating to @flowrep.workflow-decorated node libraries.
If you use pyiron_workflow in your research, please cite the Zenodo DOI