Skip to content

chore: CI proxy for #3875 - #3922

Open
HuiyingLi wants to merge 33 commits into
mainfrom
huiyingl/ci/run-pr-3875
Open

HuiyingLi wants to merge 33 commits into
mainfrom
huiyingl/ci/run-pr-3875

Conversation

@HuiyingLi

@HuiyingLi HuiyingLi commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

CI-only proxy PR. Do not merge / do not review. Points at the exact head commit of #3875 (7d5ffce) so internal CI runs under the internal-contributor queue; results post back to #3875 via the shared SHA. Source of truth: #3875. Fixes are pushed to the original PR branch, then this proxy is synchronized. Close once CI completes.

kashif and others added 30 commits September 12, 2026 08:27
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: Kashif Rasul <kashif.rasul@gmail.com>
Signed-off-by: HuiyingLi <willwin.lee@gmail.com>
…ting

Signed-off-by: HuiyingLi <willwin.lee@gmail.com>
The CP-free DSpark recipe shards the draft with fully_shard and no explicit
mesh, so torch builds a one-dimensional default mesh whose mesh_dim_names is
None. Exporting the draft's merged expert tensors to the HF layout then died
in _get_expert_mesh_dim_index on tuple(None), which made every checkpoint
save of a DeepSeek V4.1 DSpark run fail. Treat a missing name tuple as empty
and, for an unnamed one-dimensional mesh, use the mesh itself as the expert
partition instead of slicing it by name.

Signed-off-by: khazic <khazzz1c@gmail.com>
c13a0e0 handled the unnamed mesh in get_expert_slice_for_rank, but
split_experts_weights_dtensor_aware still listed mesh_dim_names on its own
before rebuilding the per-expert DTensors, so the first checkpoint save of a
DeepSeek V4.1 DSpark run still died with TypeError there. With no named
dimension left after removing the expert partition, the per-expert slices are
returned as plain tensors, the same outcome as a named single-dimension mesh.

Signed-off-by: khazic <khazzz1c@gmail.com>
The released V4.1 DSpark confidence head reads the collapsed residual stream
before the final norm, matching the official inference code, while the LM head
reads the normalized states. Training this head with BCE therefore
back-propagates through an unbounded activation: on some batches its logit
jumps by tens, the confidence loss spikes by orders of magnitude while CE and
TV stay flat, and that gradient degrades the draft backbone. Disabling the
head removes the spikes but leaves it untrained, which serving needs.

Add a recipe option that detaches the confidence head's inputs so its loss
trains only confidence_head.proj. The served input and the exported weights
are unchanged; the backbone receives the same gradient as with the head
disabled. Off by default; the V4.1 example enables it. Covered by a unit test
that checks where the confidence gradient lands with and without the flag.

Signed-off-by: khazic <khazzz1c@gmail.com>
Signed-off-by: khazic <khazzz1c@gmail.com>
Pass the same named mesh to all draft FSDP units and preserve the CP data-parallel rank group. Restore shared MoE state-dict utilities to the PR base. Verify two-rank BF16 updates and safetensors checkpoint resume with and without activation checkpointing.

Signed-off-by: HuiyingLi <willwin.lee@gmail.com>
Move text-only target policy and backend defaults into DeepseekV41DSparkTargetConfig.build. Keep distributed setup composition in the recipes and preserve their existing option names and overrides. Cover the model-owned loader contract and distributed precompute dispatch.

Signed-off-by: HuiyingLi <willwin.lee@gmail.com>
Signed-off-by: khazic <khazzz1c@gmail.com>
The CPU suite reached 97-98% before the 20-minute timeout in all three attempts. Give the complete suite, including the DSpark distributed tests, enough time to finish. Individual test runtime budgets remain enforced.

Signed-off-by: Huiying <willwin.lee@gmail.com>
@HuiyingLi
HuiyingLi requested a review from a team as a code owner September 17, 2026 10:43
@HuiyingLi

Copy link
Copy Markdown
Contributor Author

/ok to test 7d5ffce

This branch was successfully deployed

3 active deployments
public 7d5ffceb Deployed Sep 17, 2026 by copy-pr-bot[bot] via release / finalize / notify #4638
test 7d5ffceb Deployed Sep 17, 2026 by copy-pr-bot[bot] via cicd-wait-in-queue #10805
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants