Description
When building all enabled plugins on the host using:
./plugins/common/build_all_plugins.sh --host
the neural receiver plugin fails while generating the TensorRT engine plan because the modelopt Python package cannot be imported.
The system is a DGX Spark platform and TensorRT 11 is detected correctly.
Steps to reproduce
cd ~/sionna-rk
./plugins/common/build_all_plugins.sh --host
Actual behavior
Building plugins using build.host section
Searching for plugins in: /home/airan/sionna-rk/plugins
Processing plugin: data_acquisition
Build skipped (not enabled or no command configured)
----------------------------------------
Processing plugin: ric_xapps
Build skipped (not enabled or no command configured)
----------------------------------------
Processing plugin: neural_receiver
Build enabled. Executing: ./scripts/build-trt-plans.sh --plan ./models/nrx_oai.host.plan
Working directory: /home/airan/sionna-rk/plugins/neural_receiver
Using plan file: /home/airan/sionna-rk/plugins/neural_receiver/models/nrx_oai.host.plan
Using ONNX file: /home/airan/sionna-rk/ext/neural_rx/onnx_models/nrx_oai.onnx
Detected TensorRT major version: 11
ERROR: the 'modelopt' Python package is required to build TensorRT v11 plans
Install it with 'pip install nvidia-modelopt[onnx]' (it is included in
requirements.txt and installed by scripts/configure-system.dgx-spark.sh).
Expected behavior
The host build script should automatically use the Python virtual environment created by:
./scripts/configure-system.dgx-spark.sh
and successfully import modelopt before generating:
plugins/neural_receiver/models/nrx_oai.host.plan
Alternatively, the configuration script should ensure that nvidia-modelopt[onnx] is installed and verify the installation before completing.
Workaround
Installing the package manually in the repository virtual environment resolves the missing dependency:
cd ~/sionna-rk
env/bin/python -m pip install --upgrade 'nvidia-modelopt[onnx]'
env/bin/python -c "import modelopt; print(modelopt.__file__)"
./plugins/common/build_all_plugins.sh --host
Suggested improvements
- Verify that
modelopt can be imported at the end of scripts/configure-system.dgx-spark.sh.
- Print the Python interpreter and virtual environment selected by
build-trt-common.sh.
- Provide an option for
build_all_plugins.sh to install or synchronize missing Python requirements automatically.
- Exit with a more explicit message when the repository virtual environment exists but does not contain the required dependency.
This would make it easier to determine whether the issue is caused by an incomplete environment setup, an outdated virtual environment, or failure to activate the expected environment.
Description
When building all enabled plugins on the host using:
the neural receiver plugin fails while generating the TensorRT engine plan because the
modeloptPython package cannot be imported.The system is a DGX Spark platform and TensorRT 11 is detected correctly.
Steps to reproduce
Actual behavior
Expected behavior
The host build script should automatically use the Python virtual environment created by:
and successfully import
modeloptbefore generating:Alternatively, the configuration script should ensure that
nvidia-modelopt[onnx]is installed and verify the installation before completing.Workaround
Installing the package manually in the repository virtual environment resolves the missing dependency:
Suggested improvements
modeloptcan be imported at the end ofscripts/configure-system.dgx-spark.sh.build-trt-common.sh.build_all_plugins.shto install or synchronize missing Python requirements automatically.This would make it easier to determine whether the issue is caused by an incomplete environment setup, an outdated virtual environment, or failure to activate the expected environment.