File size: 10,494 Bytes
2f3d0f4 59e2ae4 2f3d0f4 59e2ae4 2f3d0f4 39128e1 2f3d0f4 59e2ae4 39128e1 ac156dc 59e2ae4 39128e1 59e2ae4 39128e1 59e2ae4 39128e1 59e2ae4 39128e1 59e2ae4 39128e1 59e2ae4 ac156dc 59e2ae4 2f3d0f4 59e2ae4 2f3d0f4 59e2ae4 2f3d0f4 59e2ae4 2f3d0f4 59e2ae4 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 | ---
license: other
license_name: academic-software-license
license_link: https://github.com/ICAMS/grace-tensorpotential/blob/master/LICENSE.md
library_name: tensorpotential
tags:
- grace
- interatomic-potential
- molecular-dynamics
- machine-learning-potential
- materials-science
---
# Pretrained GRACE Foundation Models
This repository distributes pretrained **GRACE** (Graph Atomic Cluster Expansion) machine-learning
interatomic potentials, fitted with [GRACEmaker / tensorpotential](https://github.com/ICAMS/grace-tensorpotential).
The model tables and usage notes below are adapted from the
[GRACEmaker documentation](https://github.com/ICAMS/grace-tensorpotential/blob/master/docs/gracemaker/foundation.md).
> **Use the "Full Name" column** to refer to a model in LAMMPS and ASE.
The **UQ** and **Kokkos** columns indicate, per model:
- **UQ** β the distributed SavedModel ships with an uncertainty-quantification head
(and the checkpoint includes `gmm_artifacts.npz`).
- **Kokkos** β the model archive bundles `kokkos.npz` for LAMMPS-Kokkos deployment.
## License
**All GRACE models distributed in this repository are released under the Academic Software
License (ASL).** By downloading or using any model from this repository you agree to the terms
of the ASL: <https://github.com/ICAMS/grace-tensorpotential/blob/master/LICENSE.md>
---
## SMAX models
Reference: [arXiv](https://arxiv.org/abs/2602.23489)
The **SMAX** (**Maximum Entropy**) models are trained on a chemistry-agnostic dataset generated via a multicomponent
maximum information entropy structure generation protocol.
Unlike traditional datasets that focus on low-energy equilibrium structures, SMAX is constructed to deliberately sample
broad and diverse regions of configurational space. This provides a robust physical prior for atomic interactions across the entire periodic table, enabling accurate modeling of large-strain phase transformations, defects in complex alloys, and reaction barriers in catalytic systems.
**Custom Cutoffs & Interaction Ranges:** SMAX models utilize a **custom element-dependent cutoff radius** ranging from
**5.0 Γ
to 7.5 Γ
**.
**Recommendation:** For most general-purpose applications, we recommend using the **SMAX-OMAT** models.
They offer the best balance of structural robustness (from SMAX) and high-precision energy/force accuracy (from OMat24).
#### Single-layer, local models
| Model Name | Full Name | Size | ΞΊ_SRME | UQ | Kokkos | Description |
| :---- | :---- | :---- | :---- | :---- | :---- | :---- |
| GRACE-1L-SMAX-L | GRACE-1L-SMAX-large | large | 0.696 | β | β | Single-layer local (SMAX) |
| **GRACE-1L-SMAX-OMAT-L** | **GRACE-1L-SMAX-OMAT-large** | **large** | 0.338 | β | β | **Single-layer local (SMAX + OMat24)** |
#### Two-layer, semilocal models
| Model Name | Full Name | Size | ΞΊ_SRME | UQ | Kokkos | Description |
| :---- | :---- | :---- | :---- | :---- | :---- | :---- |
| GRACE-2L-SMAX-M | GRACE-2L-SMAX-medium | medium | 0.469 | β | β | Two-layer semi-local (SMAX) |
| GRACE-2L-SMAX-L | GRACE-2L-SMAX-large | large | 0.444 | β | β | Two-layer semi-local (SMAX) |
| **GRACE-2L-SMAX-OMAT-M** | **GRACE-2L-SMAX-OMAT-medium** | **medium** | 0.197 | β | β | **Two-layer semi-local (SMAX + OMat24)** |
| **GRACE-2L-SMAX-OMAT-L** | **GRACE-2L-SMAX-OMAT-large** | **large** | 0.191 | β | β | **Two-layer semi-local (SMAX + OMat24)** |
## OMAT models
Reference: [npj Comp. Mat.](https://www.nature.com/articles/s41524-026-01979-1), [arXiv](https://arxiv.org/abs/2508.17936)
The base models (**-OMAT**) are trained on the [OMat24](https://huggingface.co/datasets/fairchem/OMAT24#omat24-dataset) dataset.
The fine-tuned versions (**-OMAT-ft-E**) are derived from these base models by fine-tuning with more emphasis on energies.
All models listed use a fixed **6 Γ
cutoff**.
#### Single-layer, local models
| Model Name | Full Name | Size | ΞΊ_SRME | UQ | Kokkos | Description |
|:---|:---|:---|:---|:---|:---|:---|
| **GRACE-1L-OMAT** | GRACE-1L-OMAT | small | 0.398 | β | β | Single-layer local |
| GRACE-1L-OMAT-M-base | GRACE-1L-OMAT-medium-base | medium | 0.380 | β | β | Single-layer local (base) |
| **GRACE-1L-OMAT-M** | GRACE-1L-OMAT-medium-ft-E | medium | 0.417 | β | β | Single-layer local (finetuned on energy) |
| GRACE-1L-OMAT-L-base | GRACE-1L-OMAT-large-base | large | **0.354** | β | β | Single-layer local (base) |
| **GRACE-1L-OMAT-L** | GRACE-1L-OMAT-large-ft-E | large | 0.383 | β | β | Single-layer local (finetuned on energy) |
#### Two-layer, semilocal models
| Model Name | Full Name | Size | ΞΊ_SRME | UQ | Kokkos | Description |
|:---|:---|:---|:---|:---|:---|:---|
| **GRACE-2L-OMAT** | GRACE-2L-OMAT | small | 0.288 | β | β | Two-layer semi-local |
| GRACE-2L-OMAT-M-base | GRACE-2L-OMAT-medium-base | medium | 0.212 | β | β | Two-layer semi-local (base) |
| **GRACE-2L-OMAT-M** | GRACE-2L-OMAT-medium-ft-E | medium | 0.217 | β | β | Two-layer semi-local (finetuned on energy) |
| GRACE-2L-OMAT-L-base | GRACE-2L-OMAT-large-base | large | **0.165** | β | β | Two-layer semi-local (base) |
| **GRACE-2L-OMAT-L** | GRACE-2L-OMAT-large-ft-E | large | 0.186 | β | β | Two-layer semi-local (finetuned on energy) |
## OAM models
Reference: [npj Comp. Mat.](https://www.nature.com/articles/s41524-026-01979-1), [arXiv](https://arxiv.org/abs/2508.17936)
These models are first pre-trained on **OMat24** and then fine-tuned on a combination of the [sAlex](https://huggingface.co/datasets/fairchem/OMAT24#salex-dataset) dataset (10.4M structures) and the [MPtraj](https://figshare.com/articles/dataset/Materials_Project_Trjectory_MPtrj_Dataset/23713842?file=41619375) dataset (1.58M structures).
#### Single-layer, local models
| Model Name | Full Name | Size | F1 | ΞΊ_SRME | UQ | Kokkos | Description |
| :--- |:---| :--- |:---|:---|:---|:---| :--- |
| GRACE-1L-OAM | GRACE-1L-OAM | small | 0.824 | 0.516 | β | β | Single-layer local |
| GRACE-1L-OAM-M | GRACE-1L-OMAT-medium-ft-AM | medium | 0.800 | 0.411 | β | β | Single-layer local |
| GRACE-1L-OAM-L | GRACE-1L-OMAT-large-ft-AM | large | 0.815 | **0.377** | β | β | Single-layer local |
#### Two-layer, semilocal models
| Model Name | Full Name | Size | F1 | ΞΊ_SRME | UQ | Kokkos | Description |
| :--- |:--- | :--- |:---|:---|:---|:---| :--- |
| GRACE-2L-OAM | GRACE-2L-OAM | small | 0.880 | 0.294 | β | β | Two-layer semi-local |
| GRACE-2L-OAM-M | GRACE-2L-OMAT-medium-ft-AM | medium | 0.881 | 0.200 | β | β | Two-layer semi-local |
| GRACE-2L-OAM-L | GRACE-2L-OMAT-large-ft-AM | large | 0.889 | **0.168** | β | β | Two-layer semi-local |
## Mixed-precision (-mx) variants
Mixed-precision builds of the 2L-large models: float32 weights, which the Kokkos export
promotes to float64. Energies and forces agree with the TF SavedModel to ~10β»β΅ (vs ~10β»β· for
the full-precision models) β the expected effect of fp32 accumulation in the SavedModel.
| Full Name | Size | UQ | Kokkos | Description |
|:---|:---|:---|:---|:---|
| GRACE-2L-OMAT-large-mx | large | β | β | Two-layer semi-local, mixed precision (OMat24) |
| GRACE-2L-OMAT-large-mx-ft-AM | large | β | β | Two-layer semi-local, mixed precision (OMat24, fine-tuned on sAlex + MPtraj) |
---
## Repository layout
Each model is provided as two `.tar.gz` archives:
- `models/<full-name>-model.tar.gz` β the deployable TensorFlow `SavedModel` directory
(used by the ASE `TPCalculator`). UQ-enabled models embed an uncertainty head, and many
archives also bundle `kokkos.npz` for LAMMPS-Kokkos deployment.
- `checkpoints/<full-name>-checkpoint.tar.gz` β the training checkpoint required for
fine-tuning (`model.yaml`, `checkpoint.index`, `checkpoint.data-*`, plus `gmm_artifacts.npz`
for UQ models).
## Downloading Foundation Models
The recommended way is the `grace_models` utility shipped with `tensorpotential`:
- `grace_models list` β view the list of available models.
- `grace_models download <model_name>` β download a specific model (SavedModel).
- `grace_models checkpoint <model_name>` β download a model's training checkpoint.
By default all foundation models are stored in `$HOME/.cache/grace`; override with the
`GRACE_CACHE` environment variable. The downloaded models can be used for simulations in
**ASE** and **LAMMPS** β see the
[GRACEmaker quickstart](https://github.com/ICAMS/grace-tensorpotential/blob/master/docs/quickstart.md).
---
## Fine-tuning foundation models
Fine-tuning is performed from **checkpoints** (not SavedModels). Run `grace_models list`
to see which models expose a `CHECKPOINT:` field; download with
`grace_models checkpoint <MODEL-NAME>` (or it is fetched automatically when needed).
Generate a fine-tuning `input.yaml` interactively with `gracemaker -t`, or add to the
`potential` section manually:
```yaml
potential:
finetune_foundation_model: GRACE-1L-OAM
shift: auto # automatically align FM energies with your DFT reference data
# reduce_elements: True # if True - select from original models only elements present in the CURRENT dataset
```
### Automatic energy shift correction (`shift: auto`)
When `shift: auto` is set alongside `finetune_foundation_model`, GRACEmaker computes optimal
per-element energy shifts that minimize the difference between the foundation model's
predictions and your reference DFT data, injecting them via `ConstantScaleShiftTarget` before
training. This is useful when your DFT settings differ from the foundation model's training
data (systematic energy offset) and leads to faster convergence.
`shift: auto` is independent of `data::reference_energy`. Typical usage:
* `reference_energy: 0` (or dict) β set your DFT reference frame
* `shift: auto` β align the FM output to your DFT reference frame
### Learning rate & initial metrics
Use a small `learning_rate` and evaluate initial metrics:
```yaml
fit:
opt_params: {learning_rate: 0.001, ... }
eval_init_stats: True
```
### Frozen-weights fine-tuning
To mitigate catastrophic forgetting, restrict training to selected variables via
`trainable_variable_names`:
```yaml
# GRACE-2L models
fit:
trainable_variable_names: ["I2/reducing_", "rho/reducing_", "I1/reducing_"]
```
```yaml
# GRACE-1L models
fit:
trainable_variable_names: ["rho/reducing_"]
```
Discover variable names with:
```bash
grace_utils -p ~/.cache/grace/checkpoints/SOME_FOUNDATIONAL_MODEL_NAME/model.yaml summary -v 1
```
|