lambench

A benchmark for Large Atomistic Models

https://github.com/deepmodeling/lambench

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (18.0%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

A benchmark for Large Atomistic Models

Basic Info
Statistics
  • Stars: 7
  • Watchers: 7
  • Forks: 7
  • Open Issues: 2
  • Releases: 5
Created over 1 year ago · Last pushed 7 months ago
Metadata Files
Readme License Citation

README.md

LAMBench

[!NOTE] Please visit the OpenLAM project webpage for comprehensive information, interactive results, and community rankings.

Overview

LAMBench is a benchmark designed to evaluate the performance of machine learning interatomic potentials (MLIPs) across multiple domains. It provides a comprehensive suite of tests and metrics to help developers and researchers understand the generalizability of their machine learning models.

Our mission is to:

  • Provide a comprehensive benchmark: Covering diverse atomic systems across multiple domains, moving beyond domain-specific benchmarks.
  • Align with real-world applications: Bridging the gap between model performance on benchmarks and their impact on scientific discovery.
  • Enable clear model differentiation: Offering high discriminative power to distinguish between models with varying performance.
  • Facilitate continuous improvement: Creating dynamically evolving benchmarks that grow with the community, integrating new tasks and models.

Features

  • Comprehensive Benchmarks: Includes a wide range of benchmarks for different downstream tasks.
  • Easy to Use: Simple setup and configuration to get started quickly.
  • Extensible: Easily add new benchmarks and metrics.
  • Detailed Reports: Generates detailed performance reports and visualizations.

Installation

bash pip install git+https://github.com/deepmodeling/LAMBench.git#egg=lambench[deepmd,mace,sevenn,orb]

The optional dependencies are required for the corresponding models.

Usage

To reproduce the results locally or test a custom model, please refer to the ASEModel.evaluate method. The test data can be found here.

  • For direct prediction tasks, you can use the staticmethod run_ase_dptest(calc: Calculator, test_data: Path) -> dict.
  • For calculator tasks, you can use the corresponding scripts provided in lambench.tasks.calculator.

    • An ASEModel object is needed for such tasks; you can create a dummy model as follows:

    ```python model = ASEModel( modelname="dummy", modeltype="ASE", modelfamily="<FAMILYNAME>", virtualenv="dummy-env", # not used in local tests modelmetadata={ "prettyname":"", "numparameters":1, "packages": {"pydummy": "1.0.0"}, # for pydantic validations "dateadded": datetime(2025,5,19) } )

    Note: the corresponding ASE calculator needs to be defined in ASEModel.calc.

    ```

  • For finetune tasks, only models based on DeePMD-kit framework are supported, please raise an issue if you would like to test other models.

Contributing

We welcome contributions from the community. To contribute, please fork the repository, create a new branch, and submit a pull request with your changes.

Adding a new model

To add a model, please modify the lambench/models/models_config.yaml file.

The file contains a list of models with the following structure:

yaml - model_name: a short and concise name for the model model_family: the family of the model; used for selecting ASE Calculator in `ase_models.py` model_type: usually `ASE`; use `DP` for deepmd-kit models model_path: local path to the model weight; null if not required virtualenv: (not used yet) model_metadata: pretty_name: a human-readable name for the model num_parameters: the number of parameters in the model packages: package_name: package_version model_description: date_added: datetime(yyyy,mm,dd)

Please refer to lambench/models/basemodel.py for the field definitions.

Now, add the ASE calculator interface of your model to lambench/models/ase_models.py. Once these modifications are done, please create a pull request. If you have any questions, feel free to create an issue.

Adding a new task

To add a task (specifically a calculator task), please modify the lambench/tasks/calculator/calculator_tasks.yml file. Please use this pull request as an example.

License

LAMBench is licensed under the MIT License. See the LICENSE file for more details.

Cite

@misc{peng2025lambenchbenchmarklargeatomic, title={LAMBench: A Benchmark for Large Atomic Models}, author={Anyang Peng and Chun Cai and Mingyu Guo and Duo Zhang and Chengqian Zhang and Antoine Loew and Linfeng Zhang and Han Wang}, year={2025}, eprint={2504.19578}, archivePrefix={arXiv}, primaryClass={physics.comp-ph}, url={https://arxiv.org/abs/2504.19578}, }

Owner

  • Name: DeepModeling
  • Login: deepmodeling
  • Kind: organization

Define the future of scientific computing together

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
title: "LAMBench"
subtitle: "A benchmarking framework for Large Atom Models"
type: software
authors:
  - family-names: Peng
    given-names: Anyang
    email: pengay@aisi.ac.cn
    corresponding: true
    affiliation: AI for Science Institute, Beijing
    orcid: https://orcid.org/0000-0002-0630-2187
  - family-names: Cai
    given-names: Chun
    email: caic@aisi.ac.cn
    affiliation: AI for Science Institute, Beijing
    orcid: https://orcid.org/0000-0001-6242-0439
  - family-names: Guo
    given-names: Mingyu
    affiliation: DP Technology; School of Chemistry, Sun Yat-sen University, Guangzhou
    orcid: https://orcid.org/0009-0008-3744-1543
  - family-names: Zhang
    given-names: Duo
    affiliation: AI for Science Institute, Beijing
    orcid: https://orcid.org/0000-0001-9591-2659
  - family-names: Zhang
    given-names: Chengqian
    affiliation: AI for Science Institute, Beijing
  - family-names: Loew
    given-names: Antonie
    affiliation: Rhur University Bochum, Bochum, Germany
  - family-names: Zhang
    given-names: Linfeng
    affiliation: AI for Science Institute, Beijing; DP Technology
  - family-names: Wang
    given-names: Han
    affiliation: Laboratory of Computational Physics, Institute of Applied Physics and Computational Mathematics
    corresponding: true
    email: wang_han@iapcm.ac.cn

repository-code: "https://github.com/deepmodeling/LAMBench"
url: "https://github.com/deepmodeling/LAMBench"
license: MIT
version: 0.1.0 # If you used a specific version of the software, please specify it here
date-released: "2025-03-01"

GitHub Events

Total
  • Create event: 48
  • Issues event: 44
  • Release event: 3
  • Watch event: 4
  • Delete event: 45
  • Issue comment event: 95
  • Public event: 1
  • Push event: 103
  • Pull request review comment event: 33
  • Pull request review event: 80
  • Pull request event: 106
  • Fork event: 5
Last Year
  • Create event: 48
  • Issues event: 44
  • Release event: 3
  • Watch event: 4
  • Delete event: 45
  • Issue comment event: 95
  • Public event: 1
  • Push event: 103
  • Pull request review comment event: 33
  • Pull request review event: 80
  • Pull request event: 106
  • Fork event: 5

Committers

Last synced: 11 months ago

All Time
  • Total Commits: 604
  • Total Committers: 4
  • Avg Commits per committer: 151.0
  • Development Distribution Score (DDS): 0.434
Past Year
  • Commits: 604
  • Committers: 4
  • Avg Commits per committer: 151.0
  • Development Distribution Score (DDS): 0.434
Top Committers
Name Email Commits
Anyang Peng 1****l 342
caic99 a****c@g****m 245
SchrodingersCattt g****2@1****m 12
pre-commit-ci[bot] 6****] 5
Committer Domains (Top 20 + Academic)
163.com: 1

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 71
  • Total pull requests: 29
  • Average time to close issues: 12 minutes
  • Average time to close pull requests: about 13 hours
  • Total issue authors: 2
  • Total pull request authors: 5
  • Average comments per issue: 1.99
  • Average comments per pull request: 0.55
  • Merged pull requests: 24
  • Bot issues: 70
  • Bot pull requests: 8
Past Year
  • Issues: 71
  • Pull requests: 29
  • Average time to close issues: 12 minutes
  • Average time to close pull requests: about 13 hours
  • Issue authors: 2
  • Pull request authors: 5
  • Average comments per issue: 1.99
  • Average comments per pull request: 0.55
  • Merged pull requests: 24
  • Bot issues: 70
  • Bot pull requests: 8
Top Authors
Issue Authors
  • github-actions[bot] (87)
  • Yi-FanLi (1)
Pull Request Authors
  • anyangml (44)
  • caic99 (14)
  • github-actions[bot] (13)
  • pre-commit-ci[bot] (7)
  • SchrodingersCattt (3)
  • Copilot (1)
Top Labels
Issue Labels
approval (75)
Pull Request Labels
codex (2)

Dependencies

.github/workflows/cicd-ut.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
  • codecov/codecov-action v5 composite
.github/workflows/run.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
  • trstringer/manual-approval v1 composite
.github/workflows/update_json.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
  • peter-evans/create-pull-request v7 composite
pyproject.toml pypi
  • SQLAlchemy [pymysql]
  • ase *
  • dpdata >= 0.2.22
  • numpy *
  • pandas *
  • pydantic *
  • python-dotenv *
  • pyyaml *
  • tqdm *