Conversation
Share GPU ONNX Runtime across NeuralPlanner and ONNX policy deployment, constrain it to the CUDA 12 release line, and document migration from the CPU-only nmg extra. BREAKING CHANGE: replace embodichain[nmg] with embodichain[policy-deploy] and remove any existing CPU ONNX Runtime package before installing the GPU runtime.
|
Comment on lines
54
to
58
| [project.optional-dependencies] | ||
| nmg = [ | ||
| "onnxruntime>=1.20", | ||
| policy-deploy = [ | ||
| # ORT 1.27+ defaults to CUDA 13; EmbodiChain's supported stack uses CUDA 12. | ||
| "onnxruntime-gpu>=1.20,<1.27", | ||
| ] |
There was a problem hiding this comment.
Packaging Contract Lacks Coverage
The new public installation contract is only manually validated. Existing metadata tests iterate through extras but do not assert that policy-deploy exists, nmg is absent, or the CUDA-compatible <1.27 bound remains. A focused metadata test would prevent future packaging changes from silently breaking the documented migration or CUDA 12 compatibility.
Prompt To Fix With AI
This is a comment left during a code review.
Path: pyproject.toml
Line: 54-58
Comment:
**Packaging Contract Lacks Coverage**
The new public installation contract is only manually validated. Existing metadata tests iterate through extras but do not assert that `policy-deploy` exists, `nmg` is absent, or the CUDA-compatible `<1.27` bound remains. A focused metadata test would prevent future packaging changes from silently breaking the documented migration or CUDA 12 compatibility.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
yuecideng
approved these changes
Sep 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Replace the NMG-specific
nmgextra, which installs CPU ONNX Runtime, withpolicy-deployfor both NeuralPlanner and ONNX-backed DexSim Motion Policy Kitconsumers.
pip install "embodichain[policy-deploy]"installsonnxruntime-gpu>=1.20,<1.27; base dependencies remain unchanged.The upper bound keeps the documented CUDA 12 stack compatible: ORT 1.27+
defaults to CUDA 13 according to the
official compatibility table.
Update NeuralPlanner's missing-runtime hint, installation instructions, and
motion-planning context to use the shared extra.
Migration: replace
[nmg]with[policy-deploy]in install commands. ExistingCPU ORT installations need removal before installing the GPU package; the
installation guide includes cleanup instructions for environments with both
packages. NMG functionality and execution-provider selection are preserved.
Related: #520.
Type of change
[nmg]installation commands require migration)Validation
uv build --no-sources; both passtwine check.nmgabsent,and only
policy-deployselectsonnxruntime-gpu>=1.20,<1.27.--no-depsin an isolated environment and verifiedinstalled extra metadata and the packaged NeuralPlanner installation hint.
(2,067/2,067 exports); context checker and 23 context tests pass.
Validation covers packaging and documentation. Full simulation/GPU inference
tests and a full Sphinx build were not run. Black emitted a Python-version
advisory, and pytest emitted a cache-directory warning; both checks exited 0.
Screenshots
Not applicable.
Checklist
black .command to format the code base.