Closed ChiahsinChu closed 3 weeks ago
This update introduces a comprehensive enhancement to the DeepMD framework by adding support for multi-fitting atomic models. Key changes include the implementation of the DPMultiFittingAtomicModel
class, a new function for creating multi-fitting models, and extensive methods for handling atomic predictions, neighbor selections, and serialization. Additionally, various test cases and an example configuration for water modeling have been provided to ensure robustness and usability.
File Path | Change Summary |
---|---|
deepmd/dpmodel/atomic_model/__init__.py |
Added export for DPMultiFittingAtomicModel . |
deepmd/dpmodel/atomic_model/dp_multi_fitting_atomic_model.py |
Introduced DPMultiFittingAtomicModel class with methods for atomic prediction, serialization, and parameter handling. |
deepmd/dpmodel/model/make_multi_fitting_model.py |
Added make_multi_fitting_model function and CM class for creating multi-fitting models. |
deepmd/pt/model/atomic_model/dp_multi_fitting_atomic_model.py |
Introduced DPMultiFittingAtomicModel class with methods for fitting nets, descriptors, and atomic modeling parameters. |
deepmd/pt/model/model/__init__.py |
Added get_multi_fitting_model function and updated get_model function to support multi-fitting models. Exported make_multi_fitting_model . |
deepmd/pt/model/model/make_multi_fitting_model.py |
Added make_multi_fitting_model function and CM class with methods for multi-fitting model functionalities. |
deepmd/pt/model/model/multi_fitting_test_model.py |
Introduced MultiFittingTestModel class for testing multi-fitting models with methods for model output definition and forward computation. |
examples/water/multi_fitting/input.json |
Added a model configuration file for multi-fitting scenario targeting water modeling. |
source/tests/pt/model/test_dp_multi_fitting_atomic_model.py |
Added test cases for integration of atomic models, ensuring model consistency and JIT compilation using Torch. |
sequenceDiagram
participant User
participant ModelFactory
participant DPMultiFittingAtomicModel
participant CM
User->>ModelFactory: Request multi-fitting model creation
ModelFactory->>DPMultiFittingAtomicModel: Initialize atomic model
ModelFactory->>CM: Generate fitting model
CM->>DPMultiFittingAtomicModel: Utilize atomic model methods
User->>CM: Interact with fitting model (e.g., forward pass)
CM->>User: Return model output
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Attention: Patch coverage is 44.47761%
with 372 lines
in your changes missing coverage. Please review.
Project coverage is 82.16%. Comparing base (
6d378f4
) to head (ce6ab78
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Add interface to multi-fitting architecture. The fitting nets can be defined in
model/fitting_net_dict
(Dict). The custom model can be defined by inheritingdeepmd.pt.model.model.dp_multi_fitting_model.DPMultiFittingModel
.Summary by CodeRabbit
New Features
DPMultiFittingAtomicModel
class for advanced atomic property predictions.make_multi_fitting_model
function to create customizable multi-fitting models.MultiFittingTestModel
class for testing multi-fitting models.Tests
Examples
input.json
for multi-fitting scenarios.