What is the opset number?#

Every library is versioned. scikit-learn may change the implementation of a specific model. That happens for example with the SVC model where the parameter break_ties was added in 0.22. ONNX does also have a version called opset number. Operator ArgMin was added in opset 1 and changed in opset 11, 12, 13. Sometimes, it is updated to extend the list of types it supports, sometimes, it moves a parameter into the input list. The runtime used to deploy the model does not implement a new version, in that case, a model must be converted by usually using the most recent opset supported by the runtime, we call that opset the targeted opset. An ONNX graph only contains one unique opset, every node must be described following the specifications defined by the latest opset below the targeted opset.

This example considers an IsolationForest and digs into opsets.

Data#

A simple example.

from onnx.defs import onnx_opset_version
from skl2onnx import to_onnx
import numpy
import matplotlib.pyplot as plt
from sklearn.ensemble import IsolationForest
from sklearn.datasets import make_blobs

X, y = make_blobs(n_samples=100, n_features=2)

model = IsolationForest(n_estimators=3)
model.fit(X)
labels = model.predict(X)

fig, ax = plt.subplots(1, 1)
for k in (-1, 1):
    ax.plot(X[labels == k, 0], X[labels == k, 1], "o", label="cl%d" % k)
ax.set_title("Sample")
Sample

ONNX#

onx = to_onnx(
    model, X[:1].astype(numpy.float32), target_opset={"": 15, "ai.onnx.ml": 2}
)
print(onx)
ir_version: 8
opset_import {
  domain: ""
  version: 15
}
opset_import {
  domain: "ai.onnx.ml"
  version: 2
}
producer_name: "skl2onnx"
producer_version: "1.15.0"
domain: "ai.onnx"
model_version: 0
doc_string: ""
graph {
  node {
    input: "X"
    input: "node_sample0_Gathercst"
    output: "node_sample0_output0"
    name: "node_sample0_Gather"
    op_type: "Gather"
    domain: ""
    attribute {
      name: "axis"
      type: INT
      i: 1
    }
  }
  node {
    input: "X"
    input: "node_sample0_Gathercst"
    output: "node_sample1_output0"
    name: "node_sample1_Gather"
    op_type: "Gather"
    domain: ""
    attribute {
      name: "axis"
      type: INT
      i: 1
    }
  }
  node {
    input: "X"
    input: "node_sample0_Gathercst"
    output: "node_sample2_output0"
    name: "node_sample2_Gather"
    op_type: "Gather"
    domain: ""
    attribute {
      name: "axis"
      type: INT
      i: 1
    }
  }
  node {
    input: "node_sample0_output0"
    output: "node_sample0_Y0"
    name: "node_sample0_TreeEnsembleRegressor"
    op_type: "TreeEnsembleRegressor"
    domain: "ai.onnx.ml"
    attribute {
      name: "n_targets"
      type: INT
      i: 1
    }
    attribute {
      name: "nodes_falsenodeids"
      type: INTS
      ints: 76
      ints: 53
      ints: 30
      ints: 17
      ints: 10
      ints: 9
      ints: 8
      ints: 0
      ints: 0
      ints: 0
      ints: 14
      ints: 13
      ints: 0
      ints: 0
      ints: 16
      ints: 0
      ints: 0
      ints: 23
      ints: 20
      ints: 0
      ints: 22
      ints: 0
      ints: 0
      ints: 27
      ints: 26
      ints: 0
      ints: 0
      ints: 29
      ints: 0
      ints: 0
      ints: 40
      ints: 33
      ints: 0
      ints: 37
      ints: 36
      ints: 0
      ints: 0
      ints: 39
      ints: 0
      ints: 0
      ints: 48
      ints: 45
      ints: 44
      ints: 0
      ints: 0
      ints: 47
      ints: 0
      ints: 0
      ints: 50
      ints: 0
      ints: 52
      ints: 0
      ints: 0
      ints: 65
      ints: 64
      ints: 63
      ints: 60
      ints: 59
      ints: 0
      ints: 0
      ints: 62
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 75
      ints: 72
      ints: 71
      ints: 70
      ints: 0
      ints: 0
      ints: 0
      ints: 74
      ints: 0
      ints: 0
      ints: 0
      ints: 80
      ints: 79
      ints: 0
      ints: 0
      ints: 82
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_featureids"
      type: INTS
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 1
      ints: 0
      ints: 1
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_hitrates"
      type: FLOATS
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
    }
    attribute {
      name: "nodes_missing_value_tracks_true"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_modes"
      type: STRINGS
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
    }
    attribute {
      name: "nodes_nodeids"
      type: INTS
      ints: 0
      ints: 1
      ints: 2
      ints: 3
      ints: 4
      ints: 5
      ints: 6
      ints: 7
      ints: 8
      ints: 9
      ints: 10
      ints: 11
      ints: 12
      ints: 13
      ints: 14
      ints: 15
      ints: 16
      ints: 17
      ints: 18
      ints: 19
      ints: 20
      ints: 21
      ints: 22
      ints: 23
      ints: 24
      ints: 25
      ints: 26
      ints: 27
      ints: 28
      ints: 29
      ints: 30
      ints: 31
      ints: 32
      ints: 33
      ints: 34
      ints: 35
      ints: 36
      ints: 37
      ints: 38
      ints: 39
      ints: 40
      ints: 41
      ints: 42
      ints: 43
      ints: 44
      ints: 45
      ints: 46
      ints: 47
      ints: 48
      ints: 49
      ints: 50
      ints: 51
      ints: 52
      ints: 53
      ints: 54
      ints: 55
      ints: 56
      ints: 57
      ints: 58
      ints: 59
      ints: 60
      ints: 61
      ints: 62
      ints: 63
      ints: 64
      ints: 65
      ints: 66
      ints: 67
      ints: 68
      ints: 69
      ints: 70
      ints: 71
      ints: 72
      ints: 73
      ints: 74
      ints: 75
      ints: 76
      ints: 77
      ints: 78
      ints: 79
      ints: 80
      ints: 81
      ints: 82
    }
    attribute {
      name: "nodes_treeids"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_truenodeids"
      type: INTS
      ints: 1
      ints: 2
      ints: 3
      ints: 4
      ints: 5
      ints: 6
      ints: 7
      ints: 0
      ints: 0
      ints: 0
      ints: 11
      ints: 12
      ints: 0
      ints: 0
      ints: 15
      ints: 0
      ints: 0
      ints: 18
      ints: 19
      ints: 0
      ints: 21
      ints: 0
      ints: 0
      ints: 24
      ints: 25
      ints: 0
      ints: 0
      ints: 28
      ints: 0
      ints: 0
      ints: 31
      ints: 32
      ints: 0
      ints: 34
      ints: 35
      ints: 0
      ints: 0
      ints: 38
      ints: 0
      ints: 0
      ints: 41
      ints: 42
      ints: 43
      ints: 0
      ints: 0
      ints: 46
      ints: 0
      ints: 0
      ints: 49
      ints: 0
      ints: 51
      ints: 0
      ints: 0
      ints: 54
      ints: 55
      ints: 56
      ints: 57
      ints: 58
      ints: 0
      ints: 0
      ints: 61
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 66
      ints: 67
      ints: 68
      ints: 69
      ints: 0
      ints: 0
      ints: 0
      ints: 73
      ints: 0
      ints: 0
      ints: 0
      ints: 77
      ints: 78
      ints: 0
      ints: 0
      ints: 81
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_values"
      type: FLOATS
      floats: 4.18235207
      floats: 2.17593193
      floats: 0.648091
      floats: 1.10103011
      floats: 0.0645804182
      floats: -2.11766505
      floats: -0.725113273
      floats: 0
      floats: 0
      floats: 0
      floats: 0.410115808
      floats: -4.00957727
      floats: 0
      floats: 0
      floats: 0.853493154
      floats: 0
      floats: 0
      floats: -6.06249475
      floats: 1.27251172
      floats: 0
      floats: -8.91393375
      floats: 0
      floats: 0
      floats: 1.3722
      floats: -5.22531748
      floats: 0
      floats: 0
      floats: -3.86214
      floats: 0
      floats: 0
      floats: 2.46714425
      floats: 1.31255341
      floats: 0
      floats: 1.88306952
      floats: 1.58695602
      floats: 0
      floats: 0
      floats: 2.26998115
      floats: 0
      floats: 0
      floats: 2.8422513
      floats: -0.787324488
      floats: -1.39750469
      floats: 0
      floats: 0
      floats: 2.71519303
      floats: 0
      floats: 0
      floats: -3.37765861
      floats: 0
      floats: 3.04511237
      floats: 0
      floats: 0
      floats: 3.56375742
      floats: -5.38974905
      floats: 3.36579967
      floats: 2.54138708
      floats: -7.24543762
      floats: 0
      floats: 0
      floats: 3.09063673
      floats: 0
      floats: 0
      floats: 0
      floats: 0
      floats: -7.55386209
      floats: 3.78187251
      floats: 3.74197888
      floats: 3.70183039
      floats: 0
      floats: 0
      floats: 0
      floats: 4.02508259
      floats: 0
      floats: 0
      floats: 0
      floats: -8.07260132
      floats: -8.59394741
      floats: 0
      floats: 0
      floats: 4.61336708
      floats: 0
      floats: 0
    }
    attribute {
      name: "post_transform"
      type: STRING
      s: "NONE"
    }
    attribute {
      name: "target_ids"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "target_nodeids"
      type: INTS
      ints: 7
      ints: 8
      ints: 9
      ints: 12
      ints: 13
      ints: 15
      ints: 16
      ints: 19
      ints: 21
      ints: 22
      ints: 25
      ints: 26
      ints: 28
      ints: 29
      ints: 32
      ints: 35
      ints: 36
      ints: 38
      ints: 39
      ints: 43
      ints: 44
      ints: 46
      ints: 47
      ints: 49
      ints: 51
      ints: 52
      ints: 58
      ints: 59
      ints: 61
      ints: 62
      ints: 63
      ints: 64
      ints: 69
      ints: 70
      ints: 71
      ints: 73
      ints: 74
      ints: 75
      ints: 78
      ints: 79
      ints: 81
      ints: 82
    }
    attribute {
      name: "target_treeids"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "target_weights"
      type: FLOATS
      floats: 7
      floats: 8
      floats: 9
      floats: 12
      floats: 13
      floats: 15
      floats: 16
      floats: 19
      floats: 21
      floats: 22
      floats: 25
      floats: 26
      floats: 28
      floats: 29
      floats: 32
      floats: 35
      floats: 36
      floats: 38
      floats: 39
      floats: 43
      floats: 44
      floats: 46
      floats: 47
      floats: 49
      floats: 51
      floats: 52
      floats: 58
      floats: 59
      floats: 61
      floats: 62
      floats: 63
      floats: 64
      floats: 69
      floats: 70
      floats: 71
      floats: 73
      floats: 74
      floats: 75
      floats: 78
      floats: 79
      floats: 81
      floats: 82
    }
  }
  node {
    input: "node_sample0_Y0"
    output: "node_sample0_output02"
    name: "node_sample0_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 7
    }
  }
  node {
    input: "node_sample0_Y0"
    output: "path_length0_output0"
    name: "path_length0_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 7
    }
  }
  node {
    input: "node_sample1_output0"
    output: "node_sample1_Y0"
    name: "node_sample1_TreeEnsembleRegressor"
    op_type: "TreeEnsembleRegressor"
    domain: "ai.onnx.ml"
    attribute {
      name: "n_targets"
      type: INT
      i: 1
    }
    attribute {
      name: "nodes_falsenodeids"
      type: INTS
      ints: 70
      ints: 31
      ints: 16
      ints: 13
      ints: 12
      ints: 9
      ints: 8
      ints: 0
      ints: 0
      ints: 11
      ints: 0
      ints: 0
      ints: 0
      ints: 15
      ints: 0
      ints: 0
      ints: 20
      ints: 19
      ints: 0
      ints: 0
      ints: 28
      ints: 25
      ints: 24
      ints: 0
      ints: 0
      ints: 27
      ints: 0
      ints: 0
      ints: 30
      ints: 0
      ints: 0
      ints: 51
      ints: 42
      ints: 37
      ints: 36
      ints: 0
      ints: 0
      ints: 39
      ints: 0
      ints: 41
      ints: 0
      ints: 0
      ints: 50
      ints: 47
      ints: 46
      ints: 0
      ints: 0
      ints: 49
      ints: 0
      ints: 0
      ints: 0
      ints: 65
      ints: 60
      ints: 57
      ints: 56
      ints: 0
      ints: 0
      ints: 59
      ints: 0
      ints: 0
      ints: 64
      ints: 63
      ints: 0
      ints: 0
      ints: 0
      ints: 69
      ints: 68
      ints: 0
      ints: 0
      ints: 0
      ints: 94
      ints: 89
      ints: 84
      ints: 79
      ints: 78
      ints: 77
      ints: 0
      ints: 0
      ints: 0
      ints: 81
      ints: 0
      ints: 83
      ints: 0
      ints: 0
      ints: 86
      ints: 0
      ints: 88
      ints: 0
      ints: 0
      ints: 93
      ints: 92
      ints: 0
      ints: 0
      ints: 0
      ints: 104
      ints: 103
      ints: 102
      ints: 101
      ints: 100
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 112
      ints: 107
      ints: 0
      ints: 109
      ints: 0
      ints: 111
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_featureids"
      type: INTS
      ints: 1
      ints: 0
      ints: 1
      ints: 0
      ints: 1
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 1
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_hitrates"
      type: FLOATS
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
    }
    attribute {
      name: "nodes_missing_value_tracks_true"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_modes"
      type: STRINGS
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
    }
    attribute {
      name: "nodes_nodeids"
      type: INTS
      ints: 0
      ints: 1
      ints: 2
      ints: 3
      ints: 4
      ints: 5
      ints: 6
      ints: 7
      ints: 8
      ints: 9
      ints: 10
      ints: 11
      ints: 12
      ints: 13
      ints: 14
      ints: 15
      ints: 16
      ints: 17
      ints: 18
      ints: 19
      ints: 20
      ints: 21
      ints: 22
      ints: 23
      ints: 24
      ints: 25
      ints: 26
      ints: 27
      ints: 28
      ints: 29
      ints: 30
      ints: 31
      ints: 32
      ints: 33
      ints: 34
      ints: 35
      ints: 36
      ints: 37
      ints: 38
      ints: 39
      ints: 40
      ints: 41
      ints: 42
      ints: 43
      ints: 44
      ints: 45
      ints: 46
      ints: 47
      ints: 48
      ints: 49
      ints: 50
      ints: 51
      ints: 52
      ints: 53
      ints: 54
      ints: 55
      ints: 56
      ints: 57
      ints: 58
      ints: 59
      ints: 60
      ints: 61
      ints: 62
      ints: 63
      ints: 64
      ints: 65
      ints: 66
      ints: 67
      ints: 68
      ints: 69
      ints: 70
      ints: 71
      ints: 72
      ints: 73
      ints: 74
      ints: 75
      ints: 76
      ints: 77
      ints: 78
      ints: 79
      ints: 80
      ints: 81
      ints: 82
      ints: 83
      ints: 84
      ints: 85
      ints: 86
      ints: 87
      ints: 88
      ints: 89
      ints: 90
      ints: 91
      ints: 92
      ints: 93
      ints: 94
      ints: 95
      ints: 96
      ints: 97
      ints: 98
      ints: 99
      ints: 100
      ints: 101
      ints: 102
      ints: 103
      ints: 104
      ints: 105
      ints: 106
      ints: 107
      ints: 108
      ints: 109
      ints: 110
      ints: 111
      ints: 112
    }
    attribute {
      name: "nodes_treeids"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_truenodeids"
      type: INTS
      ints: 1
      ints: 2
      ints: 3
      ints: 4
      ints: 5
      ints: 6
      ints: 7
      ints: 0
      ints: 0
      ints: 10
      ints: 0
      ints: 0
      ints: 0
      ints: 14
      ints: 0
      ints: 0
      ints: 17
      ints: 18
      ints: 0
      ints: 0
      ints: 21
      ints: 22
      ints: 23
      ints: 0
      ints: 0
      ints: 26
      ints: 0
      ints: 0
      ints: 29
      ints: 0
      ints: 0
      ints: 32
      ints: 33
      ints: 34
      ints: 35
      ints: 0
      ints: 0
      ints: 38
      ints: 0
      ints: 40
      ints: 0
      ints: 0
      ints: 43
      ints: 44
      ints: 45
      ints: 0
      ints: 0
      ints: 48
      ints: 0
      ints: 0
      ints: 0
      ints: 52
      ints: 53
      ints: 54
      ints: 55
      ints: 0
      ints: 0
      ints: 58
      ints: 0
      ints: 0
      ints: 61
      ints: 62
      ints: 0
      ints: 0
      ints: 0
      ints: 66
      ints: 67
      ints: 0
      ints: 0
      ints: 0
      ints: 71
      ints: 72
      ints: 73
      ints: 74
      ints: 75
      ints: 76
      ints: 0
      ints: 0
      ints: 0
      ints: 80
      ints: 0
      ints: 82
      ints: 0
      ints: 0
      ints: 85
      ints: 0
      ints: 87
      ints: 0
      ints: 0
      ints: 90
      ints: 91
      ints: 0
      ints: 0
      ints: 0
      ints: 95
      ints: 96
      ints: 97
      ints: 98
      ints: 99
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 105
      ints: 106
      ints: 0
      ints: 108
      ints: 0
      ints: 110
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_values"
      type: FLOATS
      floats: -4.22537041
      floats: 1.81481433
      floats: -5.81325054
      floats: 1.51463866
      floats: -5.9658227
      floats: 1.08905673
      floats: -8.48314
      floats: 0
      floats: 0
      floats: 1.30034924
      floats: 0
      floats: 0
      floats: 0
      floats: 1.70041311
      floats: 0
      floats: 0
      floats: -5.17544794
      floats: -5.47527647
      floats: 0
      floats: 0
      floats: -4.44654274
      floats: -4.63273573
      floats: 1.16341579
      floats: 0
      floats: 0
      floats: 0.0255161896
      floats: 0
      floats: 0
      floats: -0.227961481
      floats: 0
      floats: 0
      floats: 3.45285487
      floats: -8.67669868
      floats: 2.53031874
      floats: -9.65575314
      floats: 0
      floats: 0
      floats: 2.65342331
      floats: 0
      floats: -8.92922783
      floats: 0
      floats: 0
      floats: -5.64848137
      floats: 2.46449351
      floats: -8.39967
      floats: 0
      floats: 0
      floats: -7.27561903
      floats: 0
      floats: 0
      floats: 0
      floats: 4.74023867
      floats: 3.75913048
      floats: 3.65701914
      floats: 3.55960941
      floats: 0
      floats: 0
      floats: -8.62232876
      floats: 0
      floats: 0
      floats: -7.61527634
      floats: -8.43634
      floats: 0
      floats: 0
      floats: 0
      floats: 5.11071444
      floats: -7.84772444
      floats: 0
      floats: 0
      floats: 0
      floats: 0.0389782973
      floats: -0.234368131
      floats: 4.05986452
      floats: -2.20949292
      floats: -2.40942574
      floats: -2.90627766
      floats: 0
      floats: 0
      floats: 0
      floats: -0.198320135
      floats: 0
      floats: 2.7552321
      floats: 0
      floats: 0
      floats: -1.90955627
      floats: 0
      floats: -0.890981615
      floats: 0
      floats: 0
      floats: -0.0539543405
      floats: -0.139374509
      floats: 0
      floats: 0
      floats: 0
      floats: -2.67097068
      floats: -2.90039897
      floats: -3.13414121
      floats: 2.68970799
      floats: 1.54453313
      floats: 0
      floats: 0
      floats: 0
      floats: 0
      floats: 0
      floats: 0.777435541
      floats: 0.435175568
      floats: 0
      floats: 0.587525
      floats: 0
      floats: 0.686299443
      floats: 0
      floats: 0
      floats: 0
    }
    attribute {
      name: "post_transform"
      type: STRING
      s: "NONE"
    }
    attribute {
      name: "target_ids"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "target_nodeids"
      type: INTS
      ints: 7
      ints: 8
      ints: 10
      ints: 11
      ints: 12
      ints: 14
      ints: 15
      ints: 18
      ints: 19
      ints: 23
      ints: 24
      ints: 26
      ints: 27
      ints: 29
      ints: 30
      ints: 35
      ints: 36
      ints: 38
      ints: 40
      ints: 41
      ints: 45
      ints: 46
      ints: 48
      ints: 49
      ints: 50
      ints: 55
      ints: 56
      ints: 58
      ints: 59
      ints: 62
      ints: 63
      ints: 64
      ints: 67
      ints: 68
      ints: 69
      ints: 76
      ints: 77
      ints: 78
      ints: 80
      ints: 82
      ints: 83
      ints: 85
      ints: 87
      ints: 88
      ints: 91
      ints: 92
      ints: 93
      ints: 99
      ints: 100
      ints: 101
      ints: 102
      ints: 103
      ints: 106
      ints: 108
      ints: 110
      ints: 111
      ints: 112
    }
    attribute {
      name: "target_treeids"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "target_weights"
      type: FLOATS
      floats: 7
      floats: 8
      floats: 10
      floats: 11
      floats: 12
      floats: 14
      floats: 15
      floats: 18
      floats: 19
      floats: 23
      floats: 24
      floats: 26
      floats: 27
      floats: 29
      floats: 30
      floats: 35
      floats: 36
      floats: 38
      floats: 40
      floats: 41
      floats: 45
      floats: 46
      floats: 48
      floats: 49
      floats: 50
      floats: 55
      floats: 56
      floats: 58
      floats: 59
      floats: 62
      floats: 63
      floats: 64
      floats: 67
      floats: 68
      floats: 69
      floats: 76
      floats: 77
      floats: 78
      floats: 80
      floats: 82
      floats: 83
      floats: 85
      floats: 87
      floats: 88
      floats: 91
      floats: 92
      floats: 93
      floats: 99
      floats: 100
      floats: 101
      floats: 102
      floats: 103
      floats: 106
      floats: 108
      floats: 110
      floats: 111
      floats: 112
    }
  }
  node {
    input: "node_sample2_output0"
    output: "node_sample2_Y0"
    name: "node_sample2_TreeEnsembleRegressor"
    op_type: "TreeEnsembleRegressor"
    domain: "ai.onnx.ml"
    attribute {
      name: "n_targets"
      type: INT
      i: 1
    }
    attribute {
      name: "nodes_falsenodeids"
      type: INTS
      ints: 38
      ints: 35
      ints: 18
      ints: 9
      ints: 8
      ints: 7
      ints: 0
      ints: 0
      ints: 0
      ints: 11
      ints: 0
      ints: 15
      ints: 14
      ints: 0
      ints: 0
      ints: 17
      ints: 0
      ints: 0
      ints: 28
      ints: 21
      ints: 0
      ints: 25
      ints: 24
      ints: 0
      ints: 0
      ints: 27
      ints: 0
      ints: 0
      ints: 34
      ints: 33
      ints: 32
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 37
      ints: 0
      ints: 0
      ints: 58
      ints: 57
      ints: 54
      ints: 49
      ints: 46
      ints: 45
      ints: 0
      ints: 0
      ints: 48
      ints: 0
      ints: 0
      ints: 51
      ints: 0
      ints: 53
      ints: 0
      ints: 0
      ints: 56
      ints: 0
      ints: 0
      ints: 0
      ints: 60
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_featureids"
      type: INTS
      ints: 1
      ints: 1
      ints: 1
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 1
      ints: 1
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
      ints: 0
      ints: 1
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_hitrates"
      type: FLOATS
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
    }
    attribute {
      name: "nodes_missing_value_tracks_true"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_modes"
      type: STRINGS
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
      strings: "LEAF"
      strings: "BRANCH_LEQ"
      strings: "LEAF"
      strings: "LEAF"
    }
    attribute {
      name: "nodes_nodeids"
      type: INTS
      ints: 0
      ints: 1
      ints: 2
      ints: 3
      ints: 4
      ints: 5
      ints: 6
      ints: 7
      ints: 8
      ints: 9
      ints: 10
      ints: 11
      ints: 12
      ints: 13
      ints: 14
      ints: 15
      ints: 16
      ints: 17
      ints: 18
      ints: 19
      ints: 20
      ints: 21
      ints: 22
      ints: 23
      ints: 24
      ints: 25
      ints: 26
      ints: 27
      ints: 28
      ints: 29
      ints: 30
      ints: 31
      ints: 32
      ints: 33
      ints: 34
      ints: 35
      ints: 36
      ints: 37
      ints: 38
      ints: 39
      ints: 40
      ints: 41
      ints: 42
      ints: 43
      ints: 44
      ints: 45
      ints: 46
      ints: 47
      ints: 48
      ints: 49
      ints: 50
      ints: 51
      ints: 52
      ints: 53
      ints: 54
      ints: 55
      ints: 56
      ints: 57
      ints: 58
      ints: 59
      ints: 60
    }
    attribute {
      name: "nodes_treeids"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_truenodeids"
      type: INTS
      ints: 1
      ints: 2
      ints: 3
      ints: 4
      ints: 5
      ints: 6
      ints: 0
      ints: 0
      ints: 0
      ints: 10
      ints: 0
      ints: 12
      ints: 13
      ints: 0
      ints: 0
      ints: 16
      ints: 0
      ints: 0
      ints: 19
      ints: 20
      ints: 0
      ints: 22
      ints: 23
      ints: 0
      ints: 0
      ints: 26
      ints: 0
      ints: 0
      ints: 29
      ints: 30
      ints: 31
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 36
      ints: 0
      ints: 0
      ints: 39
      ints: 40
      ints: 41
      ints: 42
      ints: 43
      ints: 44
      ints: 0
      ints: 0
      ints: 47
      ints: 0
      ints: 0
      ints: 50
      ints: 0
      ints: 52
      ints: 0
      ints: 0
      ints: 55
      ints: 0
      ints: 0
      ints: 0
      ints: 59
      ints: 0
      ints: 0
    }
    attribute {
      name: "nodes_values"
      type: FLOATS
      floats: -5.88761044
      floats: -6.75870562
      floats: -8.2069
      floats: 1.84448743
      floats: -8.65281105
      floats: 1.12134051
      floats: 0
      floats: 0
      floats: 0
      floats: -9.36789
      floats: 0
      floats: 4.27611256
      floats: -8.35722828
      floats: 0
      floats: 0
      floats: 5.10469198
      floats: 0
      floats: 0
      floats: 3.14533973
      floats: 1.31926978
      floats: 0
      floats: -8.00440407
      floats: -8.06646633
      floats: 0
      floats: 0
      floats: 2.68580341
      floats: 0
      floats: 0
      floats: -6.90994024
      floats: 4.71876907
      floats: 3.60153246
      floats: 0
      floats: 0
      floats: 0
      floats: 0
      floats: 1.44746566
      floats: 0
      floats: 0
      floats: 2.05372119
      floats: 4.22991085
      floats: 3.73866057
      floats: 3.35656428
      floats: -0.107930809
      floats: -0.713632584
      floats: 0
      floats: 0
      floats: 1.21751368
      floats: 0
      floats: 0
      floats: -3.3296783
      floats: 0
      floats: 3.59470105
      floats: 0
      floats: 0
      floats: 4.08528423
      floats: 0
      floats: 0
      floats: 0
      floats: -4.85729837
      floats: 0
      floats: 0
    }
    attribute {
      name: "post_transform"
      type: STRING
      s: "NONE"
    }
    attribute {
      name: "target_ids"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "target_nodeids"
      type: INTS
      ints: 6
      ints: 7
      ints: 8
      ints: 10
      ints: 13
      ints: 14
      ints: 16
      ints: 17
      ints: 20
      ints: 23
      ints: 24
      ints: 26
      ints: 27
      ints: 31
      ints: 32
      ints: 33
      ints: 34
      ints: 36
      ints: 37
      ints: 44
      ints: 45
      ints: 47
      ints: 48
      ints: 50
      ints: 52
      ints: 53
      ints: 55
      ints: 56
      ints: 57
      ints: 59
      ints: 60
    }
    attribute {
      name: "target_treeids"
      type: INTS
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
      ints: 0
    }
    attribute {
      name: "target_weights"
      type: FLOATS
      floats: 6
      floats: 7
      floats: 8
      floats: 10
      floats: 13
      floats: 14
      floats: 16
      floats: 17
      floats: 20
      floats: 23
      floats: 24
      floats: 26
      floats: 27
      floats: 31
      floats: 32
      floats: 33
      floats: 34
      floats: 36
      floats: 37
      floats: 44
      floats: 45
      floats: 47
      floats: 48
      floats: 50
      floats: 52
      floats: 53
      floats: 55
      floats: 56
      floats: 57
      floats: 59
      floats: 60
    }
  }
  node {
    input: "node_sample1_Y0"
    output: "node_sample1_output02"
    name: "node_sample1_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 7
    }
  }
  node {
    input: "node_sample2_Y0"
    output: "node_sample2_output02"
    name: "node_sample2_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 7
    }
  }
  node {
    input: "node_sample1_Y0"
    output: "path_length1_output0"
    name: "path_length1_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 7
    }
  }
  node {
    input: "node_sample2_Y0"
    output: "path_length2_output0"
    name: "path_length2_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 7
    }
  }
  node {
    input: "node_sample0_output02"
    output: "node_sample0_Y02"
    name: "node_sample0_LabelEncoder"
    op_type: "LabelEncoder"
    domain: "ai.onnx.ml"
    attribute {
      name: "keys_int64s"
      type: INTS
      ints: 7
      ints: 8
      ints: 9
      ints: 12
      ints: 13
      ints: 15
      ints: 16
      ints: 19
      ints: 21
      ints: 22
      ints: 25
      ints: 26
      ints: 28
      ints: 29
      ints: 32
      ints: 35
      ints: 36
      ints: 38
      ints: 39
      ints: 43
      ints: 44
      ints: 46
      ints: 47
      ints: 49
      ints: 51
      ints: 52
      ints: 58
      ints: 59
      ints: 61
      ints: 62
      ints: 63
      ints: 64
      ints: 69
      ints: 70
      ints: 71
      ints: 73
      ints: 74
      ints: 75
      ints: 78
      ints: 79
      ints: 81
      ints: 82
    }
    attribute {
      name: "values_floats"
      type: FLOATS
      floats: 1
      floats: 5
      floats: 1
      floats: 1
      floats: 1
      floats: 9
      floats: 6
      floats: 1
      floats: 2
      floats: 4
      floats: 1
      floats: 1
      floats: 4
      floats: 4
      floats: 1
      floats: 2
      floats: 2
      floats: 4
      floats: 2
      floats: 6
      floats: 2
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 10
      floats: 2
      floats: 1
      floats: 10
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
    }
  }
  node {
    input: "path_length0_output0"
    output: "path_length0_Y0"
    name: "path_length0_LabelEncoder"
    op_type: "LabelEncoder"
    domain: "ai.onnx.ml"
    attribute {
      name: "keys_int64s"
      type: INTS
      ints: 7
      ints: 8
      ints: 9
      ints: 12
      ints: 13
      ints: 15
      ints: 16
      ints: 19
      ints: 21
      ints: 22
      ints: 25
      ints: 26
      ints: 28
      ints: 29
      ints: 32
      ints: 35
      ints: 36
      ints: 38
      ints: 39
      ints: 43
      ints: 44
      ints: 46
      ints: 47
      ints: 49
      ints: 51
      ints: 52
      ints: 58
      ints: 59
      ints: 61
      ints: 62
      ints: 63
      ints: 64
      ints: 69
      ints: 70
      ints: 71
      ints: 73
      ints: 74
      ints: 75
      ints: 78
      ints: 79
      ints: 81
      ints: 82
    }
    attribute {
      name: "values_floats"
      type: FLOATS
      floats: 8
      floats: 8
      floats: 7
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 7
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 6
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 7
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 6
      floats: 5
      floats: 8
      floats: 8
      floats: 7
      floats: 7
      floats: 7
      floats: 5
      floats: 4
      floats: 4
      floats: 4
      floats: 4
    }
  }
  node {
    input: "node_sample1_output02"
    output: "node_sample1_Y02"
    name: "node_sample1_LabelEncoder"
    op_type: "LabelEncoder"
    domain: "ai.onnx.ml"
    attribute {
      name: "keys_int64s"
      type: INTS
      ints: 7
      ints: 8
      ints: 10
      ints: 11
      ints: 12
      ints: 14
      ints: 15
      ints: 18
      ints: 19
      ints: 23
      ints: 24
      ints: 26
      ints: 27
      ints: 29
      ints: 30
      ints: 35
      ints: 36
      ints: 38
      ints: 40
      ints: 41
      ints: 45
      ints: 46
      ints: 48
      ints: 49
      ints: 50
      ints: 55
      ints: 56
      ints: 58
      ints: 59
      ints: 62
      ints: 63
      ints: 64
      ints: 67
      ints: 68
      ints: 69
      ints: 76
      ints: 77
      ints: 78
      ints: 80
      ints: 82
      ints: 83
      ints: 85
      ints: 87
      ints: 88
      ints: 91
      ints: 92
      ints: 93
      ints: 99
      ints: 100
      ints: 101
      ints: 102
      ints: 103
      ints: 106
      ints: 108
      ints: 110
      ints: 111
      ints: 112
    }
    attribute {
      name: "values_floats"
      type: FLOATS
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 2
      floats: 2
      floats: 1
      floats: 3
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 2
      floats: 8
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 2
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 3
      floats: 3
      floats: 1
      floats: 1
      floats: 13
      floats: 9
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 5
      floats: 3
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
    }
  }
  node {
    input: "node_sample2_output02"
    output: "node_sample2_Y02"
    name: "node_sample2_LabelEncoder"
    op_type: "LabelEncoder"
    domain: "ai.onnx.ml"
    attribute {
      name: "keys_int64s"
      type: INTS
      ints: 6
      ints: 7
      ints: 8
      ints: 10
      ints: 13
      ints: 14
      ints: 16
      ints: 17
      ints: 20
      ints: 23
      ints: 24
      ints: 26
      ints: 27
      ints: 31
      ints: 32
      ints: 33
      ints: 34
      ints: 36
      ints: 37
      ints: 44
      ints: 45
      ints: 47
      ints: 48
      ints: 50
      ints: 52
      ints: 53
      ints: 55
      ints: 56
      ints: 57
      ints: 59
      ints: 60
    }
    attribute {
      name: "values_floats"
      type: FLOATS
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 8
      floats: 3
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 2
      floats: 5
      floats: 1
      floats: 2
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 4
      floats: 27
      floats: 18
      floats: 9
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
      floats: 1
    }
  }
  node {
    input: "path_length1_output0"
    output: "path_length1_Y0"
    name: "path_length1_LabelEncoder"
    op_type: "LabelEncoder"
    domain: "ai.onnx.ml"
    attribute {
      name: "keys_int64s"
      type: INTS
      ints: 7
      ints: 8
      ints: 10
      ints: 11
      ints: 12
      ints: 14
      ints: 15
      ints: 18
      ints: 19
      ints: 23
      ints: 24
      ints: 26
      ints: 27
      ints: 29
      ints: 30
      ints: 35
      ints: 36
      ints: 38
      ints: 40
      ints: 41
      ints: 45
      ints: 46
      ints: 48
      ints: 49
      ints: 50
      ints: 55
      ints: 56
      ints: 58
      ints: 59
      ints: 62
      ints: 63
      ints: 64
      ints: 67
      ints: 68
      ints: 69
      ints: 76
      ints: 77
      ints: 78
      ints: 80
      ints: 82
      ints: 83
      ints: 85
      ints: 87
      ints: 88
      ints: 91
      ints: 92
      ints: 93
      ints: 99
      ints: 100
      ints: 101
      ints: 102
      ints: 103
      ints: 106
      ints: 108
      ints: 110
      ints: 111
      ints: 112
    }
    attribute {
      name: "values_floats"
      type: FLOATS
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 6
      floats: 6
      floats: 6
      floats: 6
      floats: 6
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 7
      floats: 7
      floats: 7
      floats: 7
      floats: 7
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 6
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 7
      floats: 7
      floats: 7
      floats: 6
      floats: 8
      floats: 8
      floats: 7
      floats: 7
      floats: 8
      floats: 8
      floats: 6
      floats: 7
      floats: 7
      floats: 6
      floats: 6
      floats: 5
      floats: 8
      floats: 8
      floats: 7
      floats: 6
      floats: 5
      floats: 6
      floats: 7
      floats: 8
      floats: 8
      floats: 5
    }
  }
  node {
    input: "path_length2_output0"
    output: "path_length2_Y0"
    name: "path_length2_LabelEncoder"
    op_type: "LabelEncoder"
    domain: "ai.onnx.ml"
    attribute {
      name: "keys_int64s"
      type: INTS
      ints: 6
      ints: 7
      ints: 8
      ints: 10
      ints: 13
      ints: 14
      ints: 16
      ints: 17
      ints: 20
      ints: 23
      ints: 24
      ints: 26
      ints: 27
      ints: 31
      ints: 32
      ints: 33
      ints: 34
      ints: 36
      ints: 37
      ints: 44
      ints: 45
      ints: 47
      ints: 48
      ints: 50
      ints: 52
      ints: 53
      ints: 55
      ints: 56
      ints: 57
      ints: 59
      ints: 60
    }
    attribute {
      name: "values_floats"
      type: FLOATS
      floats: 7
      floats: 7
      floats: 6
      floats: 6
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 6
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 7
      floats: 6
      floats: 4
      floats: 4
      floats: 8
      floats: 8
      floats: 8
      floats: 8
      floats: 7
      floats: 8
      floats: 8
      floats: 6
      floats: 6
      floats: 4
      floats: 4
      floats: 4
    }
  }
  node {
    input: "node_sample0_Y02"
    input: "path_length0_Reshapecst"
    output: "node_sample0_reshaped0"
    name: "node_sample0_Reshape"
    op_type: "Reshape"
    domain: ""
    attribute {
      name: "allowzero"
      type: INT
      i: 0
    }
  }
  node {
    input: "path_length0_Y0"
    input: "path_length0_Reshapecst"
    output: "path_length0_reshaped0"
    name: "path_length0_Reshape"
    op_type: "Reshape"
    domain: ""
    attribute {
      name: "allowzero"
      type: INT
      i: 0
    }
  }
  node {
    input: "node_sample0_reshaped0"
    input: "dec_Powcst"
    output: "eq2_0_C0"
    name: "eq2_0_Equal"
    op_type: "Equal"
    domain: ""
  }
  node {
    input: "node_sample0_reshaped0"
    input: "dec_Powcst"
    output: "plus2_0_C0"
    name: "plus2_0_Greater"
    op_type: "Greater"
    domain: ""
  }
  node {
    input: "node_sample1_Y02"
    input: "path_length0_Reshapecst"
    output: "node_sample1_reshaped0"
    name: "node_sample1_Reshape"
    op_type: "Reshape"
    domain: ""
    attribute {
      name: "allowzero"
      type: INT
      i: 0
    }
  }
  node {
    input: "node_sample2_Y02"
    input: "path_length0_Reshapecst"
    output: "node_sample2_reshaped0"
    name: "node_sample2_Reshape"
    op_type: "Reshape"
    domain: ""
    attribute {
      name: "allowzero"
      type: INT
      i: 0
    }
  }
  node {
    input: "path_length1_Y0"
    input: "path_length0_Reshapecst"
    output: "path_length1_reshaped0"
    name: "path_length1_Reshape"
    op_type: "Reshape"
    domain: ""
    attribute {
      name: "allowzero"
      type: INT
      i: 0
    }
  }
  node {
    input: "path_length2_Y0"
    input: "path_length0_Reshapecst"
    output: "path_length2_reshaped0"
    name: "path_length2_Reshape"
    op_type: "Reshape"
    domain: ""
    attribute {
      name: "allowzero"
      type: INT
      i: 0
    }
  }
  node {
    input: "eq2_0_C0"
    output: "eq2_0_output0"
    name: "eq2_0_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 1
    }
  }
  node {
    input: "plus2_0_C0"
    output: "plus2_0_output0"
    name: "plus2_0_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 1
    }
  }
  node {
    input: "node_sample1_reshaped0"
    input: "dec_Powcst"
    output: "eq2_1_C0"
    name: "eq2_1_Equal"
    op_type: "Equal"
    domain: ""
  }
  node {
    input: "node_sample2_reshaped0"
    input: "dec_Powcst"
    output: "eq2_2_C0"
    name: "eq2_2_Equal"
    op_type: "Equal"
    domain: ""
  }
  node {
    input: "node_sample1_reshaped0"
    input: "dec_Powcst"
    output: "plus2_1_C0"
    name: "plus2_1_Greater"
    op_type: "Greater"
    domain: ""
  }
  node {
    input: "node_sample2_reshaped0"
    input: "dec_Powcst"
    output: "plus2_2_C0"
    name: "plus2_2_Greater"
    op_type: "Greater"
    domain: ""
  }
  node {
    input: "eq2_1_C0"
    output: "eq2_1_output0"
    name: "eq2_1_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 1
    }
  }
  node {
    input: "eq2_2_C0"
    output: "eq2_2_output0"
    name: "eq2_2_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 1
    }
  }
  node {
    input: "plus2_1_C0"
    output: "plus2_1_output0"
    name: "plus2_1_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 1
    }
  }
  node {
    input: "plus2_2_C0"
    output: "plus2_2_output0"
    name: "plus2_2_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 1
    }
  }
  node {
    input: "plus2_0_output0"
    input: "node_sample0_reshaped0"
    output: "eqp2ps0_C0"
    name: "eqp2ps0_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "eqp2ps0_C0"
    input: "eqp2p_m1_0_Addcst"
    output: "eqp2p_m1_0_C0"
    name: "eqp2p_m1_0_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "eqp2ps0_C0"
    input: "eqp2p_m1_0_Maxcst"
    output: "eqp_ns0_max0"
    name: "eqp_ns0_Max"
    op_type: "Max"
    domain: ""
  }
  node {
    input: "plus2_1_output0"
    input: "node_sample1_reshaped0"
    output: "eqp2ps1_C0"
    name: "eqp2ps1_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "plus2_2_output0"
    input: "node_sample2_reshaped0"
    output: "eqp2ps2_C0"
    name: "eqp2ps2_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "eqp2ps1_C0"
    input: "eqp2p_m1_0_Addcst"
    output: "eqp2p_m1_1_C0"
    name: "eqp2p_m1_1_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "eqp2ps2_C0"
    input: "eqp2p_m1_0_Addcst"
    output: "eqp2p_m1_2_C0"
    name: "eqp2p_m1_2_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "eqp2p_m1_0_C0"
    input: "eqp2p_m1_0_Maxcst"
    output: "eqp2p_m1_0_max0"
    name: "eqp2p_m1_0_Max"
    op_type: "Max"
    domain: ""
  }
  node {
    input: "eqp2p_m1_0_C0"
    input: "eqp2p_m1_0_Maxcst1"
    output: "eqp2p_m1_0_max02"
    name: "eqp2p_m1_0_Max1"
    op_type: "Max"
    domain: ""
  }
  node {
    input: "eqp2ps1_C0"
    input: "eqp2p_m1_0_Maxcst"
    output: "eqp_ns1_max0"
    name: "eqp_ns1_Max"
    op_type: "Max"
    domain: ""
  }
  node {
    input: "eqp2ps2_C0"
    input: "eqp2p_m1_0_Maxcst"
    output: "eqp_ns2_max0"
    name: "eqp_ns2_Max"
    op_type: "Max"
    domain: ""
  }
  node {
    input: "eqp2p_m1_0_max02"
    input: "eqp_ns0_max0"
    output: "eqp_ns0_C01"
    name: "eqp_ns0_Div"
    op_type: "Div"
    domain: ""
  }
  node {
    input: "eqp2p_m1_0_max0"
    output: "eqp_log0_output0"
    name: "eqp_log0_Log"
    op_type: "Log"
    domain: ""
  }
  node {
    input: "eqp2p_m1_1_C0"
    input: "eqp2p_m1_0_Maxcst"
    output: "eqp2p_m1_1_max0"
    name: "eqp2p_m1_1_Max"
    op_type: "Max"
    domain: ""
  }
  node {
    input: "eqp2p_m1_1_C0"
    input: "eqp2p_m1_0_Maxcst1"
    output: "eqp2p_m1_1_max02"
    name: "eqp2p_m1_1_Max1"
    op_type: "Max"
    domain: ""
  }
  node {
    input: "eqp2p_m1_2_C0"
    input: "eqp2p_m1_0_Maxcst"
    output: "eqp2p_m1_2_max0"
    name: "eqp2p_m1_2_Max"
    op_type: "Max"
    domain: ""
  }
  node {
    input: "eqp2p_m1_2_C0"
    input: "eqp2p_m1_0_Maxcst1"
    output: "eqp2p_m1_2_max02"
    name: "eqp2p_m1_2_Max1"
    op_type: "Max"
    domain: ""
  }
  node {
    input: "eqp_log0_output0"
    input: "eqp_log0_Addcst"
    output: "eqp_log0_C01"
    name: "eqp_log0_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "eqp2p_m1_1_max02"
    input: "eqp_ns1_max0"
    output: "eqp_ns1_C01"
    name: "eqp_ns1_Div"
    op_type: "Div"
    domain: ""
  }
  node {
    input: "eqp2p_m1_2_max02"
    input: "eqp_ns2_max0"
    output: "eqp_ns2_C01"
    name: "eqp_ns2_Div"
    op_type: "Div"
    domain: ""
  }
  node {
    input: "eqp2p_m1_1_max0"
    output: "eqp_log1_output0"
    name: "eqp_log1_Log"
    op_type: "Log"
    domain: ""
  }
  node {
    input: "eqp2p_m1_2_max0"
    output: "eqp_log2_output0"
    name: "eqp_log2_Log"
    op_type: "Log"
    domain: ""
  }
  node {
    input: "eqp_ns0_C01"
    input: "eqp_ns0_Mulcst"
    output: "eqp_ns0_C0"
    name: "eqp_ns0_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "eqp_log1_output0"
    input: "eqp_log0_Addcst"
    output: "eqp_log1_C01"
    name: "eqp_log1_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "eqp_log2_output0"
    input: "eqp_log0_Addcst"
    output: "eqp_log2_C01"
    name: "eqp_log2_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "eqp_log0_C01"
    input: "dec_Powcst"
    output: "eqp_log0_C0"
    name: "eqp_log0_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "eqp_ns1_C01"
    input: "eqp_ns0_Mulcst"
    output: "eqp_ns1_C0"
    name: "eqp_ns1_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "eqp_ns2_C01"
    input: "eqp_ns0_Mulcst"
    output: "eqp_ns2_C0"
    name: "eqp_ns2_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "eqp_log0_C0"
    input: "eqp_ns0_C0"
    output: "avlog0_C01"
    name: "avlog0_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "eqp_log1_C01"
    input: "dec_Powcst"
    output: "eqp_log1_C0"
    name: "eqp_log1_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "eqp_log2_C01"
    input: "dec_Powcst"
    output: "eqp_log2_C0"
    name: "eqp_log2_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "eqp_log1_C0"
    input: "eqp_ns1_C0"
    output: "avlog1_C01"
    name: "avlog1_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "eqp_log2_C0"
    input: "eqp_ns2_C0"
    output: "avlog2_C01"
    name: "avlog2_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "avlog0_C01"
    input: "plus2_0_output0"
    output: "avlog0_C0"
    name: "avlog0_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "eq2_0_output0"
    input: "avlog0_C0"
    output: "avpl0_C0"
    name: "avpl0_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "avlog1_C01"
    input: "plus2_1_output0"
    output: "avlog1_C0"
    name: "avlog1_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "avlog2_C01"
    input: "plus2_2_output0"
    output: "avlog2_C0"
    name: "avlog2_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "eq2_1_output0"
    input: "avlog1_C0"
    output: "avpl1_C0"
    name: "avpl1_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "eq2_2_output0"
    input: "avlog2_C0"
    output: "avpl2_C0"
    name: "avpl2_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "path_length0_reshaped0"
    input: "avpl0_C0"
    output: "depth0_C01"
    name: "depth0_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "depth0_C01"
    input: "eqp2p_m1_0_Addcst"
    output: "depth0_C0"
    name: "depth0_Add1"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "path_length1_reshaped0"
    input: "avpl1_C0"
    output: "depth1_C01"
    name: "depth1_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "path_length2_reshaped0"
    input: "avpl2_C0"
    output: "depth2_C01"
    name: "depth2_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "depth1_C01"
    input: "eqp2p_m1_0_Addcst"
    output: "depth1_C0"
    name: "depth1_Add1"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "depth2_C01"
    input: "eqp2p_m1_0_Addcst"
    output: "depth2_C0"
    name: "depth2_Add1"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "depth0_C0"
    input: "depth1_C0"
    input: "depth2_C0"
    output: "dec_sum0"
    name: "dec_Sum"
    op_type: "Sum"
    domain: ""
  }
  node {
    input: "dec_sum0"
    input: "dec_Divcst"
    output: "dec_C0"
    name: "dec_Div"
    op_type: "Div"
    domain: ""
  }
  node {
    input: "dec_C0"
    output: "dec_Y01"
    name: "dec_Neg"
    op_type: "Neg"
    domain: ""
  }
  node {
    input: "dec_Powcst"
    input: "dec_Y01"
    output: "dec_Z0"
    name: "dec_Pow"
    op_type: "Pow"
    domain: ""
  }
  node {
    input: "dec_Z0"
    output: "dec_Y0"
    name: "dec_Neg1"
    op_type: "Neg"
    domain: ""
  }
  node {
    input: "dec_Y0"
    input: "dec_Addcst"
    output: "scores"
    name: "dec_Add"
    op_type: "Add"
    domain: ""
  }
  node {
    input: "scores"
    input: "eqp2p_m1_0_Maxcst1"
    output: "predict_C01"
    name: "predict_Less"
    op_type: "Less"
    domain: ""
  }
  node {
    input: "predict_C01"
    output: "predict_output0"
    name: "predict_Cast"
    op_type: "Cast"
    domain: ""
    attribute {
      name: "to"
      type: INT
      i: 7
    }
  }
  node {
    input: "predict_output0"
    input: "predict_Mulcst"
    output: "predict_C0"
    name: "predict_Mul"
    op_type: "Mul"
    domain: ""
  }
  node {
    input: "predict_C0"
    input: "predict_Addcst"
    output: "label"
    name: "predict_Add"
    op_type: "Add"
    domain: ""
  }
  name: "ONNX(IsolationForest)"
  initializer {
    dims: 1
    data_type: 1
    float_data: 2
    name: "dec_Powcst"
  }
  initializer {
    dims: 2
    data_type: 7
    int64_data: 0
    int64_data: 1
    name: "node_sample0_Gathercst"
  }
  initializer {
    dims: 2
    data_type: 7
    int64_data: -1
    int64_data: 1
    name: "path_length0_Reshapecst"
  }
  initializer {
    dims: 1
    data_type: 1
    float_data: -1
    name: "eqp2p_m1_0_Addcst"
  }
  initializer {
    dims: 1
    data_type: 1
    float_data: 1
    name: "eqp2p_m1_0_Maxcst"
  }
  initializer {
    dims: 1
    data_type: 1
    float_data: 0.577215672
    name: "eqp_log0_Addcst"
  }
  initializer {
    dims: 1
    data_type: 1
    float_data: 0
    name: "eqp2p_m1_0_Maxcst1"
  }
  initializer {
    dims: 1
    data_type: 1
    float_data: -2
    name: "eqp_ns0_Mulcst"
  }
  initializer {
    dims: 1
    dims: 1
    data_type: 1
    float_data: 25.0940132
    name: "dec_Divcst"
  }
  initializer {
    dims: 1
    data_type: 1
    float_data: 0.5
    name: "dec_Addcst"
  }
  initializer {
    dims: 1
    data_type: 7
    int64_data: -2
    name: "predict_Mulcst"
  }
  initializer {
    dims: 1
    data_type: 7
    int64_data: 1
    name: "predict_Addcst"
  }
  input {
    name: "X"
    type {
      tensor_type {
        elem_type: 1
        shape {
          dim {
          }
          dim {
            dim_value: 2
          }
        }
      }
    }
  }
  output {
    name: "label"
    type {
      tensor_type {
        elem_type: 7
        shape {
          dim {
          }
          dim {
            dim_value: 1
          }
        }
      }
    }
  }
  output {
    name: "scores"
    type {
      tensor_type {
        elem_type: 1
        shape {
          dim {
          }
          dim {
            dim_value: 1
          }
        }
      }
    }
  }
}

The last line shows the opsets. Let’s extract it.

domains = onx.opset_import
for dom in domains:
    print("domain: %r, version: %r" % (dom.domain, dom.version))
domain: '', version: 15
domain: 'ai.onnx.ml', version: 2

There are two opsets, one for standard operators, the other for machine learning operators.

ONNX and opset#

The converter can convert a model to an older opset than the default one, from 1 to the last available one.

def get_domain_opset(onx):
    domains = onx.opset_import
    res = [{"domain": dom.domain, "version": dom.version} for dom in domains]
    return {d["domain"]: d["version"] for d in res}


for opset in range(6, onnx_opset_version() + 1):
    try:
        onx = to_onnx(
            model,
            X[:1].astype(numpy.float32),
            target_opset={"": opset, "ai.onnx.ml": 2},
        )
    except RuntimeError as e:
        print("target: %r error: %r" % (opset, e))
        continue
    nodes = len(onx.graph.node)
    print("target: %r --> %s %d" % (opset, get_domain_opset(onx), nodes))
target: 6 --> {'ai.onnx.ml': 2, '': 6} 91
target: 7 --> {'ai.onnx.ml': 2, '': 7} 91
target: 8 --> {'ai.onnx.ml': 2, '': 8} 91
target: 9 --> {'ai.onnx.ml': 2, '': 9} 91
target: 10 --> {'ai.onnx.ml': 2, '': 10} 91
target: 11 --> {'ai.onnx.ml': 2, '': 11} 91
target: 12 --> {'': 12, 'ai.onnx.ml': 2} 91
target: 13 --> {'ai.onnx.ml': 2, '': 13} 91
target: 14 --> {'ai.onnx.ml': 2, '': 14} 91
target: 15 --> {'': 15, 'ai.onnx.ml': 2} 91
target: 16 --> {'': 16, 'ai.onnx.ml': 2} 91
target: 17 --> {'': 17, 'ai.onnx.ml': 2} 91
target: 18 --> {'': 18, 'ai.onnx.ml': 2} 91
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1515: UserWarning: Parameter target_opset 19 > 18 is higher than the the latest tested version.
  warnings.warn(
target: 19 error: RuntimeError("The model is using version 19 of domain '' not supported yet by this library. You need to specify target_opset={'': 18}.")
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1515: UserWarning: Parameter target_opset 20 > 18 is higher than the the latest tested version.
  warnings.warn(
target: 20 error: RuntimeError("The model is using version 20 of domain '' not supported yet by this library. You need to specify target_opset={'': 18}.")

It shows that the model cannot be converted for opset below 5. Operator Reshape changed in opset 5: a parameter became an input. The converter does not support opset < 5 because runtimes usually do not.

Other opsets#

The previous example changed the opset of the main domain '' but the other opset domain can be changed as well.

for opset in range(9, onnx_opset_version() + 1):
    for opset_ml in range(1, 4):
        tops = {"": opset, "ai.onnx.ml": opset_ml}
        try:
            print("try target_opset:", tops)
            onx = to_onnx(model, X[:1].astype(numpy.float32), target_opset=tops)
        except RuntimeError as e:
            print("target: %r error: %r" % (opset, e))
            continue
        nodes = len(onx.graph.node)
        print("target: %r --> %s %d" % (opset, get_domain_opset(onx), nodes))
try target_opset: {'': 9, 'ai.onnx.ml': 1}
target: 9 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 9, 'ai.onnx.ml': 2}
target: 9 --> {'ai.onnx.ml': 2, '': 9} 91
try target_opset: {'': 9, 'ai.onnx.ml': 3}
target: 9 --> {'ai.onnx.ml': 2, '': 9} 91
try target_opset: {'': 10, 'ai.onnx.ml': 1}
target: 10 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 10, 'ai.onnx.ml': 2}
target: 10 --> {'ai.onnx.ml': 2, '': 10} 91
try target_opset: {'': 10, 'ai.onnx.ml': 3}
target: 10 --> {'ai.onnx.ml': 2, '': 10} 91
try target_opset: {'': 11, 'ai.onnx.ml': 1}
target: 11 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 11, 'ai.onnx.ml': 2}
target: 11 --> {'ai.onnx.ml': 2, '': 11} 91
try target_opset: {'': 11, 'ai.onnx.ml': 3}
target: 11 --> {'ai.onnx.ml': 2, '': 11} 91
try target_opset: {'': 12, 'ai.onnx.ml': 1}
target: 12 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 12, 'ai.onnx.ml': 2}
target: 12 --> {'': 12, 'ai.onnx.ml': 2} 91
try target_opset: {'': 12, 'ai.onnx.ml': 3}
target: 12 --> {'': 12, 'ai.onnx.ml': 2} 91
try target_opset: {'': 13, 'ai.onnx.ml': 1}
target: 13 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 13, 'ai.onnx.ml': 2}
target: 13 --> {'ai.onnx.ml': 2, '': 13} 91
try target_opset: {'': 13, 'ai.onnx.ml': 3}
target: 13 --> {'ai.onnx.ml': 2, '': 13} 91
try target_opset: {'': 14, 'ai.onnx.ml': 1}
target: 14 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 14, 'ai.onnx.ml': 2}
target: 14 --> {'ai.onnx.ml': 2, '': 14} 91
try target_opset: {'': 14, 'ai.onnx.ml': 3}
target: 14 --> {'ai.onnx.ml': 2, '': 14} 91
try target_opset: {'': 15, 'ai.onnx.ml': 1}
target: 15 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 15, 'ai.onnx.ml': 2}
target: 15 --> {'': 15, 'ai.onnx.ml': 2} 91
try target_opset: {'': 15, 'ai.onnx.ml': 3}
target: 15 --> {'': 15, 'ai.onnx.ml': 2} 91
try target_opset: {'': 16, 'ai.onnx.ml': 1}
target: 16 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 16, 'ai.onnx.ml': 2}
target: 16 --> {'': 16, 'ai.onnx.ml': 2} 91
try target_opset: {'': 16, 'ai.onnx.ml': 3}
target: 16 --> {'': 16, 'ai.onnx.ml': 2} 91
try target_opset: {'': 17, 'ai.onnx.ml': 1}
target: 17 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 17, 'ai.onnx.ml': 2}
target: 17 --> {'': 17, 'ai.onnx.ml': 2} 91
try target_opset: {'': 17, 'ai.onnx.ml': 3}
target: 17 --> {'': 17, 'ai.onnx.ml': 2} 91
try target_opset: {'': 18, 'ai.onnx.ml': 1}
target: 18 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 18, 'ai.onnx.ml': 2}
target: 18 --> {'': 18, 'ai.onnx.ml': 2} 91
try target_opset: {'': 18, 'ai.onnx.ml': 3}
target: 18 --> {'': 18, 'ai.onnx.ml': 2} 91
try target_opset: {'': 19, 'ai.onnx.ml': 1}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1515: UserWarning: Parameter target_opset 19 > 18 is higher than the the latest tested version.
  warnings.warn(
target: 19 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 19, 'ai.onnx.ml': 2}
target: 19 error: RuntimeError("The model is using version 19 of domain '' not supported yet by this library. You need to specify target_opset={'': 18}.")
try target_opset: {'': 19, 'ai.onnx.ml': 3}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1515: UserWarning: Parameter target_opset 19 > 18 is higher than the the latest tested version.
  warnings.warn(
target: 19 error: RuntimeError("The model is using version 19 of domain '' not supported yet by this library. You need to specify target_opset={'': 18}.")
try target_opset: {'': 20, 'ai.onnx.ml': 1}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1515: UserWarning: Parameter target_opset 20 > 18 is higher than the the latest tested version.
  warnings.warn(
target: 20 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 20, 'ai.onnx.ml': 2}
target: 20 error: RuntimeError("The model is using version 20 of domain '' not supported yet by this library. You need to specify target_opset={'': 18}.")
try target_opset: {'': 20, 'ai.onnx.ml': 3}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1515: UserWarning: Parameter target_opset 20 > 18 is higher than the the latest tested version.
  warnings.warn(
target: 20 error: RuntimeError("The model is using version 20 of domain '' not supported yet by this library. You need to specify target_opset={'': 18}.")

Total running time of the script: (0 minutes 14.624 seconds)

Gallery generated by Sphinx-Gallery