docs(model): document charge-spin config, so3_readout, distinguish_types; fix population toctree
Maintainers usually reply within 3 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 68/100
- Issue type
- Documentation
- Clarity
- Clearly specified
- Activity status
- Quiet
- Tech stack
- python
- Domain
- documentation
Research direction
Start with the DPA-3 schema block and related spin documentation in deepmd/utils/argcheck.py and doc/model/train-energy-spin.md; inspect dataloader handling for charge_spin and verify backend annotations before writing claims. Update doc/model/train-energy-spin.md, dpa3.md, dpa4.md, train-fitting-property.md, and index.rst, then run the four grep checks in the issue to confirm each option and the population page are documented.
Written by the indexing model from the issue text.
Description
Parent issue: #5917 (checklist items 9, 11, 15, 17)
Scope
Four independent fixes to the doc/model/ pages:
- Charge-spin conditioning training config (
e3fda4537C++ runtime,f39a08128dpa3 decoupled from fparam,6984e4c63paddle): the training-side optionsadd_chg_spin_ebdanddefault_chg_spin(seedeepmd/utils/argcheck.py:694-703and:2097-2108— verify which descriptor each block belongs to, DPA-4/SeZM vs DPA-3) are undocumented. (dim_chg_spinis an internal serialized dimension exposed viaget_dim_chg_spin(), not a config key.) The LAMMPS inference keywordcharge_spinis already documented atdoc/third-party/lammps-command.md:66— cross-link it. so3_readoutDPA-4/SeZM option (4b6506db4):"none"/"glu"/"mlp"read-out FFN mode for the final l=0 descriptor (deepmd/utils/argcheck.py:626-634); no prose indoc/model/dpa4.md.distinguish_typesin property fitting (7cd0d191b): element type-wise bias; schema entry atdeepmd/utils/argcheck.py:2827-2829,2872-2877(defaultTrue); no prose indoc/model/train-fitting-property.md.- Orphaned page:
doc/model/train-fitting-population.mdexists but is missing from thedoc/model/index.rsttoctree.
Implementation plan
1. Charge-spin training config — doc/model/train-energy-spin.md (+ pointer in doc/model/dpa3.md)
Read the DPA-3 schema block (argcheck.py ~line 2090–2150) and the spin training docs first.
- In
doc/model/train-energy-spin.md, document:model/descriptor/add_chg_spin_ebd: embed per-frame charge and spin conditions into the descriptor type embedding;- the
charge_spininput data (shape[nframes, 2],[charge, spin]) and how to provide it in training data (verify data key handling/charge_spin real-data support in the dataloader code); default_chg_spin: fallback[charge, spin]used whencharge_spindata is absent (including at inference time);
- In
doc/model/dpa3.md, add a short subsection pointing to the above (and note backend support per the argcheckdoc_only_pt_supportedannotations — verify whether the DPA3 variant is also supported by Paddle after6984e4c63before writing backend claims). - Cross-reference the LAMMPS
charge_spinkeyword (doc/third-party/lammps-command.md) for inference.
2. so3_readout — doc/model/dpa4.md
Add prose describing the option with the three modes, following the argcheck docstring semantics: none applies a degree-0 scalar FFN to the l=0 slice only (l>0 coefficients discarded); glu/mlp apply a full equivariant FFN on the SO(3) Wigner-D grid so l>0 geometry is folded into l=0 before the scalar read-out; the read-out degree equals the node degree of the last interaction block and the Wigner-D frame order follows kmax. Note backend support annotation (doc_only_pt_supported — verify against current argcheck).
3. distinguish_types — doc/model/train-fitting-property.md
Add a short paragraph: when enabled (default True), per-element-type output statistics/biases are computed for the property fitting net (element type-wise bias), improving accuracy for heteroatom systems; set to False to share one bias across types (verify behavior from deepmd/utils/argcheck.py and the property fitting implementation before writing).
4. Toctree — doc/model/index.rst
Add train-fitting-population to the toctree, placed with the other train-fitting-* entries (after train-fitting-property).
Constraints
- Confirm which descriptor schema block (
argcheck.py:694vs:2097) corresponds to which descriptor page before documenting; keep backend-support statements consistent with thedoc_only_pt_supported/ paddle annotations in the code. - Match surrounding prose style; use
{ref}links for schema cross-references like neighboring pages do.
Verification
grep -n "chg_spin" doc/model/train-energy-spin.md doc/model/dpa3.mdshows new prose.grep -n "so3_readout" doc/model/dpa4.mdshows the option.grep -n "distinguish_types" doc/model/train-fitting-property.mdshows the option.grep -n "train-fitting-population" doc/model/index.rstshows the toctree entry.
Parent issue: #5917
Coding agent: opencode
opencode version: 1.18.9
Model: ustc/k3
Reasoning effort: max
- Dominant language
- Python
- Stars
- 2.1k
- Forks
- 663
- Avg merge
- 3d 11h
- Merged PRs (30d)
- 25
Getting set up
Starts the project's dev container in your browser, under your own GitHub account.
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from deepmodeling/deepmd-kit
-
Difficulty 2/5 1-3 hours Newbie friendliness 73/100
deepmodeling/deepmd-kit#6086 ·
Maintainers usually reply within 3 days
-
Fine-tune descriptor mismatch warning should ignore seedPossibly taken @SiyuanChenToDo claimed this 23 days ago. Open
Difficulty 1/5 Under an hour Newbie friendliness 88/100
deepmodeling/deepmd-kit#6038 · 2 comments ·
Maintainers usually reply within 3 days
-
Docs enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
deepmodeling/deepmd-kit#5766 · 1 comment ·
Maintainers usually reply within 3 days
-
branch: master lang: py todo comment type: todo
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
deepmodeling/deepmd-kit#5480 ·
Maintainers usually reply within 3 days
-
branch: master lang: toml todo comment type: todo
Difficulty 1/5 Under an hour Newbie friendliness 72/100
deepmodeling/deepmd-kit#5462 ·
Maintainers usually reply within 3 days
All issues in deepmodeling/deepmd-kit
Similar issues
-
documentation good first issue priority: P2 status: ready
Difficulty 1/5 Under an hour Newbie friendliness 88/100
RhinoLink-Tech/data-fabric#500 ·
Maintainers usually reply within 1 day
-
backlog
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
EchoTools/nevr-runtime#2384 ·
Maintainers usually reply within 1 day
-
[Bug]: The H2 series' and the H3C's fan 3 is labelled "Chamber Fan", Bambu calls it the exhaust fanOpenarea:ui
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
btclib-org/btclib#3062 ·
Maintainers usually reply within 1 day
-
area:evals area:infra enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
jse-avl/support-bot#4 · 1 comment ·