调试
使用 ONNX Runtime 的自定义构建
- 按照 WebNN 安装指南启用 WebNN API,并切换到 Windows ML / ONNX Runtime 后端
- 将 ONNX Runtime 动态链接库放入
C:\Program Files\下的某个文件夹,例如C:\Program Files\ONNXRuntime - 使用命令行开关
--webnn-ort-library-path-for-testing启动 Chrome 或 Edge 浏览器
"%LOCALAPPDATA%\Google\Chrome SxS\Application\chrome.exe" --webnn-ort-library-path-for-testing="C:\Program Files\ONNXRuntime" --allow-third-party-modules"%LOCALAPPDATA%\Microsoft\Edge SxS\Application\msedge.exe" --webnn-ort-library-path-for-testing="C:\Program Files\ONNXRuntime" --allow-third-party-modules使用执行提供程序的自定义构建
如果您在 AMD、Intel、Nvidia 或 Qualcomm 设备上运行 WebNN,并需要使用 ONNX Runtime 的特定执行提供程序(EP)来调试 WebNN:
- 按照 WebNN 安装指南启用 WebNN API,并切换到 Windows ML / ONNX Runtime 后端
- 将 ONNX Runtime 和执行提供程序动态链接库放入
C:\Program Files\下的某个文件夹,例如C:\Program Files\ONNXRuntime-EP - 使用命令行开关
--webnn-ort-ep-library-path-for-testing启动 Chrome 或 Edge 浏览器
独立硬件供应商的执行提供程序映射表
| IHVs | 执行提供程序 | DLL |
|---|---|---|
| OpenVINOExecutionProvider | onnxruntime_providers_openvino_plugin.dll | |
| TBD | TBD | |
| NvTensorRTRTXExecutionProvider | onnxruntime_providers_nv_tensorrt_rtx.dll | |
| QNNExecutionProvider | onnxruntime_providers_qnn.dll |
Intel OpenVINO 执行提供程序
以下示例展示了如何指定 ONNX Runtime 和 Intel OpenVINO Execution Provider 库的位置:
"%LOCALAPPDATA%\Google\Chrome SxS\Application\chrome.exe" --webnn-ort-ep-library-path-for-testing=OpenVINOExecutionProvider?"C:\Program Files\ONNXRuntime-EP\onnxruntime_providers_openvino_plugin.dll" --allow-third-party-modules"%LOCALAPPDATA%\Microsoft\Edge SxS\Application\msedge.exe" --webnn-ort-ep-library-path-for-testing=OpenVINOExecutionProvider?"C:\Program Files\ONNXRuntime-EP\onnxruntime_providers_openvino_plugin.dll" --allow-third-party-modules其他 IHV
AMD(TBD)
TBD
Nvidia Nv Tensor RT RTX 执行提供程序
"%LOCALAPPDATA%\Google\Chrome SxS\Application\chrome.exe" --webnn-ort-ep-library-path-for-testing=NvTensorRTRTXExecutionProvider?"C:\Program Files\ONNXRuntime-EP\onnxruntime_providers_nv_tensorrt_rtx.dll" --allow-third-party-modules"%LOCALAPPDATA%\Microsoft\Edge SxS\Application\msedge.exe" --webnn-ort-ep-library-path-for-testing=NvTensorRTRTXExecutionProvider?"C:\Program Files\ONNXRuntime-EP\onnxruntime_providers_nv_tensorrt_rtx.dll" --allow-third-party-modulesQualcomm QNN 执行提供程序
"%LOCALAPPDATA%\Google\Chrome SxS\Application\chrome.exe" --webnn-ort-ep-library-path-for-testing=QNNExecutionProvider?"C:\Program Files\ONNXRuntime-EP\onnxruntime_providers_qnn.dll" --allow-third-party-modules"%LOCALAPPDATA%\Microsoft\Edge SxS\Application\msedge.exe" --webnn-ort-ep-library-path-for-testing=QNNExecutionProvider?"C:\Program Files\ONNXRuntime-EP\onnxruntime_providers_qnn.dll" --allow-third-party-modules使用 GPU 或 NPU 驱动程序的自定义构建
如果您使用自定义或内部的 GPU 或 NPU 驱动程序进行测试,请在启动浏览器时添加 --allow-third-party-modules 命令行开关。
"%LOCALAPPDATA%\Google\Chrome SxS\Application\chrome.exe" --allow-third-party-modules"%LOCALAPPDATA%\Microsoft\Edge SxS\Application\msedge.exe" --allow-third-party-modules调试沙盒问题
在某些情况下,您可能需要使用 --disable-gpu-sandbox 命令行开关禁用 Chromium 的安全沙盒来调试 WebNN。
"%LOCALAPPDATA%\Google\Chrome SxS\Application\chrome.exe" --disable-gpu-sandbox"%LOCALAPPDATA%\Microsoft\Edge SxS\Application\msedge.exe" --disable-gpu-sandbox查看详细日志
您可以使用命令行开关 --webnn-ort-logging-level 配置 ONNX Runtime 的日志严重级别。其他可用的严重级别包括 “INFO”、“WARNING”、“ERROR”(默认)和 “FATAL”。
"%LOCALAPPDATA%\Google\Chrome SxS\Application\chrome.exe" --webnn-ort-logging-level=VERBOSE"%LOCALAPPDATA%\Microsoft\Edge SxS\Application\msedge.exe" --webnn-ort-logging-level=VERBOSE其他调试选项
还提供以下其他 WebNN 命令行开关:
--webnn-ort-ep-device--webnn-ort-ignore-ep-blocklist--webnn-ort-graph-optimization-level--webnn-ort-enable-profiling--webnn-ort-dump-model--webnn-tflite-dump-model
其他资源
Last updated on