Repository navigation
v1.0.0
🚀 NEPAdapters v1.0.0
NEPAdapters 的首个正式版本,将 NepTrainKit 中的 NEP 运行时拆分为可独立安装、测试和发布的计算适配层。
✨ 主要功能
- 统一接口:提供 Python、C/C++ 和 LAMMPS 接口,后端必须显式选择;不可用或不支持时会明确报错,不会静默切换。
- CPU 后端:支持普通 NEP、qNEP、spin NEP、dipole、polarizability 和 DFT-D3。
- CUDA 后端:支持普通 NEP4/NEP5、qNEP direct 和 spin NEP,角向描述符扩展至
l_max=8。 - Python 与 ASE:支持 NumPy batch、ASE calculator、模型信息检查和 descriptor 输出。
- LAMMPS:提供 CPU
nep/cpu和 CUDA Kokkosnep/gpu/kk;nep/gpu与nep/gpu/kk/device为兼容别名。
📦 安装与平台
支持 CPython 3.10–3.14:
- Linux x86_64:CPU + CUDA
- Windows x86_64:CPU + CUDA
- macOS x86_64 / arm64:CPU
python -m pip install "nep-adapters[ase]"Linux 和 Windows wheel 已包含 CUDA Runtime,使用 CUDA 后端只需兼容的 NVIDIA 驱动。
🧪 验证
- CPU/CUDA 普通、spin 及
l_max=5..8一致性测试通过。 - RTX 4090 CUDA Release 测试
29/29通过。 - Windows CUDA wheel 已在 GTX 1050 Ti 上完成真实计算验证。
- CPU OpenMP、LAMMPS MPI、wheel 内容及隔离安装检查通过。
⚠️ 当前边界
- Python batch 要求全周期边界。
- CUDA 暂不支持 dipole、polarizability、DFT-D3、type-dependent cutoff、typewise/flexible ZBL 和双隐藏层 ANN。
- qNEP CUDA wheel 使用 direct reciprocal-space;LAMMPS CUDA Kokkos 暂不支持 qNEP。
- LAMMPS GPU 仅支持 CUDA Kokkos device 路径;spin MPI 的正式验证范围为单节点。
Full Changelog: https://github.com/MagTheoryLab/NEPAdapters/commits/v1.0.0