Skip to content

QuantumMisaka/dpeva

Repository files navigation

DP-EVA Logo

The DP-EVA identity bridges deep potential scientific modeling ('DP') and radical AI evolution ('EVA'), connected by an acceleration beam that filters order from chaos. It symbolizes the awakening of critical data from the vast chemical space to accelerate scientific discovery.

DP-EVA (Deep Potential EVolution Accelerator)

Version Python License Unit Test Coverage

DP-EVA is an active learning framework designed for efficient fine-tuning of DPA universal machine learning interatomic potential. It integrates uncertainty quantification (UQ), representative sampling (DIRECT), and automated DFT labeling workflows to minimize data annotation costs while maximizing model performance via fully unraveling the knowledge of DPA pre-trained PES model.

Key Features

  • Active Learning Loop: Fully pipeline for Training -> Inference -> Collection -> Labeling.
  • Data Collection: Collects data from target data pool based on DPA fine-tuning and descriptor.
    • 2D Shallow UQ: Supports 2-Dimensional Uncertainty Quantification (UQ) with Query by Committee (QbC) and Random Network Distillation (RND) in the shallow layer (fitting-net) of DPA model.
    • Smart Sampling: Use DIRECT sampling based on DPA descriptor to select the most representative configurations in target data pool.
  • HPC Ready: Built-in JobManager supports seamless switching between Local and Slurm backends, with optimized task packing for massive labeling jobs.
  • User and Agent Friendly: Provides a unified CLI dpeva for all elementary workflows to both user and AI agent.
  • Labeling Automation: Integrated DFT workflow (ABACUS) for automatic input generation, error correction, and data cleaning.

Quick Start

Installation

For detailed installation instructions, please refer to the Installation Guide.

git clone https://github.com/QuantumMisaka/dpeva.git
cd dpeva
pip install -e .

Usage

DP-EVA provides a unified CLI dpeva for all workflows. See CLI Guide for more details.

# 1. Training
dpeva train config_train.json

# 2. Inference & UQ
dpeva infer config_infer.json

# 3. Feature Generation
dpeva feature config_feature.json

# 4. Collection (Sampling)
dpeva collect config_collect.json

# 5. Labeling (DFT)
dpeva label config_label.json

# 6. Analysis
dpeva analysis config_analyze.json

For detailed configuration examples, see examples/recipes/.

Documentation

📘 Latest Documentation

Start from the repository documentation index: Docs Index | Guides | Reports

License

LGPL-v3 License