99from deepmd .pt .utils import (
1010 env ,
1111)
12+ from deepmd .utils .argcheck import (
13+ normalize ,
14+ )
1215from deepmd .utils .finetune import (
1316 FinetuneRuleItem ,
1417)
@@ -33,6 +36,42 @@ def _warn_descriptor_config_differences(
3336 model_branch : str
3437 Model branch name for logging context
3538 """
39+ # Normalize both configurations to ensure consistent comparison
40+ # This avoids warnings for parameters that only differ due to default values
41+ try :
42+ # Create minimal configs for normalization with required fields
43+ base_config = {
44+ "model" : {
45+ "fitting_net" : {"neuron" : [240 , 240 , 240 ]},
46+ "type_map" : ["H" , "O" ],
47+ },
48+ "training" : {"training_data" : {"systems" : ["fake" ]}, "numb_steps" : 100 },
49+ }
50+
51+ input_config = base_config .copy ()
52+ input_config ["model" ]["descriptor" ] = input_descriptor .copy ()
53+
54+ pretrained_config = base_config .copy ()
55+ pretrained_config ["model" ]["descriptor" ] = pretrained_descriptor .copy ()
56+
57+ # Normalize both configurations
58+ normalized_input = normalize (input_config , multi_task = False )["model" ][
59+ "descriptor"
60+ ]
61+ normalized_pretrained = normalize (pretrained_config , multi_task = False )["model" ][
62+ "descriptor"
63+ ]
64+
65+ if normalized_input == normalized_pretrained :
66+ return
67+
68+ # Use normalized configs for comparison to show only meaningful differences
69+ input_descriptor = normalized_input
70+ pretrained_descriptor = normalized_pretrained
71+ except Exception :
72+ # If normalization fails, fall back to original comparison
73+ pass
74+
3675 if input_descriptor == pretrained_descriptor :
3776 return
3877
0 commit comments