Repository navigation
v0.6.1
Patch release on top of 0.6.0.
1. Foundation models re-exported (model-v5-uq-v6)
The distributed UQ-enabled models were rebuilt to fix a NaN in virial_sigma (the uncertainty contribution to the virial).
If you already have models in $HOME/.cache/grace, refresh them:
grace_models update --all --dry-run # report what is stale, download nothing
grace_models update --all # refresh itThe cache is keyed by model name, so upgrading the package alone never replaces a payload that is already on disk — hence the new update subcommand. Each cached model and checkpoint directory now carries a .grace_origin.json provenance sidecar recording the URL it was fetched from; update compares that against the URL the installed package would use and re-downloads only the mismatches. The old copy is moved aside and deleted only once the new download succeeds, and directories you curate yourself — symlinked cache entries, or explicit path: overrides in models_registry.yaml — are never replaced. kokkos.npz is distributed separately, so re-fetch it with grace_models download <model> --kokkos afterwards if you use the LAMMPS-Kokkos pair styles.
Docs: Updating cached models
2. Tunable UQ threshold calibration
grace_uq build --threshold-percentile Q calibrates gamma so that gamma = 1 sits at the Q-th percentile of each cluster's training sigma histogram, instead of the default median + 3*(1.4826*MAD) robust outlier fence. Intended for training sets where a large fraction of training atoms reads gamma > 1.
Qis validated, the artifact records which estimator produced its thresholds, andgrace_uq inforeports it — warning when the quantile rides a heavy tail.- Gamma from a percentile-calibrated artifact is not comparable with gamma from a default-calibrated one.
Docs: Calibrating the threshold
3. Bulk prediction helper
New predict_structures (tensorpotential/calculator/bulk.py) evaluates any ASE calculator over a list of structures with a single calculator instance, returning input-aligned lists and harvesting extra result keys such as per-atom gamma. Both grace_predict and the grace_uq predict CLI now route through it.
from tensorpotential.calculator import TPCalculator, predict_structures
out = predict_structures(structures, TPCalculator(model="GRACE-2L-OAM"),
properties=("energy",), extra=("gamma",))Docs: Python API: predict_structures
Fixes
- NaN in
virial_sigmaproduced by zero-basis atoms under XLA.
Full changelog: 0.6.0...0.6.1