onnx.utils

Extractor

class onnx.utils.Extractor(model: ModelProto)[source]

extract_model

onnx.utils.extract_model(input_path: str | PathLike, output_path: str | PathLike, input_names: list[str], output_names: list[str], check_model: bool = True, infer_shapes: bool = True) None[source]

从 ONNX 模型中提取子模型。

子模型由输入和输出张量的名称_精确地_定义。

注意:对于控制流运算符,例如 If 和 Loop,_子模型_的_边界_,由输入和输出张量定义,不应_穿过_连接到_主_图的子图,因为这些运算符的属性。

注意:当提取的模型大小大于 2GB 时,额外数据将保存在“output_path.data”中。

参数: :
  • input_path (str | os.PathLike) – 原 ONNX 模型的路径。

  • output_path (str | os.PathLike) – 保存提取的 ONNX 模型的路径。

  • input_names (list of string) – 要提取的输入张量的名称。

  • output_names (list of string) – 要提取的输出张量的名称。

  • check_model (bool) – 是否在原始模型和提取的模型上运行模型检查器。

  • infer_shapes (bool) – 是否推断原始模型的形状。