Overview
The model registry is the single source of truth for every MLIP model available in MLIP Arena. It lives at:mlip_arena.models reads the file and exposes the parsed content as the REGISTRY dict:
REGISTRY is then used to populate MLIPMap and MLIPEnum by dynamically importing each model class.
Registry fields
Each top-level key inregistry.yaml is the canonical model name. Its value is a dict with the following fields:
Identification and loading
string
required
Sub-package under
mlip_arena.models that contains the model file. Currently always "externals".string
required
Name of the Python class to import from
mlip_arena.models.{module}.{family}. This class is used as the calculator.string
required
Module filename (without
.py) inside mlip_arena.models.{module}/. E.g. "mace-mp" maps to mace-mp.py.string
required
Pip-installable package and version required for this model (e.g.
"mace-torch==0.3.9").string
Model checkpoint identifier — a filename, version tag, or URL used by the class constructor to load weights.
Provenance
string
HuggingFace Hub username of the model maintainer.
string (ISO 8601)
Timestamp of the last update to the registry entry.
string (ISO 8601)
Datetime associated with the model release or upload.
string (YYYY-MM-DD)
Publication or release date of the model.
string (URL)
Link to the upstream GitHub repository.
string (URL)
DOI or arXiv link to the associated paper.
string
SPDX license identifier (e.g.
"MIT", "Apache-2.0", "GPL-3.0-only"). null if not specified.Training data
string[]
List of training dataset names (e.g.
["MPTrj", "Alexandria"]). Common values:MPTrj— Materials Project trajectoriesAlexandria— Alexandria crystal datasetOMat— Open Materials dataset (Meta)MPF— Materials Project forcesMP22— Materials Project 2022OC20/OC22— Open Catalyst datasetsSPICE— Small molecule and protein interaction datasetProprietary— non-public data
Benchmark tasks
string[]
Benchmark tasks the model participates in on GPU. Supported task identifiers:
homonuclear-diatomics— diatomic molecule potential energy curvesstability— thermodynamic stability predictioncombustion— combustion reaction MDeos_bulk— bulk equation of statewbm_ev— WBM energy-volume curves
string[]
Benchmark tasks the model participates in on CPU (typically lighter tasks). Common value:
eos_alloy.Capabilities
string
Compact string listing which physical quantities the model outputs:
Example:
"EFSM" means energy + forces + stress + magnetic moments.boolean
Whether the model supports NVT (constant volume/temperature) molecular dynamics.
boolean
Whether the model supports NPT (constant pressure/temperature) molecular dynamics. Some models have known issues with NPT (see inline comments in
registry.yaml).Complete model table
EF models output energy and forces only. EFSM models additionally output stress and magnetic moments. Models without a listed license have null in the registry.Adding a new model
1
Create the calculator file
Add a new Python file under
mlip_arena/models/externals/ named after the model family (e.g. myfamily.py). Define a class that wraps the model and implements a calculate method compatible with ASE.2
Add an entry to registry.yaml
Append a new entry to
mlip_arena/models/registry.yaml following the schema above:3
Verify the model loads
Install the required package and confirm your model appears in
MLIPEnum: