Overview#

Enerzyme is a YAML-driven toolkit for training neural network potentials (NNPs), running ASE-based simulations, and closing active-learning loops with QM relabeling. The CLI is the primary user interface; Python APIs exist but are documented separately in API Documentation.

Workflow map#

raw QM / structures
    -> Datahub (preprocess, cache)
    -> Modelhub (build model)
    -> Trainer (fit)
    -> predict / simulate
    -> (optional) extract -> annotate -> merge -> retrain

For enzymatic exploration, the outer loop is often managed by Enerzymette rather than a single enerzyme train job. See Active Learning Workflows. A full methyltransferase workflow is documented in example/NNP4MTase.

CLI command map#

  • train — Fit one or more force fields

  • predict — Evaluate or infer on a dataset

  • simulate — ASE workflows: opt, MD, scan, NEB, PLUMED

  • extract — Pick uncertain fragments from predictions

  • collect — Preprocess and split only (no training)

  • annotate — Batch QM labeling from SDF/pickle suppliers

  • bond — Assign bonds to PDB clusters

  • listen — Start HTTP prediction server

  • request — Client request (e.g. ORCA ExtOpt bridge)

  • kill — Shut down a listening server

Configuration-driven design#

Nearly every command takes a YAML file (-c) and an output directory (-o). Training and inference additionally use a model directory (-m) containing checkpoints and a resolved config.yaml.

Reference configs live in enerzyme/config/. After training, treat the saved config.yaml in the output directory as the canonical model configuration for predict and simulate.

Reading path#

  1. Getting Started — install, first dataset, first train, first predict/simulate.

  2. User Guide (this section) — schema, tuning, advanced workflows.

  3. API Reference — module and class documentation.