add training_reuse_decay_steps - #1055
Conversation
| if jinput['loss'].get('start_pref_f') is not None: | ||
| jinput['loss']['start_pref_f'] = training_reuse_start_pref_f | ||
| jinput['learning_rate']['start_lr'] = training_reuse_start_lr | ||
| jinput['learning_rate']['decay_steps'] = training_reuse_decay_steps |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #1055 +/- ##
=======================================
Coverage 39.54% 39.55%
=======================================
Files 99 99
Lines 17980 17982 +2
=======================================
+ Hits 7111 7113 +2
Misses 10869 10869 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Verdict: Changes requested. The new parameter defaults to None, but the code unconditionally overwrites an existing valid decay_steps value, so every reuse-training configuration that omits the parameter gets decay_steps: null. The PR also lacks schema/docs updates and tests for the default behavior.
Note: The Codex quota is about to reset, so I am using the remaining tokens to review all open PRs in this repository.
Coding agent: Codex
Codex version: codex-cli 0.144.6
Model: gpt-5.6-sol
Reasoning effort: xhigh
| if jinput['loss'].get('start_pref_f') is not None: | ||
| jinput['loss']['start_pref_f'] = training_reuse_start_pref_f | ||
| jinput['learning_rate']['start_lr'] = training_reuse_start_lr | ||
| jinput['learning_rate']['decay_steps'] = training_reuse_decay_steps |
There was a problem hiding this comment.
[Blocking] training_reuse_decay_steps defaults to None, so this unconditional assignment overwrites an existing integer in the training template and produces decay_steps: null, which DeePMD cannot consume. Override the value only when the user explicitly provides it:
| jinput['learning_rate']['decay_steps'] = training_reuse_decay_steps | |
| if training_reuse_decay_steps is not None: | |
| jinput['learning_rate']['decay_steps'] = training_reuse_decay_steps |
Also add arginfo/documentation and tests proving that omission preserves the original value while an explicit value overrides it.
When starting with init-model, add a "training_reuse_decay_steps" parameter.