onnx 1.16.2__cp310-cp310-win_amd64.whl → 1.17.0__cp310-cp310-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of onnx might be problematic. Click here for more details.

Files changed (843) hide show
  1. onnx/__init__.py +3 -1
  2. onnx/_custom_element_types.py +63 -0
  3. onnx/backend/base.py +17 -15
  4. onnx/backend/sample/ops/__init__.py +4 -4
  5. onnx/backend/sample/ops/abs.py +1 -0
  6. onnx/backend/test/__init__.py +1 -0
  7. onnx/backend/test/case/__init__.py +2 -2
  8. onnx/backend/test/case/base.py +6 -5
  9. onnx/backend/test/case/model/__init__.py +4 -3
  10. onnx/backend/test/case/model/expand.py +1 -0
  11. onnx/backend/test/case/model/gradient.py +1 -0
  12. onnx/backend/test/case/model/sequence.py +3 -1
  13. onnx/backend/test/case/model/shrink.py +1 -0
  14. onnx/backend/test/case/model/sign.py +1 -0
  15. onnx/backend/test/case/model/single-relu.py +1 -0
  16. onnx/backend/test/case/model/stringnormalizer.py +1 -1
  17. onnx/backend/test/case/node/__init__.py +31 -22
  18. onnx/backend/test/case/node/_image_decoder_data.py +1 -0
  19. onnx/backend/test/case/node/abs.py +1 -0
  20. onnx/backend/test/case/node/acos.py +1 -0
  21. onnx/backend/test/case/node/acosh.py +1 -0
  22. onnx/backend/test/case/node/adagrad.py +2 -1
  23. onnx/backend/test/case/node/adam.py +4 -1
  24. onnx/backend/test/case/node/add.py +1 -0
  25. onnx/backend/test/case/node/affinegrid.py +1 -0
  26. onnx/backend/test/case/node/ai_onnx_ml/array_feature_extractor.py +1 -0
  27. onnx/backend/test/case/node/ai_onnx_ml/binarizer.py +1 -0
  28. onnx/backend/test/case/node/ai_onnx_ml/label_encoder.py +1 -0
  29. onnx/backend/test/case/node/ai_onnx_ml/tree_ensemble.py +1 -0
  30. onnx/backend/test/case/node/and.py +1 -0
  31. onnx/backend/test/case/node/argmax.py +1 -0
  32. onnx/backend/test/case/node/argmin.py +1 -0
  33. onnx/backend/test/case/node/asin.py +1 -0
  34. onnx/backend/test/case/node/asinh.py +1 -0
  35. onnx/backend/test/case/node/atan.py +1 -0
  36. onnx/backend/test/case/node/atanh.py +1 -0
  37. onnx/backend/test/case/node/averagepool.py +1 -0
  38. onnx/backend/test/case/node/batchnorm.py +1 -0
  39. onnx/backend/test/case/node/bernoulli.py +1 -0
  40. onnx/backend/test/case/node/bitshift.py +1 -0
  41. onnx/backend/test/case/node/bitwiseand.py +1 -0
  42. onnx/backend/test/case/node/bitwisenot.py +1 -0
  43. onnx/backend/test/case/node/bitwiseor.py +1 -0
  44. onnx/backend/test/case/node/bitwisexor.py +1 -0
  45. onnx/backend/test/case/node/blackmanwindow.py +13 -3
  46. onnx/backend/test/case/node/cast.py +2 -1
  47. onnx/backend/test/case/node/castlike.py +1 -0
  48. onnx/backend/test/case/node/ceil.py +1 -0
  49. onnx/backend/test/case/node/celu.py +1 -0
  50. onnx/backend/test/case/node/center_crop_pad.py +1 -0
  51. onnx/backend/test/case/node/clip.py +1 -0
  52. onnx/backend/test/case/node/col2im.py +1 -1
  53. onnx/backend/test/case/node/compress.py +1 -0
  54. onnx/backend/test/case/node/concat.py +3 -2
  55. onnx/backend/test/case/node/constant.py +1 -0
  56. onnx/backend/test/case/node/constantofshape.py +1 -0
  57. onnx/backend/test/case/node/conv.py +1 -0
  58. onnx/backend/test/case/node/convinteger.py +1 -0
  59. onnx/backend/test/case/node/convtranspose.py +135 -0
  60. onnx/backend/test/case/node/cos.py +1 -0
  61. onnx/backend/test/case/node/cosh.py +1 -0
  62. onnx/backend/test/case/node/cumsum.py +1 -0
  63. onnx/backend/test/case/node/deformconv.py +17 -26
  64. onnx/backend/test/case/node/depthtospace.py +1 -0
  65. onnx/backend/test/case/node/dequantizelinear.py +1 -0
  66. onnx/backend/test/case/node/det.py +1 -0
  67. onnx/backend/test/case/node/dft.py +1 -0
  68. onnx/backend/test/case/node/div.py +1 -0
  69. onnx/backend/test/case/node/dropout.py +1 -0
  70. onnx/backend/test/case/node/dynamicquantizelinear.py +1 -0
  71. onnx/backend/test/case/node/einsum.py +2 -3
  72. onnx/backend/test/case/node/elu.py +1 -0
  73. onnx/backend/test/case/node/equal.py +1 -0
  74. onnx/backend/test/case/node/erf.py +1 -0
  75. onnx/backend/test/case/node/exp.py +1 -0
  76. onnx/backend/test/case/node/expand.py +1 -0
  77. onnx/backend/test/case/node/eyelike.py +1 -0
  78. onnx/backend/test/case/node/flatten.py +1 -0
  79. onnx/backend/test/case/node/floor.py +1 -0
  80. onnx/backend/test/case/node/gather.py +1 -0
  81. onnx/backend/test/case/node/gatherelements.py +1 -0
  82. onnx/backend/test/case/node/gathernd.py +1 -0
  83. onnx/backend/test/case/node/gelu.py +1 -0
  84. onnx/backend/test/case/node/gemm.py +3 -4
  85. onnx/backend/test/case/node/globalaveragepool.py +1 -0
  86. onnx/backend/test/case/node/globalmaxpool.py +1 -0
  87. onnx/backend/test/case/node/greater.py +1 -0
  88. onnx/backend/test/case/node/greater_equal.py +1 -0
  89. onnx/backend/test/case/node/gridsample.py +1 -0
  90. onnx/backend/test/case/node/groupnormalization.py +1 -0
  91. onnx/backend/test/case/node/gru.py +3 -2
  92. onnx/backend/test/case/node/hammingwindow.py +13 -2
  93. onnx/backend/test/case/node/hannwindow.py +10 -2
  94. onnx/backend/test/case/node/hardmax.py +1 -0
  95. onnx/backend/test/case/node/hardsigmoid.py +1 -0
  96. onnx/backend/test/case/node/hardswish.py +1 -0
  97. onnx/backend/test/case/node/identity.py +1 -0
  98. onnx/backend/test/case/node/if.py +1 -0
  99. onnx/backend/test/case/node/instancenorm.py +1 -0
  100. onnx/backend/test/case/node/isinf.py +1 -0
  101. onnx/backend/test/case/node/isnan.py +1 -0
  102. onnx/backend/test/case/node/layernormalization.py +1 -0
  103. onnx/backend/test/case/node/leakyrelu.py +1 -0
  104. onnx/backend/test/case/node/less.py +1 -0
  105. onnx/backend/test/case/node/less_equal.py +1 -0
  106. onnx/backend/test/case/node/log.py +1 -0
  107. onnx/backend/test/case/node/logsoftmax.py +1 -0
  108. onnx/backend/test/case/node/loop.py +4 -3
  109. onnx/backend/test/case/node/lppool.py +1 -0
  110. onnx/backend/test/case/node/lrn.py +1 -0
  111. onnx/backend/test/case/node/lstm.py +3 -2
  112. onnx/backend/test/case/node/matmul.py +1 -0
  113. onnx/backend/test/case/node/matmulinteger.py +1 -0
  114. onnx/backend/test/case/node/max.py +1 -0
  115. onnx/backend/test/case/node/maxpool.py +1 -0
  116. onnx/backend/test/case/node/maxunpool.py +1 -0
  117. onnx/backend/test/case/node/mean.py +1 -0
  118. onnx/backend/test/case/node/meanvariancenormalization.py +1 -0
  119. onnx/backend/test/case/node/melweightmatrix.py +1 -0
  120. onnx/backend/test/case/node/min.py +1 -0
  121. onnx/backend/test/case/node/mish.py +1 -0
  122. onnx/backend/test/case/node/mod.py +1 -0
  123. onnx/backend/test/case/node/momentum.py +1 -0
  124. onnx/backend/test/case/node/mul.py +1 -0
  125. onnx/backend/test/case/node/neg.py +1 -0
  126. onnx/backend/test/case/node/negativeloglikelihoodloss.py +4 -1
  127. onnx/backend/test/case/node/nonmaxsuppression.py +1 -0
  128. onnx/backend/test/case/node/nonzero.py +1 -0
  129. onnx/backend/test/case/node/not.py +1 -0
  130. onnx/backend/test/case/node/onehot.py +1 -0
  131. onnx/backend/test/case/node/optionalgetelement.py +3 -2
  132. onnx/backend/test/case/node/optionalhaselement.py +2 -3
  133. onnx/backend/test/case/node/or.py +1 -0
  134. onnx/backend/test/case/node/pad.py +2 -1
  135. onnx/backend/test/case/node/pow.py +1 -0
  136. onnx/backend/test/case/node/prelu.py +1 -0
  137. onnx/backend/test/case/node/qlinearconv.py +1 -0
  138. onnx/backend/test/case/node/qlinearmatmul.py +1 -0
  139. onnx/backend/test/case/node/quantizelinear.py +1 -0
  140. onnx/backend/test/case/node/rangeop.py +1 -0
  141. onnx/backend/test/case/node/reciprocal.py +1 -0
  142. onnx/backend/test/case/node/reduce_log_sum.py +1 -0
  143. onnx/backend/test/case/node/reduce_log_sum_exp.py +1 -0
  144. onnx/backend/test/case/node/reducel1.py +1 -0
  145. onnx/backend/test/case/node/reducel2.py +1 -0
  146. onnx/backend/test/case/node/reducemax.py +2 -1
  147. onnx/backend/test/case/node/reducemean.py +1 -0
  148. onnx/backend/test/case/node/reducemin.py +1 -0
  149. onnx/backend/test/case/node/reduceprod.py +1 -0
  150. onnx/backend/test/case/node/reducesum.py +2 -1
  151. onnx/backend/test/case/node/reducesumsquare.py +1 -0
  152. onnx/backend/test/case/node/regex_full_match.py +1 -0
  153. onnx/backend/test/case/node/relu.py +1 -0
  154. onnx/backend/test/case/node/reshape.py +1 -0
  155. onnx/backend/test/case/node/resize.py +3 -2
  156. onnx/backend/test/case/node/reversesequence.py +1 -0
  157. onnx/backend/test/case/node/rnn.py +3 -2
  158. onnx/backend/test/case/node/roialign.py +1 -0
  159. onnx/backend/test/case/node/round.py +4 -3
  160. onnx/backend/test/case/node/scan.py +1 -0
  161. onnx/backend/test/case/node/scatter.py +1 -0
  162. onnx/backend/test/case/node/scatterelements.py +7 -3
  163. onnx/backend/test/case/node/scatternd.py +1 -0
  164. onnx/backend/test/case/node/selu.py +1 -0
  165. onnx/backend/test/case/node/sequence_map.py +1 -0
  166. onnx/backend/test/case/node/sequenceinsert.py +4 -3
  167. onnx/backend/test/case/node/shape.py +1 -0
  168. onnx/backend/test/case/node/shrink.py +1 -0
  169. onnx/backend/test/case/node/sigmoid.py +1 -0
  170. onnx/backend/test/case/node/sign.py +1 -0
  171. onnx/backend/test/case/node/sin.py +1 -0
  172. onnx/backend/test/case/node/sinh.py +1 -0
  173. onnx/backend/test/case/node/size.py +1 -0
  174. onnx/backend/test/case/node/slice.py +1 -0
  175. onnx/backend/test/case/node/softmax.py +1 -0
  176. onnx/backend/test/case/node/softmaxcrossentropy.py +4 -1
  177. onnx/backend/test/case/node/softplus.py +1 -0
  178. onnx/backend/test/case/node/softsign.py +1 -0
  179. onnx/backend/test/case/node/spacetodepth.py +1 -0
  180. onnx/backend/test/case/node/split.py +1 -0
  181. onnx/backend/test/case/node/splittosequence.py +1 -0
  182. onnx/backend/test/case/node/sqrt.py +1 -0
  183. onnx/backend/test/case/node/squeeze.py +1 -0
  184. onnx/backend/test/case/node/stft.py +4 -1
  185. onnx/backend/test/case/node/string_concat.py +1 -0
  186. onnx/backend/test/case/node/string_split.py +1 -0
  187. onnx/backend/test/case/node/stringnormalizer.py +1 -0
  188. onnx/backend/test/case/node/sub.py +1 -0
  189. onnx/backend/test/case/node/sum.py +1 -0
  190. onnx/backend/test/case/node/tan.py +1 -0
  191. onnx/backend/test/case/node/tanh.py +1 -0
  192. onnx/backend/test/case/node/tfidfvectorizer.py +1 -0
  193. onnx/backend/test/case/node/thresholdedrelu.py +1 -0
  194. onnx/backend/test/case/node/tile.py +1 -0
  195. onnx/backend/test/case/node/topk.py +1 -0
  196. onnx/backend/test/case/node/transpose.py +1 -0
  197. onnx/backend/test/case/node/trilu.py +1 -0
  198. onnx/backend/test/case/node/unique.py +7 -0
  199. onnx/backend/test/case/node/unsqueeze.py +1 -0
  200. onnx/backend/test/case/node/upsample.py +1 -0
  201. onnx/backend/test/case/node/where.py +1 -0
  202. onnx/backend/test/case/node/xor.py +1 -0
  203. onnx/backend/test/case/test_case.py +6 -5
  204. onnx/backend/test/case/utils.py +2 -2
  205. onnx/backend/test/cmd_tools.py +1 -0
  206. onnx/backend/test/data/node/test_acos/model.onnx +0 -0
  207. onnx/backend/test/data/node/test_acos/test_data_set_0/output_0.pb +0 -0
  208. onnx/backend/test/data/node/test_acos_example/model.onnx +0 -0
  209. onnx/backend/test/data/node/test_acosh/model.onnx +0 -0
  210. onnx/backend/test/data/node/test_acosh/test_data_set_0/output_0.pb +1 -1
  211. onnx/backend/test/data/node/test_acosh_example/model.onnx +0 -0
  212. onnx/backend/test/data/node/test_asin/model.onnx +0 -0
  213. onnx/backend/test/data/node/test_asin/test_data_set_0/output_0.pb +1 -1
  214. onnx/backend/test/data/node/test_asin_example/model.onnx +0 -0
  215. onnx/backend/test/data/node/test_asinh/model.onnx +0 -0
  216. onnx/backend/test/data/node/test_asinh/test_data_set_0/output_0.pb +1 -1
  217. onnx/backend/test/data/node/test_asinh_example/model.onnx +0 -0
  218. onnx/backend/test/data/node/test_atan/model.onnx +0 -0
  219. onnx/backend/test/data/node/test_atan/test_data_set_0/output_0.pb +1 -1
  220. onnx/backend/test/data/node/test_atan_example/model.onnx +0 -0
  221. onnx/backend/test/data/node/test_atanh/model.onnx +0 -0
  222. onnx/backend/test/data/node/test_atanh/test_data_set_0/output_0.pb +2 -2
  223. onnx/backend/test/data/node/test_atanh_example/model.onnx +0 -0
  224. onnx/backend/test/data/node/test_averagepool_1d_default/model.onnx +0 -0
  225. onnx/backend/test/data/node/test_averagepool_2d_ceil/model.onnx +0 -0
  226. onnx/backend/test/data/node/test_averagepool_2d_default/model.onnx +0 -0
  227. onnx/backend/test/data/node/test_averagepool_2d_dilations/model.onnx +0 -0
  228. onnx/backend/test/data/node/test_averagepool_2d_pads/model.onnx +0 -0
  229. onnx/backend/test/data/node/test_averagepool_2d_pads_count_include_pad/model.onnx +0 -0
  230. onnx/backend/test/data/node/test_averagepool_2d_precomputed_pads/model.onnx +0 -0
  231. onnx/backend/test/data/node/test_averagepool_2d_precomputed_pads_count_include_pad/model.onnx +0 -0
  232. onnx/backend/test/data/node/test_averagepool_2d_precomputed_same_upper/model.onnx +0 -0
  233. onnx/backend/test/data/node/test_averagepool_2d_precomputed_strides/model.onnx +0 -0
  234. onnx/backend/test/data/node/test_averagepool_2d_same_lower/model.onnx +0 -0
  235. onnx/backend/test/data/node/test_averagepool_2d_same_upper/model.onnx +0 -0
  236. onnx/backend/test/data/node/test_averagepool_2d_strides/model.onnx +0 -0
  237. onnx/backend/test/data/node/test_averagepool_3d_default/model.onnx +0 -0
  238. onnx/backend/test/data/node/test_averagepool_3d_dilations_large_count_include_pad_is_0_ceil_mode_is_False/model.onnx +0 -0
  239. onnx/backend/test/data/node/test_averagepool_3d_dilations_large_count_include_pad_is_0_ceil_mode_is_True/model.onnx +0 -0
  240. onnx/backend/test/data/node/test_averagepool_3d_dilations_large_count_include_pad_is_1_ceil_mode_is_False/model.onnx +0 -0
  241. onnx/backend/test/data/node/test_averagepool_3d_dilations_large_count_include_pad_is_1_ceil_mode_is_True/model.onnx +0 -0
  242. onnx/backend/test/data/node/test_averagepool_3d_dilations_small/model.onnx +0 -0
  243. onnx/backend/test/data/node/test_basic_conv_with_padding/model.onnx +0 -0
  244. onnx/backend/test/data/node/test_basic_conv_without_padding/model.onnx +0 -0
  245. onnx/backend/test/data/node/test_basic_deform_conv_with_padding/model.onnx +0 -0
  246. onnx/backend/test/data/node/test_basic_deform_conv_without_padding/model.onnx +0 -0
  247. onnx/backend/test/data/node/test_bernoulli/model.onnx +0 -0
  248. onnx/backend/test/data/node/test_bernoulli_double/model.onnx +0 -0
  249. onnx/backend/test/data/node/test_bernoulli_double_expanded/model.onnx +0 -0
  250. onnx/backend/test/data/node/test_bernoulli_expanded/model.onnx +0 -0
  251. onnx/backend/test/data/node/test_bernoulli_seed/model.onnx +0 -0
  252. onnx/backend/test/data/node/test_bernoulli_seed_expanded/model.onnx +0 -0
  253. onnx/backend/test/data/node/test_blackmanwindow/test_data_set_0/output_0.pb +0 -0
  254. onnx/backend/test/data/node/test_blackmanwindow_expanded/test_data_set_0/output_0.pb +0 -0
  255. onnx/backend/test/data/node/test_blackmanwindow_symmetric/test_data_set_0/output_0.pb +0 -0
  256. onnx/backend/test/data/node/test_blackmanwindow_symmetric_expanded/test_data_set_0/output_0.pb +0 -0
  257. onnx/backend/test/data/node/test_cast_FLOAT16_to_INT4/test_data_set_0/output_0.pb +1 -1
  258. onnx/backend/test/data/node/test_cast_FLOAT_to_INT4/test_data_set_0/output_0.pb +1 -1
  259. onnx/backend/test/data/node/test_cast_INT4_to_FLOAT/test_data_set_0/input_0.pb +1 -1
  260. onnx/backend/test/data/node/test_cast_INT4_to_FLOAT16/test_data_set_0/input_0.pb +1 -1
  261. onnx/backend/test/data/node/test_cast_INT4_to_INT8/test_data_set_0/input_0.pb +1 -1
  262. onnx/backend/test/data/node/test_conv_with_autopad_same/model.onnx +0 -0
  263. onnx/backend/test/data/node/test_conv_with_strides_and_asymmetric_padding/model.onnx +0 -0
  264. onnx/backend/test/data/node/test_conv_with_strides_no_padding/model.onnx +0 -0
  265. onnx/backend/test/data/node/test_conv_with_strides_padding/model.onnx +0 -0
  266. onnx/backend/test/data/node/test_convtranspose/model.onnx +0 -0
  267. onnx/backend/test/data/node/test_convtranspose_1d/model.onnx +0 -0
  268. onnx/backend/test/data/node/test_convtranspose_3d/model.onnx +0 -0
  269. onnx/backend/test/data/node/test_convtranspose_autopad_same/model.onnx +0 -0
  270. onnx/backend/test/data/node/test_convtranspose_dilations/model.onnx +0 -0
  271. onnx/backend/test/data/node/test_convtranspose_group_2/model.onnx +0 -0
  272. onnx/backend/test/data/node/test_convtranspose_group_2/test_data_set_0/input_0.pb +0 -0
  273. onnx/backend/test/data/node/test_convtranspose_group_2/test_data_set_0/input_1.pb +0 -0
  274. onnx/backend/test/data/node/test_convtranspose_group_2/test_data_set_0/output_0.pb +0 -0
  275. onnx/backend/test/data/node/test_convtranspose_group_2_image_3/model.onnx +0 -0
  276. onnx/backend/test/data/node/test_convtranspose_group_2_image_3/test_data_set_0/input_0.pb +0 -0
  277. onnx/backend/test/data/node/test_convtranspose_group_2_image_3/test_data_set_0/input_1.pb +0 -0
  278. onnx/backend/test/data/node/test_convtranspose_group_2_image_3/test_data_set_0/output_0.pb +0 -0
  279. onnx/backend/test/data/node/test_convtranspose_kernel_shape/model.onnx +0 -0
  280. onnx/backend/test/data/node/test_convtranspose_output_shape/model.onnx +0 -0
  281. onnx/backend/test/data/node/test_convtranspose_pad/model.onnx +0 -0
  282. onnx/backend/test/data/node/test_convtranspose_pads/model.onnx +0 -0
  283. onnx/backend/test/data/node/test_cos/model.onnx +0 -0
  284. onnx/backend/test/data/node/test_cos_example/model.onnx +0 -0
  285. onnx/backend/test/data/node/test_cosh/model.onnx +0 -0
  286. onnx/backend/test/data/node/test_cosh/test_data_set_0/output_0.pb +1 -1
  287. onnx/backend/test/data/node/test_cosh_example/model.onnx +0 -0
  288. onnx/backend/test/data/node/test_cosh_example/test_data_set_0/output_0.pb +0 -0
  289. onnx/backend/test/data/node/test_deform_conv_with_mask_bias/model.onnx +0 -0
  290. onnx/backend/test/data/node/test_deform_conv_with_multiple_offset_groups/model.onnx +0 -0
  291. onnx/backend/test/data/node/test_dequantizelinear_int4/test_data_set_0/input_0.pb +1 -1
  292. onnx/backend/test/data/node/test_det_2d/model.onnx +0 -0
  293. onnx/backend/test/data/node/test_det_nd/model.onnx +0 -0
  294. onnx/backend/test/data/node/test_dft/test_data_set_0/output_0.pb +0 -0
  295. onnx/backend/test/data/node/test_dft_axis/test_data_set_0/output_0.pb +0 -0
  296. onnx/backend/test/data/node/test_dft_axis_opset19/test_data_set_0/output_0.pb +0 -0
  297. onnx/backend/test/data/node/test_dft_inverse/test_data_set_0/output_0.pb +0 -0
  298. onnx/backend/test/data/node/test_dft_inverse_opset19/test_data_set_0/output_0.pb +0 -0
  299. onnx/backend/test/data/node/test_dft_opset19/test_data_set_0/output_0.pb +0 -0
  300. onnx/backend/test/data/node/test_dropout_default/model.onnx +0 -0
  301. onnx/backend/test/data/node/test_dropout_default_mask/model.onnx +0 -0
  302. onnx/backend/test/data/node/test_dropout_default_mask_ratio/model.onnx +0 -0
  303. onnx/backend/test/data/node/test_dropout_default_ratio/model.onnx +0 -0
  304. onnx/backend/test/data/node/test_elu/model.onnx +0 -0
  305. onnx/backend/test/data/node/test_elu_default/model.onnx +0 -0
  306. onnx/backend/test/data/node/test_elu_example/model.onnx +0 -0
  307. onnx/backend/test/data/node/test_eyelike_populate_off_main_diagonal/model.onnx +0 -0
  308. onnx/backend/test/data/node/test_eyelike_with_dtype/model.onnx +0 -0
  309. onnx/backend/test/data/node/test_eyelike_without_dtype/model.onnx +0 -0
  310. onnx/backend/test/data/node/test_gelu_default_1/test_data_set_0/output_0.pb +0 -0
  311. onnx/backend/test/data/node/test_gelu_default_1_expanded/test_data_set_0/output_0.pb +0 -0
  312. onnx/backend/test/data/node/test_gelu_default_2/test_data_set_0/output_0.pb +4 -3
  313. onnx/backend/test/data/node/test_gelu_default_2_expanded/test_data_set_0/output_0.pb +4 -3
  314. onnx/backend/test/data/node/test_gelu_tanh_2/test_data_set_0/output_0.pb +0 -0
  315. onnx/backend/test/data/node/test_gelu_tanh_2_expanded/test_data_set_0/output_0.pb +0 -0
  316. onnx/backend/test/data/node/test_globalaveragepool/model.onnx +0 -0
  317. onnx/backend/test/data/node/test_globalaveragepool_precomputed/model.onnx +0 -0
  318. onnx/backend/test/data/node/test_globalmaxpool/model.onnx +0 -0
  319. onnx/backend/test/data/node/test_globalmaxpool_precomputed/model.onnx +0 -0
  320. onnx/backend/test/data/node/test_gridsample/model.onnx +0 -0
  321. onnx/backend/test/data/node/test_gridsample_aligncorners_true/model.onnx +0 -0
  322. onnx/backend/test/data/node/test_gridsample_bicubic/model.onnx +0 -0
  323. onnx/backend/test/data/node/test_gridsample_bicubic_align_corners_0_additional_1/model.onnx +0 -0
  324. onnx/backend/test/data/node/test_gridsample_bicubic_align_corners_1_additional_1/model.onnx +0 -0
  325. onnx/backend/test/data/node/test_gridsample_bilinear/model.onnx +0 -0
  326. onnx/backend/test/data/node/test_gridsample_bilinear_align_corners_0_additional_1/model.onnx +0 -0
  327. onnx/backend/test/data/node/test_gridsample_bilinear_align_corners_1_additional_1/model.onnx +0 -0
  328. onnx/backend/test/data/node/test_gridsample_border_padding/model.onnx +0 -0
  329. onnx/backend/test/data/node/test_gridsample_nearest/model.onnx +0 -0
  330. onnx/backend/test/data/node/test_gridsample_nearest_align_corners_0_additional_1/model.onnx +0 -0
  331. onnx/backend/test/data/node/test_gridsample_nearest_align_corners_1_additional_1/model.onnx +0 -0
  332. onnx/backend/test/data/node/test_gridsample_reflection_padding/model.onnx +0 -0
  333. onnx/backend/test/data/node/test_gridsample_volumetric_bilinear_align_corners_0/model.onnx +0 -0
  334. onnx/backend/test/data/node/test_gridsample_volumetric_bilinear_align_corners_1/model.onnx +0 -0
  335. onnx/backend/test/data/node/test_gridsample_volumetric_nearest_align_corners_0/model.onnx +0 -0
  336. onnx/backend/test/data/node/test_gridsample_volumetric_nearest_align_corners_1/model.onnx +0 -0
  337. onnx/backend/test/data/node/test_gridsample_zeros_padding/model.onnx +0 -0
  338. onnx/backend/test/data/node/test_gru_batchwise/model.onnx +0 -0
  339. onnx/backend/test/data/node/test_gru_defaults/model.onnx +0 -0
  340. onnx/backend/test/data/node/test_gru_seq_length/model.onnx +0 -0
  341. onnx/backend/test/data/node/test_gru_with_initial_bias/model.onnx +0 -0
  342. onnx/backend/test/data/node/test_hammingwindow/test_data_set_0/output_0.pb +0 -0
  343. onnx/backend/test/data/node/test_hammingwindow_expanded/test_data_set_0/output_0.pb +0 -0
  344. onnx/backend/test/data/node/test_hammingwindow_symmetric/test_data_set_0/output_0.pb +1 -1
  345. onnx/backend/test/data/node/test_hammingwindow_symmetric_expanded/test_data_set_0/output_0.pb +1 -1
  346. onnx/backend/test/data/node/test_hannwindow/test_data_set_0/output_0.pb +0 -0
  347. onnx/backend/test/data/node/test_hannwindow_expanded/test_data_set_0/output_0.pb +0 -0
  348. onnx/backend/test/data/node/test_hannwindow_symmetric/test_data_set_0/output_0.pb +0 -0
  349. onnx/backend/test/data/node/test_hannwindow_symmetric_expanded/test_data_set_0/output_0.pb +0 -0
  350. onnx/backend/test/data/node/test_hardsigmoid/model.onnx +0 -0
  351. onnx/backend/test/data/node/test_hardsigmoid_default/model.onnx +0 -0
  352. onnx/backend/test/data/node/test_hardsigmoid_example/model.onnx +0 -0
  353. onnx/backend/test/data/node/test_hardswish/model.onnx +0 -0
  354. onnx/backend/test/data/node/test_hardswish_expanded/model.onnx +0 -0
  355. onnx/backend/test/data/node/test_image_decoder_decode_jpeg2k_rgb/test_data_set_0/input_0.pb +0 -0
  356. onnx/backend/test/data/node/test_instancenorm_epsilon/model.onnx +0 -0
  357. onnx/backend/test/data/node/test_instancenorm_example/model.onnx +0 -0
  358. onnx/backend/test/data/node/test_lppool_1d_default/model.onnx +0 -0
  359. onnx/backend/test/data/node/test_lppool_1d_default/test_data_set_0/output_0.pb +2 -2
  360. onnx/backend/test/data/node/test_lppool_2d_default/model.onnx +0 -0
  361. onnx/backend/test/data/node/test_lppool_2d_default/test_data_set_0/output_0.pb +0 -0
  362. onnx/backend/test/data/node/test_lppool_2d_dilations/model.onnx +0 -0
  363. onnx/backend/test/data/node/test_lppool_2d_pads/model.onnx +0 -0
  364. onnx/backend/test/data/node/test_lppool_2d_pads/test_data_set_0/output_0.pb +0 -0
  365. onnx/backend/test/data/node/test_lppool_2d_same_lower/model.onnx +0 -0
  366. onnx/backend/test/data/node/test_lppool_2d_same_lower/test_data_set_0/output_0.pb +0 -0
  367. onnx/backend/test/data/node/test_lppool_2d_same_upper/model.onnx +0 -0
  368. onnx/backend/test/data/node/test_lppool_2d_same_upper/test_data_set_0/output_0.pb +0 -0
  369. onnx/backend/test/data/node/test_lppool_2d_strides/model.onnx +0 -0
  370. onnx/backend/test/data/node/test_lppool_2d_strides/test_data_set_0/output_0.pb +0 -0
  371. onnx/backend/test/data/node/test_lppool_3d_default/model.onnx +0 -0
  372. onnx/backend/test/data/node/test_lppool_3d_default/test_data_set_0/output_0.pb +0 -0
  373. onnx/backend/test/data/node/test_lstm_batchwise/model.onnx +0 -0
  374. onnx/backend/test/data/node/test_lstm_defaults/model.onnx +0 -0
  375. onnx/backend/test/data/node/test_lstm_with_initial_bias/model.onnx +0 -0
  376. onnx/backend/test/data/node/test_lstm_with_peepholes/model.onnx +0 -0
  377. onnx/backend/test/data/node/test_maxpool_1d_default/model.onnx +0 -0
  378. onnx/backend/test/data/node/test_maxpool_2d_ceil/model.onnx +0 -0
  379. onnx/backend/test/data/node/test_maxpool_2d_ceil_output_size_reduce_by_one/model.onnx +0 -0
  380. onnx/backend/test/data/node/test_maxpool_2d_default/model.onnx +0 -0
  381. onnx/backend/test/data/node/test_maxpool_2d_dilations/model.onnx +0 -0
  382. onnx/backend/test/data/node/test_maxpool_2d_pads/model.onnx +0 -0
  383. onnx/backend/test/data/node/test_maxpool_2d_precomputed_pads/model.onnx +0 -0
  384. onnx/backend/test/data/node/test_maxpool_2d_precomputed_same_upper/model.onnx +0 -0
  385. onnx/backend/test/data/node/test_maxpool_2d_precomputed_strides/model.onnx +0 -0
  386. onnx/backend/test/data/node/test_maxpool_2d_same_lower/model.onnx +0 -0
  387. onnx/backend/test/data/node/test_maxpool_2d_same_upper/model.onnx +0 -0
  388. onnx/backend/test/data/node/test_maxpool_2d_strides/model.onnx +0 -0
  389. onnx/backend/test/data/node/test_maxpool_2d_uint8/model.onnx +0 -0
  390. onnx/backend/test/data/node/test_maxpool_3d_default/model.onnx +0 -0
  391. onnx/backend/test/data/node/test_maxpool_3d_dilations/model.onnx +0 -0
  392. onnx/backend/test/data/node/test_maxpool_3d_dilations_use_ref_impl/model.onnx +0 -0
  393. onnx/backend/test/data/node/test_maxpool_3d_dilations_use_ref_impl_large/model.onnx +0 -0
  394. onnx/backend/test/data/node/test_maxpool_with_argmax_2d_precomputed_pads/model.onnx +0 -0
  395. onnx/backend/test/data/node/test_maxpool_with_argmax_2d_precomputed_strides/model.onnx +0 -0
  396. onnx/backend/test/data/node/test_maxunpool_export_with_output_shape/model.onnx +0 -0
  397. onnx/backend/test/data/node/test_maxunpool_export_without_output_shape/model.onnx +0 -0
  398. onnx/backend/test/data/node/test_mish/model.onnx +0 -0
  399. onnx/backend/test/data/node/test_mish/test_data_set_0/output_0.pb +0 -0
  400. onnx/backend/test/data/node/test_mish_expanded/model.onnx +0 -0
  401. onnx/backend/test/data/node/test_mish_expanded/test_data_set_0/output_0.pb +0 -0
  402. onnx/backend/test/data/node/test_nllloss_NC/model.onnx +0 -0
  403. onnx/backend/test/data/node/test_nllloss_NC_expanded/model.onnx +0 -0
  404. onnx/backend/test/data/node/test_nllloss_NCd1/model.onnx +0 -0
  405. onnx/backend/test/data/node/test_nllloss_NCd1_expanded/model.onnx +0 -0
  406. onnx/backend/test/data/node/test_nllloss_NCd1_ii/model.onnx +0 -0
  407. onnx/backend/test/data/node/test_nllloss_NCd1_ii_expanded/model.onnx +0 -0
  408. onnx/backend/test/data/node/test_nllloss_NCd1_mean_weight_negative_ii/model.onnx +0 -0
  409. onnx/backend/test/data/node/test_nllloss_NCd1_mean_weight_negative_ii_expanded/model.onnx +0 -0
  410. onnx/backend/test/data/node/test_nllloss_NCd1_weight/model.onnx +0 -0
  411. onnx/backend/test/data/node/test_nllloss_NCd1_weight_expanded/model.onnx +0 -0
  412. onnx/backend/test/data/node/test_nllloss_NCd1_weight_ii/model.onnx +0 -0
  413. onnx/backend/test/data/node/test_nllloss_NCd1_weight_ii_expanded/model.onnx +0 -0
  414. onnx/backend/test/data/node/test_nllloss_NCd1d2/model.onnx +0 -0
  415. onnx/backend/test/data/node/test_nllloss_NCd1d2_expanded/model.onnx +0 -0
  416. onnx/backend/test/data/node/test_nllloss_NCd1d2_no_weight_reduction_mean_ii/model.onnx +0 -0
  417. onnx/backend/test/data/node/test_nllloss_NCd1d2_no_weight_reduction_mean_ii_expanded/model.onnx +0 -0
  418. onnx/backend/test/data/node/test_nllloss_NCd1d2_reduction_mean/model.onnx +0 -0
  419. onnx/backend/test/data/node/test_nllloss_NCd1d2_reduction_mean_expanded/model.onnx +0 -0
  420. onnx/backend/test/data/node/test_nllloss_NCd1d2_reduction_sum/model.onnx +0 -0
  421. onnx/backend/test/data/node/test_nllloss_NCd1d2_reduction_sum_expanded/model.onnx +0 -0
  422. onnx/backend/test/data/node/test_nllloss_NCd1d2_with_weight/model.onnx +0 -0
  423. onnx/backend/test/data/node/test_nllloss_NCd1d2_with_weight_expanded/model.onnx +0 -0
  424. onnx/backend/test/data/node/test_nllloss_NCd1d2_with_weight_reduction_mean/model.onnx +0 -0
  425. onnx/backend/test/data/node/test_nllloss_NCd1d2_with_weight_reduction_mean_expanded/model.onnx +0 -0
  426. onnx/backend/test/data/node/test_nllloss_NCd1d2_with_weight_reduction_sum/model.onnx +0 -0
  427. onnx/backend/test/data/node/test_nllloss_NCd1d2_with_weight_reduction_sum_expanded/model.onnx +0 -0
  428. onnx/backend/test/data/node/test_nllloss_NCd1d2_with_weight_reduction_sum_ii/model.onnx +0 -0
  429. onnx/backend/test/data/node/test_nllloss_NCd1d2_with_weight_reduction_sum_ii_expanded/model.onnx +0 -0
  430. onnx/backend/test/data/node/test_nllloss_NCd1d2d3_none_no_weight_negative_ii/model.onnx +0 -0
  431. onnx/backend/test/data/node/test_nllloss_NCd1d2d3_none_no_weight_negative_ii_expanded/model.onnx +0 -0
  432. onnx/backend/test/data/node/test_nllloss_NCd1d2d3_sum_weight_high_ii/model.onnx +0 -0
  433. onnx/backend/test/data/node/test_nllloss_NCd1d2d3_sum_weight_high_ii_expanded/model.onnx +0 -0
  434. onnx/backend/test/data/node/test_nllloss_NCd1d2d3d4d5_mean_weight/model.onnx +0 -0
  435. onnx/backend/test/data/node/test_nllloss_NCd1d2d3d4d5_mean_weight_expanded/model.onnx +0 -0
  436. onnx/backend/test/data/node/test_nllloss_NCd1d2d3d4d5_none_no_weight/model.onnx +0 -0
  437. onnx/backend/test/data/node/test_nllloss_NCd1d2d3d4d5_none_no_weight_expanded/model.onnx +0 -0
  438. onnx/backend/test/data/node/test_quantizelinear_int4/test_data_set_0/output_0.pb +1 -1
  439. onnx/backend/test/data/node/test_reduce_log_sum_exp_do_not_keepdims_random/test_data_set_0/output_0.pb +1 -1
  440. onnx/backend/test/data/node/test_reduce_log_sum_exp_do_not_keepdims_random_expanded/test_data_set_0/output_0.pb +1 -1
  441. onnx/backend/test/data/node/test_reduce_log_sum_exp_keepdims_random/test_data_set_0/output_0.pb +1 -1
  442. onnx/backend/test/data/node/test_reduce_log_sum_exp_keepdims_random_expanded/test_data_set_0/output_0.pb +1 -1
  443. onnx/backend/test/data/node/test_reduce_log_sum_exp_negative_axes_keepdims_random/test_data_set_0/output_0.pb +1 -1
  444. onnx/backend/test/data/node/test_reduce_log_sum_exp_negative_axes_keepdims_random_expanded/test_data_set_0/output_0.pb +1 -1
  445. onnx/backend/test/data/node/test_reduce_max_empty_set/model.onnx +0 -0
  446. onnx/backend/test/data/node/test_reduce_max_empty_set/test_data_set_0/input_0.pb +0 -0
  447. onnx/backend/test/data/node/test_reduce_max_empty_set/test_data_set_0/input_1.pb +0 -0
  448. onnx/backend/test/data/node/test_reduce_max_empty_set/test_data_set_0/output_0.pb +0 -0
  449. onnx/backend/test/data/node/test_reduce_sum_empty_axes_input_noop/model.onnx +0 -0
  450. onnx/backend/test/data/node/test_reduce_sum_empty_axes_input_noop/test_data_set_0/input_0.pb +1 -0
  451. onnx/backend/test/data/node/test_reduce_sum_empty_axes_input_noop/test_data_set_0/input_1.pb +0 -0
  452. onnx/backend/test/data/node/test_reduce_sum_empty_axes_input_noop/test_data_set_0/output_0.pb +1 -0
  453. onnx/backend/test/data/node/test_reduce_sum_negative_axes_keepdims_random/model.onnx +0 -0
  454. onnx/backend/test/data/node/test_reduce_sum_negative_axes_keepdims_random/test_data_set_0/input_1.pb +0 -0
  455. onnx/backend/test/data/node/test_reduce_sum_negative_axes_keepdims_random/test_data_set_0/output_0.pb +1 -1
  456. onnx/backend/test/data/node/test_resize_tf_crop_and_resize/model.onnx +0 -0
  457. onnx/backend/test/data/node/test_resize_tf_crop_and_resize/test_data_set_0/input_1.pb +0 -0
  458. onnx/backend/test/data/node/test_resize_tf_crop_and_resize/test_data_set_0/output_0.pb +0 -0
  459. onnx/backend/test/data/node/test_resize_tf_crop_and_resize_extrapolation_value/model.onnx +0 -0
  460. onnx/backend/test/data/node/test_resize_tf_crop_and_resize_extrapolation_value/test_data_set_0/input_0.pb +0 -0
  461. onnx/backend/test/data/node/test_resize_tf_crop_and_resize_extrapolation_value/test_data_set_0/input_1.pb +0 -0
  462. onnx/backend/test/data/node/test_resize_tf_crop_and_resize_extrapolation_value/test_data_set_0/input_2.pb +0 -0
  463. onnx/backend/test/data/node/test_resize_tf_crop_and_resize_extrapolation_value/test_data_set_0/output_0.pb +0 -0
  464. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_not_larger/model.onnx +0 -0
  465. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_not_larger/test_data_set_0/output_0.pb +0 -0
  466. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_not_smaller/model.onnx +0 -0
  467. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_not_smaller/test_data_set_0/input_0.pb +0 -0
  468. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_not_smaller/test_data_set_0/input_1.pb +0 -0
  469. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_not_smaller/test_data_set_0/output_0.pb +0 -0
  470. onnx/backend/test/data/node/test_rnn_seq_length/model.onnx +0 -0
  471. onnx/backend/test/data/node/test_roialign_aligned_false/model.onnx +0 -0
  472. onnx/backend/test/data/node/test_roialign_aligned_true/model.onnx +0 -0
  473. onnx/backend/test/data/node/test_roialign_mode_max/model.onnx +0 -0
  474. onnx/backend/test/data/node/test_round/model.onnx +0 -0
  475. onnx/backend/test/data/node/test_selu/model.onnx +0 -0
  476. onnx/backend/test/data/node/test_selu_default/model.onnx +0 -0
  477. onnx/backend/test/data/node/test_selu_example/model.onnx +0 -0
  478. onnx/backend/test/data/node/test_simple_rnn_batchwise/model.onnx +0 -0
  479. onnx/backend/test/data/node/test_simple_rnn_defaults/model.onnx +0 -0
  480. onnx/backend/test/data/node/test_simple_rnn_with_initial_bias/model.onnx +0 -0
  481. onnx/backend/test/data/node/test_sin/model.onnx +0 -0
  482. onnx/backend/test/data/node/test_sin_example/model.onnx +0 -0
  483. onnx/backend/test/data/node/test_sinh/model.onnx +0 -0
  484. onnx/backend/test/data/node/test_sinh/test_data_set_0/output_0.pb +1 -1
  485. onnx/backend/test/data/node/test_sinh_example/model.onnx +0 -0
  486. onnx/backend/test/data/node/test_softplus/model.onnx +0 -0
  487. onnx/backend/test/data/node/test_softplus_example/model.onnx +0 -0
  488. onnx/backend/test/data/node/test_softsign/model.onnx +0 -0
  489. onnx/backend/test/data/node/test_softsign_example/model.onnx +0 -0
  490. onnx/backend/test/data/node/test_stft_with_window/test_data_set_0/input_2.pb +0 -0
  491. onnx/backend/test/data/node/test_stft_with_window/test_data_set_0/output_0.pb +0 -0
  492. onnx/backend/test/data/node/test_tan/model.onnx +0 -0
  493. onnx/backend/test/data/node/test_tan/test_data_set_0/output_0.pb +1 -1
  494. onnx/backend/test/data/node/test_tan_example/model.onnx +0 -0
  495. onnx/backend/test/data/node/test_thresholdedrelu/model.onnx +0 -0
  496. onnx/backend/test/data/node/test_thresholdedrelu_default/model.onnx +0 -0
  497. onnx/backend/test/data/node/test_thresholdedrelu_example/model.onnx +0 -0
  498. onnx/backend/test/data/node/test_training_dropout/model.onnx +0 -0
  499. onnx/backend/test/data/node/test_training_dropout_default/model.onnx +0 -0
  500. onnx/backend/test/data/node/test_training_dropout_default_mask/model.onnx +0 -0
  501. onnx/backend/test/data/node/test_training_dropout_mask/model.onnx +0 -0
  502. onnx/backend/test/data/node/test_training_dropout_zero_ratio/model.onnx +0 -0
  503. onnx/backend/test/data/node/test_training_dropout_zero_ratio_mask/model.onnx +0 -0
  504. onnx/backend/test/loader/__init__.py +11 -6
  505. onnx/backend/test/report/__init__.py +4 -3
  506. onnx/backend/test/report/base.py +1 -0
  507. onnx/backend/test/report/coverage.py +21 -20
  508. onnx/backend/test/runner/__init__.py +12 -8
  509. onnx/backend/test/runner/item.py +3 -2
  510. onnx/backend/test/stat_coverage.py +6 -5
  511. onnx/bin/checker.py +1 -0
  512. onnx/checker.cc +6 -1
  513. onnx/common/version.h +1 -1
  514. onnx/compose.py +66 -50
  515. onnx/cpp2py_export.cc +4 -0
  516. onnx/defs/__init__.py +2 -2
  517. onnx/defs/data_type_utils.cc +0 -1
  518. onnx/defs/gen_doc.py +9 -8
  519. onnx/defs/gen_shape_inference_information.py +1 -0
  520. onnx/defs/generator/defs.cc +32 -84
  521. onnx/defs/generator/old.cc +389 -0
  522. onnx/defs/math/defs.cc +308 -313
  523. onnx/defs/math/old.cc +989 -7
  524. onnx/defs/math/utils.cc +12 -1
  525. onnx/defs/math/utils.h +2 -0
  526. onnx/defs/nn/defs.cc +57 -75
  527. onnx/defs/nn/old.cc +1536 -2
  528. onnx/defs/object_detection/defs.cc +4 -7
  529. onnx/defs/object_detection/old.cc +117 -0
  530. onnx/defs/operator_sets.h +108 -1
  531. onnx/defs/parser.cc +10 -1
  532. onnx/defs/quantization/defs.cc +3 -2
  533. onnx/defs/quantization/old.cc +4 -1
  534. onnx/defs/rnn/defs.cc +10 -13
  535. onnx/defs/rnn/old.cc +517 -2
  536. onnx/defs/schema.cc +53 -59
  537. onnx/defs/schema.h +58 -2
  538. onnx/defs/shape_inference.h +67 -18
  539. onnx/defs/tensor/defs.cc +22 -20
  540. onnx/defs/tensor/old.cc +111 -0
  541. onnx/external_data_helper.py +27 -14
  542. onnx/gen_proto.py +3 -2
  543. onnx/helper.py +86 -61
  544. onnx/hub.py +30 -28
  545. onnx/inliner/inliner.cc +0 -1
  546. onnx/mapping.py +3 -2
  547. onnx/numpy_helper.py +159 -23
  548. onnx/onnx-ml.proto +1 -1
  549. onnx/onnx.in.proto +1 -1
  550. onnx/onnx.proto +1 -1
  551. onnx/onnx_cpp2py_export/defs.pyi +0 -2
  552. onnx/onnx_cpp2py_export/inliner.pyi +0 -4
  553. onnx/onnx_cpp2py_export/parser.pyi +0 -4
  554. onnx/onnx_cpp2py_export.cp310-win_amd64.pyd +0 -0
  555. onnx/parser.py +1 -0
  556. onnx/printer.py +2 -3
  557. onnx/reference/__init__.py +1 -0
  558. onnx/reference/custom_element_types.py +73 -8
  559. onnx/reference/op_run.py +13 -58
  560. onnx/reference/ops/__init__.py +1 -0
  561. onnx/reference/ops/_helpers.py +6 -4
  562. onnx/reference/ops/_op.py +16 -5
  563. onnx/reference/ops/_op_common_indices.py +1 -1
  564. onnx/reference/ops/_op_common_pool.py +38 -29
  565. onnx/reference/ops/_op_common_random.py +1 -1
  566. onnx/reference/ops/_op_common_window.py +2 -2
  567. onnx/reference/ops/_op_list.py +9 -6
  568. onnx/reference/ops/aionnx_preview_training/__init__.py +1 -0
  569. onnx/reference/ops/aionnx_preview_training/_op_list.py +5 -7
  570. onnx/reference/ops/aionnx_preview_training/_op_run_training.py +1 -1
  571. onnx/reference/ops/aionnx_preview_training/op_adagrad.py +14 -5
  572. onnx/reference/ops/aionnx_preview_training/op_adam.py +2 -2
  573. onnx/reference/ops/aionnx_preview_training/op_momentum.py +14 -2
  574. onnx/reference/ops/aionnxml/__init__.py +1 -0
  575. onnx/reference/ops/aionnxml/_common_classifier.py +1 -0
  576. onnx/reference/ops/aionnxml/_op_list.py +5 -6
  577. onnx/reference/ops/aionnxml/_op_run_aionnxml.py +1 -1
  578. onnx/reference/ops/aionnxml/op_array_feature_extractor.py +1 -1
  579. onnx/reference/ops/aionnxml/op_binarizer.py +1 -1
  580. onnx/reference/ops/aionnxml/op_dict_vectorizer.py +2 -2
  581. onnx/reference/ops/aionnxml/op_feature_vectorizer.py +1 -1
  582. onnx/reference/ops/aionnxml/op_imputer.py +3 -3
  583. onnx/reference/ops/aionnxml/op_label_encoder.py +1 -1
  584. onnx/reference/ops/aionnxml/op_linear_classifier.py +2 -2
  585. onnx/reference/ops/aionnxml/op_linear_regressor.py +1 -1
  586. onnx/reference/ops/aionnxml/op_normalizer.py +1 -1
  587. onnx/reference/ops/aionnxml/op_one_hot_encoder.py +1 -1
  588. onnx/reference/ops/aionnxml/op_scaler.py +1 -1
  589. onnx/reference/ops/aionnxml/op_svm_classifier.py +10 -7
  590. onnx/reference/ops/aionnxml/op_svm_helper.py +2 -2
  591. onnx/reference/ops/aionnxml/op_svm_regressor.py +1 -1
  592. onnx/reference/ops/aionnxml/op_tree_ensemble.py +3 -3
  593. onnx/reference/ops/aionnxml/op_tree_ensemble_classifier.py +1 -1
  594. onnx/reference/ops/aionnxml/op_tree_ensemble_helper.py +2 -2
  595. onnx/reference/ops/aionnxml/op_tree_ensemble_regressor.py +5 -3
  596. onnx/reference/ops/experimental/__init__.py +1 -0
  597. onnx/reference/ops/experimental/_op_list.py +6 -12
  598. onnx/reference/ops/experimental/_op_run_experimental.py +1 -1
  599. onnx/reference/ops/experimental/op_im2col.py +1 -1
  600. onnx/reference/ops/op_abs.py +1 -1
  601. onnx/reference/ops/op_acos.py +1 -1
  602. onnx/reference/ops/op_acosh.py +1 -1
  603. onnx/reference/ops/op_add.py +1 -1
  604. onnx/reference/ops/op_affine_grid.py +1 -1
  605. onnx/reference/ops/op_and.py +1 -1
  606. onnx/reference/ops/op_argmax.py +1 -1
  607. onnx/reference/ops/op_argmin.py +1 -1
  608. onnx/reference/ops/op_asin.py +1 -1
  609. onnx/reference/ops/op_asinh.py +1 -1
  610. onnx/reference/ops/op_atan.py +1 -1
  611. onnx/reference/ops/op_atanh.py +1 -1
  612. onnx/reference/ops/op_attribute_has_value.py +15 -15
  613. onnx/reference/ops/op_average_pool.py +1 -1
  614. onnx/reference/ops/op_batch_normalization.py +13 -2
  615. onnx/reference/ops/op_bernoulli.py +1 -1
  616. onnx/reference/ops/op_bitshift.py +1 -1
  617. onnx/reference/ops/op_bitwise_and.py +1 -1
  618. onnx/reference/ops/op_bitwise_not.py +1 -1
  619. onnx/reference/ops/op_bitwise_or.py +1 -1
  620. onnx/reference/ops/op_bitwise_xor.py +1 -1
  621. onnx/reference/ops/op_blackman_window.py +1 -1
  622. onnx/reference/ops/op_cast.py +11 -10
  623. onnx/reference/ops/op_cast_like.py +1 -1
  624. onnx/reference/ops/op_ceil.py +1 -1
  625. onnx/reference/ops/op_celu.py +1 -1
  626. onnx/reference/ops/op_center_crop_pad.py +1 -1
  627. onnx/reference/ops/op_clip.py +1 -1
  628. onnx/reference/ops/op_col2im.py +10 -4
  629. onnx/reference/ops/op_compress.py +1 -1
  630. onnx/reference/ops/op_concat.py +1 -1
  631. onnx/reference/ops/op_concat_from_sequence.py +3 -3
  632. onnx/reference/ops/op_constant.py +2 -2
  633. onnx/reference/ops/op_constant_of_shape.py +1 -1
  634. onnx/reference/ops/op_conv.py +22 -17
  635. onnx/reference/ops/op_conv_integer.py +1 -1
  636. onnx/reference/ops/op_conv_transpose.py +37 -6
  637. onnx/reference/ops/op_cos.py +1 -1
  638. onnx/reference/ops/op_cosh.py +1 -1
  639. onnx/reference/ops/op_cum_sum.py +1 -1
  640. onnx/reference/ops/op_deform_conv.py +1 -1
  641. onnx/reference/ops/op_depth_to_space.py +1 -1
  642. onnx/reference/ops/op_dequantize_linear.py +7 -9
  643. onnx/reference/ops/op_det.py +1 -1
  644. onnx/reference/ops/op_dft.py +16 -2
  645. onnx/reference/ops/op_div.py +1 -1
  646. onnx/reference/ops/op_dropout.py +9 -8
  647. onnx/reference/ops/op_dynamic_quantize_linear.py +1 -1
  648. onnx/reference/ops/op_einsum.py +1 -1
  649. onnx/reference/ops/op_elu.py +1 -1
  650. onnx/reference/ops/op_equal.py +1 -1
  651. onnx/reference/ops/op_erf.py +1 -1
  652. onnx/reference/ops/op_exp.py +1 -1
  653. onnx/reference/ops/op_expand.py +1 -1
  654. onnx/reference/ops/op_eyelike.py +2 -2
  655. onnx/reference/ops/op_flatten.py +1 -1
  656. onnx/reference/ops/op_floor.py +1 -1
  657. onnx/reference/ops/op_gather.py +1 -1
  658. onnx/reference/ops/op_gather_elements.py +3 -3
  659. onnx/reference/ops/op_gathernd.py +2 -4
  660. onnx/reference/ops/op_gemm.py +12 -2
  661. onnx/reference/ops/op_global_average_pool.py +1 -1
  662. onnx/reference/ops/op_global_max_pool.py +1 -1
  663. onnx/reference/ops/op_greater.py +1 -1
  664. onnx/reference/ops/op_greater_or_equal.py +1 -1
  665. onnx/reference/ops/op_grid_sample.py +2 -3
  666. onnx/reference/ops/op_gru.py +7 -7
  667. onnx/reference/ops/op_hamming_window.py +1 -1
  668. onnx/reference/ops/op_hann_window.py +1 -1
  669. onnx/reference/ops/op_hard_sigmoid.py +1 -1
  670. onnx/reference/ops/op_hardmax.py +5 -2
  671. onnx/reference/ops/op_identity.py +3 -3
  672. onnx/reference/ops/op_if.py +2 -2
  673. onnx/reference/ops/op_instance_normalization.py +1 -1
  674. onnx/reference/ops/op_isinf.py +1 -1
  675. onnx/reference/ops/op_isnan.py +1 -1
  676. onnx/reference/ops/op_layer_normalization.py +2 -4
  677. onnx/reference/ops/op_leaky_relu.py +1 -1
  678. onnx/reference/ops/op_less.py +1 -1
  679. onnx/reference/ops/op_less_or_equal.py +1 -1
  680. onnx/reference/ops/op_log.py +1 -1
  681. onnx/reference/ops/op_log_softmax.py +1 -1
  682. onnx/reference/ops/op_loop.py +4 -2
  683. onnx/reference/ops/op_lp_normalization.py +1 -1
  684. onnx/reference/ops/op_lp_pool.py +4 -2
  685. onnx/reference/ops/op_lrn.py +1 -1
  686. onnx/reference/ops/op_lstm.py +9 -11
  687. onnx/reference/ops/op_matmul.py +1 -1
  688. onnx/reference/ops/op_matmul_integer.py +1 -1
  689. onnx/reference/ops/op_max.py +1 -1
  690. onnx/reference/ops/op_max_pool.py +8 -8
  691. onnx/reference/ops/op_max_unpool.py +5 -3
  692. onnx/reference/ops/op_mean.py +1 -1
  693. onnx/reference/ops/op_mel_weight_matrix.py +1 -1
  694. onnx/reference/ops/op_min.py +1 -1
  695. onnx/reference/ops/op_mod.py +1 -1
  696. onnx/reference/ops/op_mul.py +1 -1
  697. onnx/reference/ops/op_neg.py +1 -1
  698. onnx/reference/ops/op_negative_log_likelihood_loss.py +4 -2
  699. onnx/reference/ops/op_non_max_suppression.py +10 -11
  700. onnx/reference/ops/op_non_zero.py +1 -1
  701. onnx/reference/ops/op_not.py +1 -1
  702. onnx/reference/ops/op_one_hot.py +1 -1
  703. onnx/reference/ops/op_optional.py +1 -1
  704. onnx/reference/ops/op_optional_get_element.py +1 -1
  705. onnx/reference/ops/op_optional_has_element.py +1 -1
  706. onnx/reference/ops/op_or.py +1 -1
  707. onnx/reference/ops/op_pad.py +1 -1
  708. onnx/reference/ops/op_pool_common.py +7 -6
  709. onnx/reference/ops/op_pow.py +1 -1
  710. onnx/reference/ops/op_prelu.py +3 -3
  711. onnx/reference/ops/op_qlinear_conv.py +1 -1
  712. onnx/reference/ops/op_qlinear_matmul.py +1 -1
  713. onnx/reference/ops/op_quantize_linear.py +15 -9
  714. onnx/reference/ops/op_random_normal.py +1 -1
  715. onnx/reference/ops/op_random_normal_like.py +1 -1
  716. onnx/reference/ops/op_random_uniform.py +1 -1
  717. onnx/reference/ops/op_random_uniform_like.py +1 -1
  718. onnx/reference/ops/op_range.py +1 -1
  719. onnx/reference/ops/op_reciprocal.py +1 -1
  720. onnx/reference/ops/op_reduce_l1.py +1 -1
  721. onnx/reference/ops/op_reduce_l2.py +1 -1
  722. onnx/reference/ops/op_reduce_log_sum.py +1 -1
  723. onnx/reference/ops/op_reduce_log_sum_exp.py +1 -1
  724. onnx/reference/ops/op_reduce_max.py +1 -1
  725. onnx/reference/ops/op_reduce_mean.py +2 -2
  726. onnx/reference/ops/op_reduce_min.py +1 -1
  727. onnx/reference/ops/op_reduce_prod.py +1 -1
  728. onnx/reference/ops/op_reduce_sum.py +2 -2
  729. onnx/reference/ops/op_reduce_sum_square.py +1 -1
  730. onnx/reference/ops/op_regex_full_match.py +1 -1
  731. onnx/reference/ops/op_relu.py +1 -1
  732. onnx/reference/ops/op_reshape.py +1 -1
  733. onnx/reference/ops/op_reverse_sequence.py +1 -1
  734. onnx/reference/ops/op_rnn.py +10 -8
  735. onnx/reference/ops/op_roi_align.py +5 -5
  736. onnx/reference/ops/op_round.py +1 -1
  737. onnx/reference/ops/op_scan.py +8 -8
  738. onnx/reference/ops/op_scatter_elements.py +19 -50
  739. onnx/reference/ops/op_scatternd.py +1 -1
  740. onnx/reference/ops/op_selu.py +1 -1
  741. onnx/reference/ops/op_sequence_at.py +1 -1
  742. onnx/reference/ops/op_sequence_construct.py +1 -1
  743. onnx/reference/ops/op_sequence_empty.py +2 -2
  744. onnx/reference/ops/op_sequence_erase.py +1 -1
  745. onnx/reference/ops/op_sequence_insert.py +6 -6
  746. onnx/reference/ops/op_sequence_length.py +1 -1
  747. onnx/reference/ops/op_sequence_map.py +1 -1
  748. onnx/reference/ops/op_shape.py +2 -6
  749. onnx/reference/ops/op_shrink.py +1 -1
  750. onnx/reference/ops/op_sigmoid.py +1 -1
  751. onnx/reference/ops/op_sign.py +1 -1
  752. onnx/reference/ops/op_sin.py +1 -1
  753. onnx/reference/ops/op_sinh.py +1 -1
  754. onnx/reference/ops/op_size.py +1 -1
  755. onnx/reference/ops/op_slice.py +3 -5
  756. onnx/reference/ops/op_softmax.py +1 -1
  757. onnx/reference/ops/op_softmax_cross_entropy_loss.py +1 -1
  758. onnx/reference/ops/op_softplus.py +1 -1
  759. onnx/reference/ops/op_softsign.py +1 -1
  760. onnx/reference/ops/op_space_to_depth.py +1 -1
  761. onnx/reference/ops/op_split.py +1 -1
  762. onnx/reference/ops/op_split_to_sequence.py +5 -7
  763. onnx/reference/ops/op_sqrt.py +1 -1
  764. onnx/reference/ops/op_squeeze.py +1 -1
  765. onnx/reference/ops/op_stft.py +3 -2
  766. onnx/reference/ops/op_string_concat.py +1 -1
  767. onnx/reference/ops/op_string_normalizer.py +8 -8
  768. onnx/reference/ops/op_string_split.py +2 -4
  769. onnx/reference/ops/op_sub.py +1 -1
  770. onnx/reference/ops/op_sum.py +1 -1
  771. onnx/reference/ops/op_tan.py +1 -1
  772. onnx/reference/ops/op_tanh.py +1 -1
  773. onnx/reference/ops/op_tfidf_vectorizer.py +11 -12
  774. onnx/reference/ops/op_thresholded_relu.py +1 -1
  775. onnx/reference/ops/op_tile.py +1 -1
  776. onnx/reference/ops/op_topk.py +7 -2
  777. onnx/reference/ops/op_transpose.py +1 -1
  778. onnx/reference/ops/op_trilu.py +1 -1
  779. onnx/reference/ops/op_unique.py +3 -1
  780. onnx/reference/ops/op_unsqueeze.py +2 -2
  781. onnx/reference/ops/op_upsample.py +1 -1
  782. onnx/reference/ops/op_where.py +1 -1
  783. onnx/reference/ops/op_xor.py +1 -1
  784. onnx/reference/ops_optimized/__init__.py +1 -0
  785. onnx/reference/ops_optimized/op_conv_optimized.py +1 -1
  786. onnx/reference/reference_evaluator.py +27 -13
  787. onnx/serialization.py +1 -1
  788. onnx/shape_inference/implementation.cc +15 -1
  789. onnx/shape_inference/implementation.h +15 -1
  790. onnx/shape_inference.py +1 -1
  791. onnx/subbyte.py +6 -6
  792. onnx/test/basic_test.py +1 -0
  793. onnx/test/checker_test.py +37 -2
  794. onnx/test/compose_test.py +12 -11
  795. onnx/test/cpp/schema_registration_test.cc +3 -3
  796. onnx/test/cpp/shape_inference_test.cc +38 -2
  797. onnx/test/elu_test.py +2 -0
  798. onnx/test/function_inference_test.py +2 -0
  799. onnx/test/function_test.py +1 -0
  800. onnx/test/helper_test.py +77 -16
  801. onnx/test/hub_test.py +1 -1
  802. onnx/test/inference_function_test.py +25 -8
  803. onnx/test/inliner_test.py +2 -0
  804. onnx/test/model_container_refeval_test.py +2 -1
  805. onnx/test/model_container_test.py +1 -0
  806. onnx/test/model_inference_test.py +2 -0
  807. onnx/test/numpy_helper_test.py +56 -1
  808. onnx/test/parser_test.py +48 -2
  809. onnx/test/printer_test.py +2 -0
  810. onnx/test/reference_evaluator_ml_test.py +2 -3
  811. onnx/test/reference_evaluator_model_test.py +2 -0
  812. onnx/test/reference_evaluator_test.py +173 -19
  813. onnx/test/relu_test.py +2 -0
  814. onnx/test/schema_test.py +4 -2
  815. onnx/test/serialization_test.py +2 -0
  816. onnx/test/shape_inference_test.py +349 -19
  817. onnx/test/symbolic_shape_test.py +3 -3
  818. onnx/test/test_backend_onnxruntime.py +272 -1
  819. onnx/test/test_backend_reference.py +24 -3
  820. onnx/test/test_backend_test.py +6 -5
  821. onnx/test/test_external_data.py +91 -2
  822. onnx/test/test_with_ort.py +1 -0
  823. onnx/test/tools_test.py +15 -14
  824. onnx/test/training_tool_test.py +1 -0
  825. onnx/test/utils_test.py +1 -0
  826. onnx/test/version_converter/automatic_downgrade_test.py +2 -0
  827. onnx/test/version_converter/automatic_upgrade_test.py +2 -0
  828. onnx/test/version_converter_test.py +26 -7
  829. onnx/test/version_utils.py +8 -0
  830. onnx/tools/net_drawer.py +6 -5
  831. onnx/tools/replace_constants.py +11 -11
  832. onnx/tools/update_model_dims.py +7 -6
  833. onnx/utils.py +41 -21
  834. onnx/version.py +2 -2
  835. onnx/version_converter/adapters/split_17_18.h +1 -1
  836. onnx/version_converter/convert.h +107 -2
  837. onnx/version_converter.py +3 -2
  838. {onnx-1.16.2.dist-info → onnx-1.17.0.dist-info}/METADATA +9 -12
  839. {onnx-1.16.2.dist-info → onnx-1.17.0.dist-info}/RECORD +843 -817
  840. {onnx-1.16.2.dist-info → onnx-1.17.0.dist-info}/WHEEL +1 -1
  841. {onnx-1.16.2.dist-info → onnx-1.17.0.dist-info}/LICENSE +0 -0
  842. {onnx-1.16.2.dist-info → onnx-1.17.0.dist-info}/entry_points.txt +0 -0
  843. {onnx-1.16.2.dist-info → onnx-1.17.0.dist-info}/top_level.txt +0 -0
@@ -185,6 +185,268 @@ if ort is not None:
185
185
  "|test_transpose_"
186
186
  "|test_unsqueeze_"
187
187
  "|test_wrap_pad_"
188
+ "|test_acos_cpu"
189
+ "|test_acos_example_cpu"
190
+ "|test_acosh_cpu"
191
+ "|test_acosh_example_cpu"
192
+ "|test_asin_cpu"
193
+ "|test_asin_example_cpu"
194
+ "|test_asinh_cpu"
195
+ "|test_asinh_example_cpu"
196
+ "|test_atan_cpu"
197
+ "|test_atan_example_cpu"
198
+ "|test_atanh_cpu"
199
+ "|test_atanh_example_cpu"
200
+ "|test_averagepool_1d_default_cpu"
201
+ "|test_averagepool_2d_ceil_cpu"
202
+ "|test_averagepool_2d_default_cpu"
203
+ "|test_averagepool_2d_dilations_cpu"
204
+ "|test_averagepool_2d_pads_count_include_pad_cpu"
205
+ "|test_averagepool_2d_pads_cpu"
206
+ "|test_averagepool_2d_precomputed_pads_count_include_pad_cpu"
207
+ "|test_averagepool_2d_precomputed_pads_cpu"
208
+ "|test_averagepool_2d_precomputed_same_upper_cpu"
209
+ "|test_averagepool_2d_precomputed_strides_cpu"
210
+ "|test_averagepool_2d_same_lower_cpu"
211
+ "|test_averagepool_2d_same_upper_cpu"
212
+ "|test_averagepool_2d_strides_cpu"
213
+ "|test_averagepool_3d_default_cpu"
214
+ "|test_averagepool_3d_dilations_large_count_include_pad_is_0_ceil_mode_is_False_cpu"
215
+ "|test_averagepool_3d_dilations_large_count_include_pad_is_0_ceil_mode_is_True_cpu"
216
+ "|test_averagepool_3d_dilations_large_count_include_pad_is_1_ceil_mode_is_False_cpu"
217
+ "|test_averagepool_3d_dilations_large_count_include_pad_is_1_ceil_mode_is_True_cpu"
218
+ "|test_averagepool_3d_dilations_small_cpu"
219
+ "|test_basic_conv_with_padding_cpu"
220
+ "|test_basic_conv_without_padding_cpu"
221
+ "|test_conv_with_autopad_same_cpu"
222
+ "|test_conv_with_strides_and_asymmetric_padding_cpu"
223
+ "|test_conv_with_strides_no_padding_cpu"
224
+ "|test_conv_with_strides_padding_cpu"
225
+ "|test_convtranspose_1d_cpu"
226
+ "|test_convtranspose_3d_cpu"
227
+ "|test_convtranspose_autopad_same_cpu"
228
+ "|test_convtranspose_cpu"
229
+ "|test_convtranspose_dilations_cpu"
230
+ "|test_convtranspose_kernel_shape_cpu"
231
+ "|test_convtranspose_output_shape_cpu"
232
+ "|test_convtranspose_pad_cpu"
233
+ "|test_convtranspose_pads_cpu"
234
+ "|test_cos_cpu"
235
+ "|test_cos_example_cpu"
236
+ "|test_cosh_cpu"
237
+ "|test_cosh_example_cpu"
238
+ "|test_det_2d_cpu"
239
+ "|test_det_nd_cpu"
240
+ "|test_dropout_default_cpu"
241
+ "|test_dropout_default_mask_cpu"
242
+ "|test_dropout_default_mask_ratio_cpu"
243
+ "|test_dropout_default_ratio_cpu"
244
+ "|test_elu_cpu"
245
+ "|test_elu_default_cpu"
246
+ "|test_elu_example_cpu"
247
+ "|test_eyelike_populate_off_main_diagonal_cpu"
248
+ "|test_eyelike_with_dtype_cpu"
249
+ "|test_eyelike_without_dtype_cpu"
250
+ "|test_globalaveragepool_cpu"
251
+ "|test_globalaveragepool_precomputed_cpu"
252
+ "|test_gridsample_aligncorners_true_cpu"
253
+ "|test_gridsample_bicubic_align_corners_0_additional_1_cpu"
254
+ "|test_gridsample_bicubic_align_corners_1_additional_1_cpu"
255
+ "|test_gridsample_bicubic_cpu"
256
+ "|test_gridsample_bilinear_align_corners_0_additional_1_cpu"
257
+ "|test_gridsample_bilinear_align_corners_1_additional_1_cpu"
258
+ "|test_gridsample_bilinear_cpu"
259
+ "|test_gridsample_border_padding_cpu"
260
+ "|test_gridsample_cpu"
261
+ "|test_gridsample_nearest_align_corners_0_additional_1_cpu"
262
+ "|test_gridsample_nearest_align_corners_1_additional_1_cpu"
263
+ "|test_gridsample_nearest_cpu"
264
+ "|test_gridsample_reflection_padding_cpu"
265
+ "|test_gridsample_volumetric_bilinear_align_corners_0_cpu"
266
+ "|test_gridsample_volumetric_bilinear_align_corners_1_cpu"
267
+ "|test_gridsample_volumetric_nearest_align_corners_0_cpu"
268
+ "|test_gridsample_volumetric_nearest_align_corners_1_cpu"
269
+ "|test_gridsample_zeros_padding_cpu"
270
+ "|test_gru_defaults_cpu"
271
+ "|test_gru_seq_length_cpu"
272
+ "|test_gru_with_initial_bias_cpu"
273
+ "|test_hardsigmoid_cpu"
274
+ "|test_hardsigmoid_default_cpu"
275
+ "|test_hardsigmoid_example_cpu"
276
+ "|test_hardswish_cpu"
277
+ "|test_hardswish_expanded_cpu"
278
+ "|test_lppool_1d_default_cpu"
279
+ "|test_lppool_2d_default_cpu"
280
+ "|test_lppool_2d_dilations_cpu"
281
+ "|test_lppool_2d_pads_cpu"
282
+ "|test_lppool_2d_same_lower_cpu"
283
+ "|test_lppool_2d_same_upper_cpu"
284
+ "|test_lppool_2d_strides_cpu"
285
+ "|test_lppool_3d_default_cpu"
286
+ "|test_lstm_defaults_cpu"
287
+ "|test_lstm_with_initial_bias_cpu"
288
+ "|test_lstm_with_peepholes_cpu"
289
+ "|test_maxpool_1d_default_cpu"
290
+ "|test_maxpool_2d_ceil_cpu"
291
+ "|test_maxpool_2d_default_cpu"
292
+ "|test_maxpool_2d_dilations_cpu"
293
+ "|test_maxpool_2d_pads_cpu"
294
+ "|test_maxpool_2d_precomputed_pads_cpu"
295
+ "|test_maxpool_2d_precomputed_same_upper_cpu"
296
+ "|test_maxpool_2d_precomputed_strides_cpu"
297
+ "|test_maxpool_2d_same_lower_cpu"
298
+ "|test_maxpool_2d_same_upper_cpu"
299
+ "|test_maxpool_2d_strides_cpu"
300
+ "|test_maxpool_2d_uint8_cpu"
301
+ "|test_maxpool_3d_default_cpu"
302
+ "|test_maxpool_3d_dilations_cpu"
303
+ "|test_maxpool_3d_dilations_use_ref_impl_cpu"
304
+ "|test_maxpool_3d_dilations_use_ref_impl_large_cpu"
305
+ "|test_maxpool_with_argmax_2d_precomputed_pads_cpu"
306
+ "|test_maxpool_with_argmax_2d_precomputed_strides_cpu"
307
+ "|test_maxunpool_export_without_output_shape_cpu"
308
+ "|test_mish_cpu"
309
+ "|test_mish_expanded_cpu"
310
+ "|test_nllloss_NC_cpu"
311
+ "|test_nllloss_NC_expanded_cpu"
312
+ "|test_nllloss_NCd1_cpu"
313
+ "|test_nllloss_NCd1_expanded_cpu"
314
+ "|test_nllloss_NCd1_ii_cpu"
315
+ "|test_nllloss_NCd1_ii_expanded_cpu"
316
+ "|test_nllloss_NCd1_mean_weight_negative_ii_cpu"
317
+ "|test_nllloss_NCd1_mean_weight_negative_ii_expanded_cpu"
318
+ "|test_nllloss_NCd1_weight_cpu"
319
+ "|test_nllloss_NCd1_weight_expanded_cpu"
320
+ "|test_nllloss_NCd1_weight_ii_cpu"
321
+ "|test_nllloss_NCd1_weight_ii_expanded_cpu"
322
+ "|test_nllloss_NCd1d2_cpu"
323
+ "|test_nllloss_NCd1d2_expanded_cpu"
324
+ "|test_nllloss_NCd1d2_no_weight_reduction_mean_ii_cpu"
325
+ "|test_nllloss_NCd1d2_no_weight_reduction_mean_ii_expanded_cpu"
326
+ "|test_nllloss_NCd1d2_reduction_mean_cpu"
327
+ "|test_nllloss_NCd1d2_reduction_mean_expanded_cpu"
328
+ "|test_nllloss_NCd1d2_reduction_sum_cpu"
329
+ "|test_nllloss_NCd1d2_reduction_sum_expanded_cpu"
330
+ "|test_nllloss_NCd1d2_with_weight_cpu"
331
+ "|test_nllloss_NCd1d2_with_weight_expanded_cpu"
332
+ "|test_nllloss_NCd1d2_with_weight_reduction_mean_cpu"
333
+ "|test_nllloss_NCd1d2_with_weight_reduction_mean_expanded_cpu"
334
+ "|test_nllloss_NCd1d2_with_weight_reduction_sum_cpu"
335
+ "|test_nllloss_NCd1d2_with_weight_reduction_sum_expanded_cpu"
336
+ "|test_nllloss_NCd1d2_with_weight_reduction_sum_ii_cpu"
337
+ "|test_nllloss_NCd1d2_with_weight_reduction_sum_ii_expanded_cpu"
338
+ "|test_nllloss_NCd1d2d3_none_no_weight_negative_ii_cpu"
339
+ "|test_nllloss_NCd1d2d3_none_no_weight_negative_ii_expanded_cpu"
340
+ "|test_nllloss_NCd1d2d3_sum_weight_high_ii_cpu"
341
+ "|test_nllloss_NCd1d2d3_sum_weight_high_ii_expanded_cpu"
342
+ "|test_nllloss_NCd1d2d3d4d5_mean_weight_cpu"
343
+ "|test_nllloss_NCd1d2d3d4d5_mean_weight_expanded_cpu"
344
+ "|test_nllloss_NCd1d2d3d4d5_none_no_weight_cpu"
345
+ "|test_nllloss_NCd1d2d3d4d5_none_no_weight_expanded_cpu"
346
+ "|test_rnn_seq_length_cpu"
347
+ "|test_roialign_aligned_false_cpu"
348
+ "|test_roialign_aligned_true_cpu"
349
+ "|test_roialign_mode_max_cpu"
350
+ "|test_round_cpu"
351
+ "|test_selu_cpu"
352
+ "|test_selu_default_cpu"
353
+ "|test_selu_example_cpu"
354
+ "|test_simple_rnn_defaults_cpu"
355
+ "|test_simple_rnn_with_initial_bias_cpu"
356
+ "|test_sin_cpu"
357
+ "|test_sin_example_cpu"
358
+ "|test_sinh_cpu"
359
+ "|test_sinh_example_cpu"
360
+ "|test_softplus_cpu"
361
+ "|test_softplus_example_cpu"
362
+ "|test_softsign_cpu"
363
+ "|test_softsign_example_cpu"
364
+ "|test_tan_cpu"
365
+ "|test_tan_example_cpu"
366
+ "|test_thresholdedrelu_cpu"
367
+ "|test_thresholdedrelu_default_cpu"
368
+ "|test_thresholdedrelu_example_cpu"
369
+ "|test_resize_downsample_scales_cubic_A_n0p5_exclude_outside_cpu"
370
+ "|test_resize_downsample_scales_cubic_antialias_cpu"
371
+ "|test_resize_downsample_scales_cubic_cpu"
372
+ "|test_resize_downsample_scales_linear_antialias_cpu"
373
+ "|test_resize_downsample_scales_linear_cpu"
374
+ "|test_resize_downsample_scales_linear_half_pixel_symmetric_cpu"
375
+ "|test_resize_downsample_scales_nearest_cpu"
376
+ "|test_resize_downsample_sizes_cubic_antialias_cpu"
377
+ "|test_resize_downsample_sizes_cubic_cpu"
378
+ "|test_resize_downsample_sizes_linear_antialias_cpu"
379
+ "|test_resize_downsample_sizes_linear_pytorch_half_pixel_cpu"
380
+ "|test_resize_downsample_sizes_nearest_cpu"
381
+ "|test_resize_downsample_sizes_nearest_not_larger_cpu"
382
+ "|test_resize_downsample_sizes_nearest_not_smaller_cpu"
383
+ "|test_resize_tf_crop_and_resize_axes_2_3_cpu"
384
+ "|test_resize_tf_crop_and_resize_axes_3_2_cpu"
385
+ "|test_resize_tf_crop_and_resize_cpu"
386
+ "|test_resize_upsample_scales_cubic_A_n0p5_exclude_outside_cpu"
387
+ "|test_resize_upsample_scales_cubic_align_corners_cpu"
388
+ "|test_resize_upsample_scales_cubic_asymmetric_cpu"
389
+ "|test_resize_upsample_scales_cubic_cpu"
390
+ "|test_resize_upsample_scales_linear_align_corners_cpu"
391
+ "|test_resize_upsample_scales_linear_cpu"
392
+ "|test_resize_upsample_scales_linear_half_pixel_symmetric_cpu"
393
+ "|test_resize_upsample_scales_nearest_axes_2_3_cpu"
394
+ "|test_resize_upsample_scales_nearest_axes_3_2_cpu"
395
+ "|test_resize_upsample_scales_nearest_cpu"
396
+ "|test_resize_upsample_sizes_cubic_cpu"
397
+ "|test_resize_upsample_sizes_nearest_axes_2_3_cpu"
398
+ "|test_resize_upsample_sizes_nearest_axes_3_2_cpu"
399
+ "|test_resize_upsample_sizes_nearest_ceil_half_pixel_cpu"
400
+ "|test_resize_upsample_sizes_nearest_cpu"
401
+ "|test_resize_upsample_sizes_nearest_floor_align_corners_cpu"
402
+ "|test_resize_upsample_sizes_nearest_not_larger_cpu"
403
+ "|test_resize_upsample_sizes_nearest_round_prefer_ceil_asymmetric_cpu"
404
+ "|test_qlinearmatmul_2D_uint8_float32_cuda"
405
+ "|test_qlinearmatmul_2D_int8_float32_cpu"
406
+ "|test_image_decoder_decode_jpeg_rgb_cpu"
407
+ "|test_basic_deform_conv_without_padding_cuda"
408
+ "|test_qlinearmatmul_3D_int8_float16_cuda"
409
+ "|test_image_decoder_decode_bmp_rgb_cuda"
410
+ "|test_qlinearmatmul_2D_uint8_float16_cpu"
411
+ "|test_image_decoder_decode_jpeg2k_rgb_cuda"
412
+ "|test_image_decoder_decode_jpeg_bgr_cuda"
413
+ "|test_qlinearmatmul_3D_uint8_float32_cpu"
414
+ "|test_qlinearmatmul_3D_uint8_float16_cuda"
415
+ "|test_deform_conv_with_mask_bias_cpu"
416
+ "|test_qlinearmatmul_2D_int8_float16_cuda"
417
+ "|test_image_decoder_decode_jpeg_grayscale_cpu"
418
+ "|test_basic_deform_conv_without_padding_cpu"
419
+ "|test_qlinearmatmul_3D_int8_float32_cuda"
420
+ "|test_qlinearmatmul_3D_int8_float16_cpu"
421
+ "|test_qlinearmatmul_2D_int8_float32_cuda"
422
+ "|test_deform_conv_with_mask_bias_cuda"
423
+ "|test_image_decoder_decode_tiff_rgb_cuda"
424
+ "|test_image_decoder_decode_jpeg2k_rgb_cpu"
425
+ "|test_image_decoder_decode_jpeg_rgb_cuda"
426
+ "|test_image_decoder_decode_jpeg_grayscale_cuda"
427
+ "|test_qlinearmatmul_3D_uint8_float32_cuda"
428
+ "|test_image_decoder_decode_png_rgb_cpu"
429
+ "|test_image_decoder_decode_png_rgb_cuda"
430
+ "|test_image_decoder_decode_bmp_rgb_cpu"
431
+ "|test_qlinearmatmul_3D_uint8_float16_cpu"
432
+ "|test_deform_conv_with_multiple_offset_groups_cuda"
433
+ "|test_image_decoder_decode_webp_rgb_cpu"
434
+ "|test_basic_deform_conv_with_padding_cpu"
435
+ "|test_qlinearmatmul_2D_uint8_float16_cuda"
436
+ "|test_image_decoder_decode_webp_rgb_cuda"
437
+ "|test_basic_deform_conv_with_padding_cuda"
438
+ "|test_image_decoder_decode_pnm_rgb_cpu"
439
+ "|test_qlinearmatmul_3D_int8_float32_cpu"
440
+ "|test_image_decoder_decode_jpeg_bgr_cpu"
441
+ "|test_qlinearmatmul_2D_int8_float16_cpu"
442
+ "|test_image_decoder_decode_pnm_rgb_cuda"
443
+ "|test_deform_conv_with_multiple_offset_groups_cpu"
444
+ "|test_qlinearmatmul_2D_uint8_float32_cpu"
445
+ "|test_image_decoder_decode_tiff_rgb_cpu"
446
+ "|test_globalmaxpool_cpu"
447
+ "|test_globalmaxpool_precomputed_cpu"
448
+ "|test_instancenorm_example_cpu"
449
+ "|test_instancenorm_epsilon_cpu"
188
450
  ")"
189
451
  )
190
452
 
@@ -305,7 +567,6 @@ if ort is not None:
305
567
  backend_test.exclude(
306
568
  "("
307
569
  "deform_conv" # deform_conv is not supported in onnxruntime
308
- "|dft" # Max absolute difference > atol=1e-07. shall be able to set atol (https://github.com/onnx/onnx/issues/5897)
309
570
  "|group_normalization" # new/updated test cases with opset and/or IR version not supported by onnxruntime 1.17
310
571
  "|identity_opt" # fixed in ort 1.18 (https://github.com/microsoft/onnxruntime/pull/19273)
311
572
  "|image_decoder" # image_decoder is not supported in onnxruntime
@@ -320,6 +581,16 @@ if ort is not None:
320
581
  ")"
321
582
  )
322
583
 
584
+ if ort_version is not None and ort_version < Version("1.20"):
585
+ backend_test.exclude(
586
+ "("
587
+ "tree_ensemble_set_membership"
588
+ "|tree_ensemble_single_tree"
589
+ "|convtranspose_group_2"
590
+ "|dft"
591
+ ")"
592
+ )
593
+
323
594
  # Import all test cases at global scope to make them visible to python.unittest
324
595
  globals().update(backend_test.test_cases)
325
596
 
@@ -1,6 +1,7 @@
1
1
  # Copyright (c) ONNX Project Contributors
2
2
 
3
3
  # SPDX-License-Identifier: Apache-2.0
4
+ from __future__ import annotations
4
5
 
5
6
  import os
6
7
  import platform
@@ -26,7 +27,7 @@ class ReferenceEvaluatorBackendRep(onnx.backend.base.BackendRep):
26
27
  def __init__(self, session):
27
28
  self._session = session
28
29
 
29
- def run(self, inputs, **kwargs):
30
+ def run(self, inputs, **kwargs): # noqa: ARG002
30
31
  if isinstance(inputs, numpy.ndarray):
31
32
  inputs = [inputs]
32
33
  if isinstance(inputs, list):
@@ -54,7 +55,7 @@ class ReferenceEvaluatorBackendRep(onnx.backend.base.BackendRep):
54
55
 
55
56
  class ReferenceEvaluatorBackend(onnx.backend.base.Backend):
56
57
  @classmethod
57
- def is_opset_supported(cls, model):
58
+ def is_opset_supported(cls, model): # noqa: ARG003
58
59
  return True, ""
59
60
 
60
61
  @classmethod
@@ -89,7 +90,19 @@ class ReferenceEvaluatorBackend(onnx.backend.base.Backend):
89
90
  raise NotImplementedError("Unable to run the model node by node.")
90
91
 
91
92
 
92
- backend_test = onnx.backend.test.BackendTest(ReferenceEvaluatorBackend, __name__)
93
+ dft_atol = 1e-3 if sys.platform != "linux" else 1e-6
94
+ backend_test = onnx.backend.test.BackendTest(
95
+ ReferenceEvaluatorBackend,
96
+ __name__,
97
+ test_kwargs={
98
+ "test_dft": {"atol": dft_atol},
99
+ "test_dft_axis": {"atol": dft_atol},
100
+ "test_dft_axis_opset19": {"atol": dft_atol},
101
+ "test_dft_inverse": {"atol": dft_atol},
102
+ "test_dft_inverse_opset19": {"atol": dft_atol},
103
+ "test_dft_opset19": {"atol": dft_atol},
104
+ },
105
+ )
93
106
 
94
107
  if os.getenv("APPVEYOR"):
95
108
  backend_test.exclude("(test_vgg19|test_zfnet)")
@@ -187,6 +200,10 @@ if sys.platform == "win32":
187
200
  backend_test.exclude("test_regex_full_match_empty_cpu")
188
201
  backend_test.exclude("test_image_decoder_decode_")
189
202
 
203
+ if sys.version_info <= (3, 10):
204
+ # AttributeError: module 'numpy.typing' has no attribute 'NDArray'
205
+ backend_test.exclude("test_image_decoder_decode_")
206
+
190
207
  if sys.platform == "darwin":
191
208
  # FIXME: https://github.com/onnx/onnx/issues/5792
192
209
  backend_test.exclude("test_qlinearmatmul_3D_int8_float16_cpu")
@@ -204,6 +221,10 @@ if version_utils.numpy_older_than("1.21.5"):
204
221
  backend_test.exclude("test_dft_axis_opset19")
205
222
  backend_test.exclude("test_dft_inverse_opset19")
206
223
 
224
+ if version_utils.pillow_older_than("10.0"):
225
+ backend_test.exclude("test_image_decoder_decode_webp_rgb")
226
+ backend_test.exclude("test_image_decoder_decode_jpeg2k_rgb")
227
+
207
228
  # import all test cases at global scope to make them visible to python.unittest
208
229
  globals().update(backend_test.test_cases)
209
230
 
@@ -1,12 +1,13 @@
1
1
  # Copyright (c) ONNX Project Contributors
2
2
 
3
3
  # SPDX-License-Identifier: Apache-2.0
4
+ from __future__ import annotations
4
5
 
5
6
  import itertools
6
7
  import os
7
8
  import platform
8
9
  import unittest
9
- from typing import Any, Optional, Sequence, Tuple
10
+ from typing import Any, Sequence
10
11
 
11
12
  import numpy
12
13
 
@@ -34,7 +35,7 @@ class DummyBackend(onnx.backend.base.Backend):
34
35
  @classmethod
35
36
  def prepare(
36
37
  cls, model: ModelProto, device: str = "CPU", **kwargs: Any
37
- ) -> Optional[onnx.backend.base.BackendRep]:
38
+ ) -> onnx.backend.base.BackendRep | None:
38
39
  super().prepare(model, device, **kwargs)
39
40
 
40
41
  onnx.checker.check_model(model)
@@ -69,9 +70,9 @@ class DummyBackend(onnx.backend.base.Backend):
69
70
  node: NodeProto,
70
71
  inputs: Any,
71
72
  device: str = "CPU",
72
- outputs_info: Optional[Sequence[Tuple[numpy.dtype, Tuple[int, ...]]]] = None,
73
- **kwargs: Any,
74
- ) -> Optional[Tuple[Any, ...]]:
73
+ outputs_info: Sequence[tuple[numpy.dtype, tuple[int, ...]]] | None = None,
74
+ **kwargs: Any, # noqa: ARG003
75
+ ) -> tuple[Any, ...] | None:
75
76
  super().run_node(node, inputs, device=device, outputs_info=outputs_info)
76
77
  raise BackendIsNotSupposedToImplementIt(
77
78
  "This is the dummy backend test that doesn't verify the results but does run the checker"
@@ -9,13 +9,21 @@ import pathlib
9
9
  import tempfile
10
10
  import unittest
11
11
  import uuid
12
- from typing import Any
12
+ from typing import Any, Sequence
13
13
 
14
14
  import numpy as np
15
15
  import parameterized
16
16
 
17
17
  import onnx
18
- from onnx import ModelProto, TensorProto, checker, helper, shape_inference
18
+ from onnx import (
19
+ ModelProto,
20
+ NodeProto,
21
+ TensorProto,
22
+ checker,
23
+ helper,
24
+ parser,
25
+ shape_inference,
26
+ )
19
27
  from onnx.external_data_helper import (
20
28
  convert_model_from_external_data,
21
29
  convert_model_to_external_data,
@@ -794,5 +802,86 @@ class TestExternalDataToArrayWithPath(TestExternalDataToArray):
794
802
  return pathlib.Path(self._model_file_path)
795
803
 
796
804
 
805
+ class TestFunctionsAndSubGraphs(unittest.TestCase):
806
+ def setUp(self) -> None:
807
+ self._temp_dir_obj = tempfile.TemporaryDirectory()
808
+ temp_dir = self._temp_dir_obj.name
809
+ self._model_file_path: str = os.path.join(temp_dir, "model.onnx")
810
+ array = np.arange(4096).astype(np.float32)
811
+ self._tensor = from_array(array, "tensor")
812
+
813
+ def tearDown(self) -> None:
814
+ self._temp_dir_obj.cleanup()
815
+
816
+ def _check_is_internal(self, tensor: TensorProto) -> None:
817
+ self.assertEqual(tensor.data_location, TensorProto.DEFAULT)
818
+
819
+ def _check_is_external(self, tensor: TensorProto) -> None:
820
+ self.assertEqual(tensor.data_location, TensorProto.EXTERNAL)
821
+
822
+ def _check(self, model: ModelProto, nodes: Sequence[NodeProto]) -> None:
823
+ """Check that the tensors in the model are externalized.
824
+
825
+ The tensors in the specified sequence of Constant nodes are set to self._tensor,
826
+ an internal tensor. The model is then converted to external data format.
827
+ The tensors are then checked to ensure that they are externalized.
828
+
829
+ Arguments:
830
+ model: The model to check.
831
+ nodes: A sequence of Constant nodes.
832
+
833
+ """
834
+ for node in nodes:
835
+ self.assertEqual(node.op_type, "Constant")
836
+ tensor = node.attribute[0].t
837
+ tensor.CopyFrom(self._tensor)
838
+ self._check_is_internal(tensor)
839
+
840
+ convert_model_to_external_data(model, size_threshold=0, convert_attribute=True)
841
+
842
+ for node in nodes:
843
+ tensor = node.attribute[0].t
844
+ self._check_is_external(tensor)
845
+
846
+ def test_function(self) -> None:
847
+ model_text = """
848
+ <ir_version: 7, opset_import: ["": 15, "local": 1]>
849
+ agraph (float[N] X) => (float[N] Y)
850
+ {
851
+ Y = local.add(X)
852
+ }
853
+
854
+ <opset_import: ["" : 15], domain: "local">
855
+ add (float[N] X) => (float[N] Y) {
856
+ C = Constant <value = float[1] {1.0}> ()
857
+ Y = Add (X, C)
858
+ }
859
+ """
860
+ model = parser.parse_model(model_text)
861
+ self._check(model, [model.functions[0].node[0]])
862
+
863
+ def test_subgraph(self) -> None:
864
+ model_text = """
865
+ <ir_version: 7, opset_import: ["": 15, "local": 1]>
866
+ agraph (bool flag, float[N] X) => (float[N] Y)
867
+ {
868
+ Y = if (flag) <
869
+ then_branch = g1 () => (float[N] Y_then) {
870
+ B = Constant <value = float[1] {0.0}> ()
871
+ Y_then = Add (X, C)
872
+ },
873
+ else_branch = g2 () => (float[N] Y_else) {
874
+ C = Constant <value = float[1] {1.0}> ()
875
+ Y_else = Add (X, C)
876
+ }
877
+ >
878
+ }
879
+ """
880
+ model = parser.parse_model(model_text)
881
+ if_node = model.graph.node[0]
882
+ constant_nodes = [attr.g.node[0] for attr in if_node.attribute]
883
+ self._check(model, constant_nodes)
884
+
885
+
797
886
  if __name__ == "__main__":
798
887
  unittest.main()
@@ -3,6 +3,7 @@
3
3
  # SPDX-License-Identifier: Apache-2.0
4
4
  # This file is for testing ONNX with ONNX Runtime
5
5
  # Create a general scenario to use ONNX Runtime with ONNX
6
+ from __future__ import annotations
6
7
 
7
8
  import unittest
8
9
 
onnx/test/tools_test.py CHANGED
@@ -1,6 +1,7 @@
1
1
  # Copyright (c) ONNX Project Contributors
2
2
 
3
3
  # SPDX-License-Identifier: Apache-2.0
4
+ from __future__ import annotations
4
5
 
5
6
  import unittest
6
7
 
@@ -74,14 +75,14 @@ class TestToolsFunctions(unittest.TestCase):
74
75
 
75
76
  x = np.array([1, 2, 4, 5, 5, 4]).astype(np.float32).reshape((3, 2))
76
77
  oinf1 = ReferenceEvaluator(model_def)
77
- y1 = oinf1.run(None, {"X": x})[0]
78
+ y1 = oinf1.run(None, {"X": x})[0] # type: ignore[index]
78
79
  repl = replace_initializer_by_constant_of_shape(model_def)
79
80
  node_types = {n.op_type for n in repl.graph.node}
80
81
  self.assertIn("ConstantOfShape", node_types)
81
82
  oinf2 = ReferenceEvaluator(repl)
82
83
  y1[:, :] = 3.5
83
84
  y1[0, :] = 0.5
84
- y2 = oinf2.run(None, {"X": x})[0]
85
+ y2 = oinf2.run(None, {"X": x})[0] # type: ignore[index]
85
86
  assert_allclose(y1, y2)
86
87
 
87
88
  def test_replace_constant(self):
@@ -101,14 +102,14 @@ class TestToolsFunctions(unittest.TestCase):
101
102
 
102
103
  x = np.array([1, 2, 4, 5, 5, 4]).astype(np.float32).reshape((3, 2))
103
104
  oinf1 = ReferenceEvaluator(model_def)
104
- y1 = oinf1.run(None, {"X": x})[0]
105
+ y1 = oinf1.run(None, {"X": x})[0] # type: ignore[index]
105
106
  repl = replace_initializer_by_constant_of_shape(model_def)
106
107
  node_types = {n.op_type for n in repl.graph.node}
107
108
  self.assertIn("ConstantOfShape", node_types)
108
109
  oinf2 = ReferenceEvaluator(repl)
109
110
  y1[:, :] = 3.5
110
111
  y1[0, :] = 0.5
111
- y2 = oinf2.run(None, {"X": x})[0]
112
+ y2 = oinf2.run(None, {"X": x})[0] # type: ignore[index]
112
113
  assert_allclose(y1, y2)
113
114
 
114
115
  def test_replace_range(self):
@@ -128,13 +129,13 @@ class TestToolsFunctions(unittest.TestCase):
128
129
 
129
130
  x = np.array([1, 2, 4, 5, 5, 4]).astype(np.float32).reshape((3, 2))
130
131
  oinf1 = ReferenceEvaluator(model_def)
131
- y1 = oinf1.run(None, {"X": x})[0]
132
+ y1 = oinf1.run(None, {"X": x})[0] # type: ignore[index]
132
133
  repl = replace_initializer_by_constant_of_shape(model_def, use_range=True)
133
134
  node_types = {n.op_type for n in repl.graph.node}
134
135
  self.assertIn("Range", node_types)
135
136
  self.assertNotIn("ConstantOfShape", node_types)
136
137
  oinf2 = ReferenceEvaluator(repl)
137
- y2 = oinf2.run(None, {"X": x})[0]
138
+ y2 = oinf2.run(None, {"X": x})[0] # type: ignore[index]
138
139
  assert_allclose(y1.shape, y2.shape)
139
140
 
140
141
  def test_replace_constant_function(self):
@@ -171,14 +172,14 @@ class TestToolsFunctions(unittest.TestCase):
171
172
 
172
173
  x = np.array([1, 2, 4, 5, 5, 4]).astype(np.float32).reshape((3, 2))
173
174
  oinf1 = ReferenceEvaluator(model_def)
174
- y1 = oinf1.run(None, {"X": x})[0]
175
+ y1 = oinf1.run(None, {"X": x})[0] # type: ignore[index]
175
176
  repl = replace_initializer_by_constant_of_shape(model_def)
176
177
  node_types = {n.op_type for n in repl.functions[0].node}
177
178
  self.assertIn("ConstantOfShape", node_types)
178
179
  oinf2 = ReferenceEvaluator(repl)
179
180
  y1[:, :] = 3.5
180
181
  y1[0, :] = 0.5
181
- y2 = oinf2.run(None, {"X": x})[0]
182
+ y2 = oinf2.run(None, {"X": x})[0] # type: ignore[index]
182
183
  assert_allclose(y1, y2)
183
184
 
184
185
  def test_replace_range_function(self):
@@ -215,13 +216,13 @@ class TestToolsFunctions(unittest.TestCase):
215
216
 
216
217
  x = np.array([1, 2, 4, 5, 5, 4]).astype(np.float32).reshape((3, 2))
217
218
  oinf1 = ReferenceEvaluator(model_def)
218
- y1 = oinf1.run(None, {"X": x})[0]
219
+ y1 = oinf1.run(None, {"X": x})[0] # type: ignore[index]
219
220
  repl = replace_initializer_by_constant_of_shape(model_def, use_range=True)
220
221
  node_types = {n.op_type for n in repl.functions[0].node}
221
222
  self.assertIn("Range", node_types)
222
223
  self.assertNotIn("ConstantOfShape", node_types)
223
224
  oinf2 = ReferenceEvaluator(repl)
224
- y2 = oinf2.run(None, {"X": x})[0]
225
+ y2 = oinf2.run(None, {"X": x})[0] # type: ignore[index]
225
226
  assert_allclose(y1.shape, y2.shape)
226
227
 
227
228
  def test_replace_constant_graph(self):
@@ -264,11 +265,11 @@ class TestToolsFunctions(unittest.TestCase):
264
265
 
265
266
  x = np.ones((3, 2), dtype=np.float32)
266
267
  oinf1 = ReferenceEvaluator(onnx_model)
267
- y1 = oinf1.run(None, {"X": x})[0]
268
+ y1 = oinf1.run(None, {"X": x})[0] # type: ignore[index]
268
269
  repl = replace_initializer_by_constant_of_shape(onnx_model)
269
270
  self.assertIn("ConstantOfShape", str(repl))
270
271
  oinf2 = ReferenceEvaluator(repl)
271
- y2 = oinf2.run(None, {"X": x})[0]
272
+ y2 = oinf2.run(None, {"X": x})[0] # type: ignore[index]
272
273
  y1 = y1.copy()
273
274
  y1[:] = 0.5
274
275
  assert_allclose(y1, y2)
@@ -313,12 +314,12 @@ class TestToolsFunctions(unittest.TestCase):
313
314
 
314
315
  x = np.ones((3, 2), dtype=np.float32)
315
316
  oinf1 = ReferenceEvaluator(onnx_model)
316
- y1 = oinf1.run(None, {"X": x})[0]
317
+ y1 = oinf1.run(None, {"X": x})[0] # type: ignore[index]
317
318
  repl = replace_initializer_by_constant_of_shape(onnx_model, use_range=True)
318
319
  self.assertNotIn("ConstantOfShape", str(repl))
319
320
  self.assertIn("Range", str(repl))
320
321
  oinf2 = ReferenceEvaluator(repl)
321
- y2 = oinf2.run(None, {"X": x})[0]
322
+ y2 = oinf2.run(None, {"X": x})[0] # type: ignore[index]
322
323
  assert_allclose(y1.shape, y2.shape)
323
324
 
324
325
 
@@ -1,6 +1,7 @@
1
1
  # Copyright (c) ONNX Project Contributors
2
2
 
3
3
  # SPDX-License-Identifier: Apache-2.0
4
+ from __future__ import annotations
4
5
 
5
6
  import unittest
6
7
 
onnx/test/utils_test.py CHANGED
@@ -1,6 +1,7 @@
1
1
  # Copyright (c) ONNX Project Contributors
2
2
 
3
3
  # SPDX-License-Identifier: Apache-2.0
4
+ from __future__ import annotations
4
5
 
5
6
  import os
6
7
  import shutil
@@ -1,6 +1,8 @@
1
1
  # Copyright (c) ONNX Project Contributors
2
2
 
3
3
  # SPDX-License-Identifier: Apache-2.0
4
+ from __future__ import annotations
5
+
4
6
  import unittest
5
7
 
6
8
  import automatic_conversion_test_base
@@ -1,6 +1,8 @@
1
1
  # Copyright (c) ONNX Project Contributors
2
2
 
3
3
  # SPDX-License-Identifier: Apache-2.0
4
+ from __future__ import annotations
5
+
4
6
  import unittest
5
7
 
6
8
  import automatic_conversion_test_base