jinzhezenggroup/deepmd-train
Train DeePMD-kit models with progressive disclosure. Use when the user wants to train a DeePMD-kit potential, prepare an input.json, choose between model families such as se_e2_a/DeepPot-SE and DPA3, run `dp train`, monitor learning curves, freeze checkpoints, or test trained models. Start with model selection and read only the selected model reference under `models/` when model-specific configuration is needed.
npx skills add https://github.com/jinzhezenggroup/computational-chemistry-agent-skills --skill deepmd-train
Use this skill to guide DeePMD-kit model training without loading every model-specific recipe up front.
The workflow is intentionally progressive:
models/.input.json, run training, monitor, freeze, and test.Do not start by reading every model document. First classify the request:
Available model references:
| Model reference | Read when |
| ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| models/se-e2-a.md | The user wants a classical DeepPot-SE baseline, broad compatibility, or a smaller/established production model. |
| models/dpa3.md | The user wants a high-accuracy DPA3/LAM workflow, large/diverse datasets, dynamic neighbor selection, or pretrained DPA3-style training. |
Ask only for missing information that changes the choice. Prefer reasonable defaults when the answer is obvious from context.
Key inputs:
Recommended defaults:
dp --version
For PyTorch training, use dp --pt ...; for TensorFlow, use dp ...; for other backends, confirm the installed backend first.
Training data should be in DeePMD format, typically deepmd/npy or deepmd/hdf5. If the user has raw electronic-structure outputs, convert them first with dpdata before writing the training input.
Minimum information needed to build input.json:
type_mapAfter selecting a model, read the corresponding file under models/ and apply its model-specific configuration, hyperparameters, and caveats.
dp --pt train input.json
Use the backend-specific command if not using PyTorch.
Restart from a checkpoint when needed:
dp --pt train input.json --restart model.ckpt.pt
Training progress is usually written to lcurve.out. Check for:
dp --pt freeze -o model.pth
dp --pt test -m model.pth -s /path/to/test_system -n 30
Adjust the backend flags and output extension for non-PyTorch models.
type_map matches the data and model/pretrained checkpoint.input.json is valid JSON.lcurve.out or equivalent logs.Take jinzhezenggroup/deepmd-train from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.