OrbMol / README.md
BenjaminRhodes's picture
Update README.md
5702df0 verified
---
license: apache-2.0
---
# OrbMol: Extending Orb to Molecular Systems
Built on the [Orb-v3 architecture](https://arxiv.org/abs/2504.06231), OrbMol is a universal interatomic potential trained on the [Open Molecules 2025 (OMol25)](https://arxiv.org/pdf/2505.08762) dataset—over 100M high-accuracy DFT calculations (ωB97M-V/def2-TZVPD).
Unlike its predecessors, OrbMol accepts total charge and spin multiplicity, enabling it to accurately model open-shell, ionic electrolytes, metal complexes and biomolecules.
---
## Model checkpoints
There are two model checkpoints available:
- **OrbMol**: conservative default model
- **OrbMol-direct**: direct variant (i.e. forces are not the exact gradient of the energy)
Both models use a 6 Å radius cutoff with "infinite" (120) max neighbours in the neighborlist computation.
| Name | Checkpoint File | Hash Prefix |
|---------------|------------------------------------------------------|-------------|
| **OrbMol** | `orb-v3-conservative-omol-20250820.safetensors` | dc9964d66d54 |
| **OrbMol-direct** | `orb-v3-direct-omol-20250820.safetensors` | — |
---
## 🚀 Quick Start
Head to the [orb-models](https://github.com/orbital-materials/orb-models) Github repository for complete instructions. In a nutshell:
```bash
pip install orb-models
pip install --extra-index-url=https://pypi.nvidia.com "cuml-cu11==25.2.*" # For cuda versions >=11.4, <11.8
pip install --extra-index-url=https://pypi.nvidia.com "cuml-cu12==25.2.*" # For cuda versions >=12.0, <13.0
```
```python
import ase
from ase.build import molecule
from orb_models.forcefield import atomic_system, pretrained
from orb_models.forcefield.base import batch_graphs
device = "cpu" # or device="cuda"
orbff = pretrained.orb_v3_conservative_omol(
device=device,
precision="float32-high", # or "float32-highest" / "float64
)
atoms = molecule("C6H6")
atoms.info["charge"] = 0 # total charge
atoms.info["spin"] = 1 # spin multiplicity
graph = atomic_system.ase_atoms_to_atom_graphs(atoms, orbff.system_config, device=device)
result = orbff.predict(graph, split=False)
```
---
## Support
If you run into any issues feel free to post your questions or comments on our [Github Issues page](https://github.com/orbital-materials/orb-models/issues).
## License
ORB models are licensed under the Apache License, Version 2.0. Please see the [LICENSE file](https://github.com/orbital-materials/orb-models/blob/main/LICENSE) for details.
---
## Citation
If you use this work, please cite:
```
@misc{rhodes2025orbv3atomisticsimulationscale,
title={Orb-v3: atomistic simulation at scale},
author={Benjamin Rhodes and Sander Vandenhaute and Vaidotas Šimkus and James Gin and Jonathan Godwin and Tim Duignan and Mark Neumann},
year={2025},
eprint={2504.06231},
archivePrefix={arXiv},
primaryClass={cond-mat.mtrl-sci},
url={https://arxiv.org/abs/2504.06231},
}
@misc{neumann2024orbfastscalableneural,
title={Orb: A Fast, Scalable Neural Network Potential},
author={Mark Neumann and James Gin and Benjamin Rhodes and Steven Bennett and Zhiyi Li and Hitarth Choubisa and Arthur Hussey and Jonathan Godwin},
year={2024},
eprint={2410.22570},
archivePrefix={arXiv},
primaryClass={cond-mat.mtrl-sci},
url={https://arxiv.org/abs/2410.22570},
}
```