Skip to content

Releases: llnl/orchestrator

v0.6.0

09 Oct 23:12

Choose a tag to compare

Orchestrator Version 0.6 Release Notes - 2025-10-09

Overview

This release introduces a range of new features, integrations, bug fixes, and
usability improvements.

New Features and Capabilities

Module Addition Summary
Augmentor More flexibility for specifying extraction environment of subcells, ability to delete close contacts on edge of box with min_dist_delete.
ChIMES Potential New Potential module for supporting ChIMES potentials, including integration with KIM API.
ChIMES Trainer New Trainer module for supporting training of ChIMES potentials.
Colabfit Storage Enhanced query capabilities via the colabfit CLI, enabling more robust and flexible data retrieval and search.
KIMRun TargetProperty Added Podman container support for improved portability on different HPC systems. Generalized setup with improved documentation.
QUESTS Descriptors Multi-element descriptor support added to QUESTS module.
Utility Added utility function for parsing external output data from QE or VASP calculations into Orchestrator format.
VASP Oracle Added non-AiiDA VASP Oracle using pymatgen for parsing.

Code Updates

Module Change Summary
KliFF Trainers Updated for improved integration with kimkit.
Local Workflow Local workflow now supports parallel execution if tasks set in job_details (no default parallelism).
Oracle Metadata tracking infrastructure extended to additional oracle modules.
Oracle/Storage Check for calculation settings consistency in a dataset no longer compares exact magmom array for magnetic order. Will check for uniform setting.
Potential If a user wants to upversion a potential they do not own, a fork is now made instead of returning an error.
Potential Default kim_api string now set at init.
Potential Default KIM API install locality changed to user, rather than environment, to avoid unnessecary conflicts.
Potential Remove kim_item_type argument from Potential functions to simplify API and reduce mismatches with settings at init.
SNAP Potential Updates to output file formatting to remove unsupported keywords in stable version 000 portable model driver.
Test Reorder unit tests for the Potential and Trainer modules for improved organization.
Workflow Add QOS option to Workflow module arguments.

Bug Fixes

Issue Resolution
Potential version incrementing Incrementing version numbers from upversioning or forking now correctly propagates and returns the kim_id attribute.
Potential KIM API uninstall logic Fixed bug where supplying a potential ID would result in not uninstalling with the uninstall_potential_from_kim_api() function.
Potential kimkit saving names Temporary tar file generated for kimkit save reflects potential name (KIM ID) instead of random string.
SNAP and Tersoff example notebooks Function calls updated for compatibility with latest modules.
SNAP Potential file accounting SNAP file ordering for simulator and portable models fixed.
Storage metadata checking logic Fixed energy/force/stress keys that were checked in order to store Oracle metadata in database.

Known Issues

  • VASPOracle missing unit test
  • Augmentor functions missing unit tests
  • Partial KIM integration support (kimkit, KIM API) for KliffBPPotential

v0.5.0

30 Sep 22:31

Choose a tag to compare

Orchestrator Version 0.5 Release Notes - 2025-08-15

Overview

Orchestrator is a modular, extensible Python framework designed to streamline the end-to-end workflow for building, training, testing, running, and analyzing Interatomic Potentials (IAPs) and large-scale molecular dynamics (MD) simulations. It provides a uniform API for integrating diverse simulation codes and tools, reducing human effort in complex scientific workflows.

Design Features

1. Modular Architecture

  • Abstract Base Classes: Core functionality is defined via abstract classes, enabling drop-in replacement of concrete implementations via the uniform API.
  • Extensible Factories/Builders: Uniform instantiation of modules via factory and builder patterns.

2. Supported Workflows

  • IAP Development: Build, train, validate, and deploy interatomic potentials (empirical, ML-based).
  • Simulation Management: Run and analyze MD simulations, including property calculations (melting point, elastic constants, etc.).
  • Ground Truth Calculation: Generate, run, and parse DFT or other ground truth calculations for training data generation, cataloguing outputs and settings for consistency.
  • Active Learning/Pruning: Dataset augmentation and reduction using scoring and selection modules.

3. Integration with Existing Code Infrastructure

  • KIM Suite Integration: Seamless use of KIM-API, KIMkit, KIM Tests, KliFF, and Colabfit for model management and simulation.
  • AiiDA Support: Automated provenance tracking, error handling, and job management for DFT codes (VASP, Quantum Espresso).
  • ASE Atoms: ASE Atoms are used as the internal representation for atomic-scale configurations.

4. Data Management

  • Flexible Storage: Local (filesystem) and Colabfit (PostgreSQL) storage backends for datasets, supporting ASE Atoms as the core data structure. KIMkit provides similar functionalities for IAPs.
  • Metadata & Versioning: Built-in metadata tracking, version control, and property mapping for datasets and potentials.

5. Testing & Validation

  • Comprehensive Test Suite: Unit tests for all modules, with curated reference outputs and pytest integration.
  • Semi-Automated Checking: Scripts for setup, execution, and validation of tests across modules.

6. Job Execution & Workflow Management

  • Local & HPC Execution: Support for local execution, Slurm, LSF, and hybrid Slurm-to-LSF workflows.
  • Asynchronous/Synchronous Modes: Flexible job submission and blocking/waiting mechanisms.
  • Checkpointing & Restart: Robust checkpointing for long-running or multi-step workflows.

7. Analysis & Scoring

  • Score Modules: Quantify uncertainty, diversity, efficiency, and importance using information-theoretic and UQ metrics (LTAU, QUESTS, FIM).
  • Augmentor: Advanced dataset pruning, novelty detection, and subcell extraction for active learning.

Module Organization

Module Type Description
Turn-key Application-style execution (Executor, under development)
Coordinating Modules which leverage one or more "atomic" modules in simple to complex coordination for their operation. Include: Augmentor, TargetProperty
Atomic Modules which serve as the building blocks of core functionality. Simpler "input" --> "output" usage. Include: Descriptor, Oracle, Potential, Score, Simulator, Trainer
Utility Backend support for module, data, and file management. Include: Factory/Builder, Restart, Storage, Workflow

More Information

Full docs can be found at https://orchestrator-docs.readthedocs.io/en/latest/index.html

Bugs, feature requests, or other comments can be addressed via Issues
or messages sent to orchestrator-help@llnl.gov

Full Changelog: https://github.com/LLNL/orchestrator/commits/v0.5.0