CI: add DSpark 16-card serving accuracy guard - #1144
zhangqi-chen merged 1 commit into
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (3)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe CI detects changes to the DeepSeek V4 DSpark model and runs a dedicated serving accuracy job. The serving action resolves the DSpark model directory and executes tests on 16 devices. ChangesDeepSeek DSpark serving tests
Priority: ⬇️ Low Estimated code review effort: 3 (Moderate) | ~25 minutes Sequence Diagram(s)sequenceDiagram
participant PullRequest
participant detect-changes
participant serving-dspark
participant pypto-serving-tests
participant task-submit
PullRequest->>detect-changes: change models/deepseek_v4_flash_dspark/
detect-changes->>serving-dspark: set run_dspark_serving_tests=true
serving-dspark->>pypto-serving-tests: invoke deepseek-v4-dspark tests
pypto-serving-tests->>task-submit: run accuracy test on 16 devices
task-submit-->>pypto-serving-tests: return test result
Merge Risk: ⚪ Minimal · up to No confirmed merge-blocking risk remains in this CI-only change. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. A rabbit checks the model trail Comment |
|
This draft depends on hw-native-sys/pypto-serving#213 landing first: the reusable action checks out pypto-serving/main, and that PR supplies tests/test_deepseek_dspark_accuracy.py and the DSpark serving integration. The selected self-hosted runner needs 16 available cards and PYPTO_DSV4_DSPARK_MODEL_DIR set in its service environment to the DSpark W8A8 checkpoint directory. Validation: all pre-commit hooks passed. Local checks parsed the YAML, validated embedded shell syntax, exercised DSpark versus unrelated change selection and missing-model handling, and captured the task-submit payload to verify the 16-card request, model path, PYTHONPATH, pytest target, and absence of Simpler timeout overrides. The Palace 64/128 guard previously passed on the serving branch with pypto-lib 57e9d6a and default Simpler timeouts (2 passed in 500.94s). The new CI job has not been run end to end against this PR's pypto-lib base. As with the existing model-specific serving jobs, CI-only edits do not trigger the new device job. Related: #1133 |
- Add a separate serving-dspark PR job for changes under models/deepseek_v4_flash_dspark, with its own build and pip caches. - Run the Palace 64-prompt/128-completion HTTP guard from pypto-serving/main on 16 cards against the pypto-lib checkout under test. Print completions for review and check the response contract and token accounting. - Pin the guard to PyPTO 747e1e4ba99f13dea1a609d893ac7512e85a5897. - Resolve PYPTO_DSV4_DSPARK_MODEL_DIR from runner configuration, validate the weights directory, and forward it through task-submit. - Allow 4800 seconds for device scheduling and 7200 seconds for test execution, with job-level headroom and cleanup for orphaned tasks and build artifacts.
831ac9d to
2494855
Compare
models/deepseek_v4_flash_dspark, with its own build and pip caches.
pypto-serving/main on 16 cards against the pypto-lib checkout under
test. Print completions for review and check the response contract
and token accounting with default Simpler timeouts.
validate the weights directory, and forward it through task-submit.
artifact cleanup for the new serving job.