VerificationOptions¶
- class torch.onnx.verification.VerificationOptions(flatten=True, ignore_none=True, check_shape=True, check_dtype=True, backend=OnnxBackend.ONNX_RUNTIME_CPU, rtol=0.001, atol=1e-07, remained_onnx_input_idx=None, acceptable_error_percentage=None)[source]¶
ONNX 导出验证的选项。
- 变量
flatten (bool) – 如果为 True,则将嵌套的列表/元组/字典输入解包为 ONNX 的扁平化张量列表。如果要为 ONNX 保留嵌套结构,请将其设置为 False,这通常是导出 ScriptModules 的情况。默认值为 True。
ignore_none (bool) – 是否忽略 torch 输出中的 None 类型,这通常是跟踪的情况。如果 torch 输出应保留 None 类型,请将其设置为 False,这通常是导出 ScriptModules 的情况。默认为 True。
check_shape (bool) – 是否检查 PyTorch 和 ONNX Runtime 输出之间的形状是否完全相同。将其设置为 False 以允许输出形状广播。默认为 True。
check_dtype (bool) – 是否检查 PyTorch 和 ONNX Runtime 输出之间的类型是否一致。默认为 True。
backend (OnnxBackend) – 用于验证的 ONNX 后端。默认为 OnnxBackend.ONNX_RUNTIME_CPU。
rtol (float) – ONNX 和 PyTorch 输出比较中的相对容差。
atol (float) – ONNX 和 PyTorch 输出比较中的绝对容差。
remained_onnx_input_idx (Sequence[int] | None) – 如果提供,则只将指定的输入传递到 ONNX 模型。当模型中存在未使用的输入时,提供一个列表。由于未使用的输入将在导出的 ONNX 模型中删除,因此提供所有输入会导致意外输入错误。此参数告诉验证器将哪些输入传递到 ONNX 模型。
acceptable_error_percentage (float | None) – 比较中可接受的元素不匹配百分比。它应为 0.0 到 1.0 之间的浮点数。