onnx-diagnostic 0.6.0__py3-none-any.whl → 0.6.1__py3-none-any.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.
Files changed (38) hide show
  1. onnx_diagnostic/__init__.py +1 -1
  2. onnx_diagnostic/_command_lines_parser.py +18 -0
  3. onnx_diagnostic/api.py +15 -0
  4. onnx_diagnostic/ext_test_case.py +3 -1
  5. onnx_diagnostic/helpers/args_helper.py +1 -1
  6. onnx_diagnostic/helpers/helper.py +6 -5
  7. onnx_diagnostic/helpers/model_builder_helper.py +24 -8
  8. onnx_diagnostic/helpers/rt_helper.py +5 -1
  9. onnx_diagnostic/helpers/torch_helper.py +2 -0
  10. onnx_diagnostic/reference/__init__.py +1 -0
  11. onnx_diagnostic/reference/torch_evaluator.py +518 -0
  12. onnx_diagnostic/reference/torch_ops/__init__.py +55 -0
  13. onnx_diagnostic/reference/torch_ops/_op_run.py +326 -0
  14. onnx_diagnostic/reference/torch_ops/access_ops.py +84 -0
  15. onnx_diagnostic/reference/torch_ops/binary_ops.py +108 -0
  16. onnx_diagnostic/reference/torch_ops/controlflow_ops.py +118 -0
  17. onnx_diagnostic/reference/torch_ops/generator_ops.py +35 -0
  18. onnx_diagnostic/reference/torch_ops/nn_ops.py +176 -0
  19. onnx_diagnostic/reference/torch_ops/other_ops.py +106 -0
  20. onnx_diagnostic/reference/torch_ops/reduce_ops.py +130 -0
  21. onnx_diagnostic/reference/torch_ops/sequence_ops.py +65 -0
  22. onnx_diagnostic/reference/torch_ops/shape_ops.py +120 -0
  23. onnx_diagnostic/reference/torch_ops/unary_ops.py +86 -0
  24. onnx_diagnostic/tasks/__init__.py +22 -1
  25. onnx_diagnostic/tasks/image_classification.py +2 -2
  26. onnx_diagnostic/tasks/text_generation.py +3 -3
  27. onnx_diagnostic/torch_export_patches/eval/__init__.py +106 -37
  28. onnx_diagnostic/torch_export_patches/eval/model_cases.py +12 -25
  29. onnx_diagnostic/torch_export_patches/patch_module_helper.py +130 -16
  30. onnx_diagnostic/torch_export_patches/patches/patch_transformers.py +88 -0
  31. onnx_diagnostic/torch_models/hghub/hub_data_cached_configs.py +142 -0
  32. onnx_diagnostic/torch_models/test_helper.py +115 -15
  33. onnx_diagnostic/torch_onnx/runtime_info.py +289 -0
  34. {onnx_diagnostic-0.6.0.dist-info → onnx_diagnostic-0.6.1.dist-info}/METADATA +1 -1
  35. {onnx_diagnostic-0.6.0.dist-info → onnx_diagnostic-0.6.1.dist-info}/RECORD +38 -23
  36. {onnx_diagnostic-0.6.0.dist-info → onnx_diagnostic-0.6.1.dist-info}/WHEEL +1 -1
  37. {onnx_diagnostic-0.6.0.dist-info → onnx_diagnostic-0.6.1.dist-info}/licenses/LICENSE.txt +0 -0
  38. {onnx_diagnostic-0.6.0.dist-info → onnx_diagnostic-0.6.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,289 @@
1
+ import enum
2
+ from typing import Any, Dict, List, Optional, Set, Tuple, Union
3
+ import onnx
4
+ import torch
5
+ from ..api import TensorLike
6
+ from ..helpers import string_type
7
+
8
+
9
+ class RuntimeValueKind(enum.IntEnum):
10
+ "Kind of result."
11
+
12
+ RESULT = 1
13
+ INITIALIZER = 3
14
+ INPUT = 5
15
+ OUTPUT = 9
16
+
17
+ def to_str(self) -> str:
18
+ for k, v in self.__class__.__dict__.items():
19
+ if v == int(self):
20
+ return k
21
+ raise RuntimeError(f"Unable to display {self!r}")
22
+
23
+
24
+ class RuntimeDevice(enum.IntEnum):
25
+ "Device definition"
26
+
27
+ UNKNOWN = 0
28
+ NEW = 1
29
+ CPU = 2
30
+ CUDA = 4
31
+
32
+ def to_str(self) -> str:
33
+ for k, v in self.__class__.__dict__.items():
34
+ if v == int(self):
35
+ return k
36
+ raise RuntimeError(f"Unable to display {self!r}")
37
+
38
+
39
+ class RuntimeValue:
40
+ """Describes a value used during the execution of a model."""
41
+
42
+ def __init__(
43
+ self,
44
+ name: str,
45
+ dtype: Optional[Any] = None,
46
+ shape: Optional[Tuple[Union[str, int], ...]] = None,
47
+ value: Optional[Any] = None,
48
+ first_used: Optional[int] = None,
49
+ last_used: Optional[int] = None,
50
+ created: Optional[int] = None,
51
+ is_shape: Optional[bool] = None,
52
+ kind: Optional[RuntimeValueKind] = None,
53
+ device: Optional[RuntimeDevice] = None,
54
+ ):
55
+ self.name = name
56
+ self.dtype = dtype
57
+ self.shape = shape
58
+ self.value = value
59
+ self.first_used = first_used
60
+ self.last_used = last_used
61
+ self.created = created
62
+ self.is_shape = is_shape
63
+ self.kind = kind
64
+ self.device = device
65
+
66
+ def __repr__(self) -> str:
67
+ "usual"
68
+ ad = {}
69
+ for att in [
70
+ "name",
71
+ "dtype",
72
+ "shape",
73
+ "first_used",
74
+ "last_used",
75
+ "is_shape",
76
+ "kind",
77
+ "created",
78
+ "device",
79
+ ]:
80
+ v = getattr(self, att)
81
+ if v is not None:
82
+ ad[att] = v
83
+ if self.value is not None:
84
+ ad["value"] = (
85
+ self.value.string_type()
86
+ if hasattr(self.value, "string_type")
87
+ else string_type(self.value, with_shape=True)
88
+ )
89
+ msg = ", ".join(
90
+ f"{name}={t.to_str()}" if hasattr(t, "to_str") else f"{name}={t}"
91
+ for name, t in ad.items()
92
+ )
93
+ return f"{self.__class__.__name__}({msg})"
94
+
95
+ @property
96
+ def has_value(self) -> bool:
97
+ "Tells if value is specified."
98
+ return self.value is not None
99
+
100
+ def string_type(self) -> str:
101
+ "Returns a string describing the value."
102
+ rows = []
103
+ if self.shape is not None:
104
+ rows.append(f"shape={self.shape}")
105
+ if self.is_shape is not None:
106
+ rows.append(f"is_shape={self.is_shape}")
107
+ if self.device is not None:
108
+ rows.append(f"device={self.device}")
109
+ text = f", {', '.join(rows)}" if rows else ""
110
+ if self.value is None:
111
+ return (
112
+ f"RuntimeValue(name={self.name!r}{text}"
113
+ f", dtype={self.dtype}, kind={self.kind})"
114
+ )
115
+ return (
116
+ f"RuntimeValue(name={self.name!r}, "
117
+ f"kind={self.kind}{text}, value={self.value.string_type()})"
118
+ )
119
+
120
+ def set_value(self, value: Union[torch.Tensor, TensorLike]):
121
+ """Sets the value."""
122
+ assert value is not None, "Use clean_value to set a value to None"
123
+ self.value = value
124
+ is_sequence = hasattr(value, "is_sequence") and value.is_sequence()
125
+ if self.dtype:
126
+ assert value is None or self.dtype == value.dtype, (
127
+ f"Unexpected dtype={value.dtype}, previous dtype was {self.dtype}, "
128
+ f"is_sequence={is_sequence}"
129
+ )
130
+ else:
131
+ self.dtype = value.dtype
132
+ self.shape = None if is_sequence else tuple(map(int, value.shape))
133
+
134
+ def clean_value(self):
135
+ """Sets value to None."""
136
+ self.value = None
137
+
138
+ @property
139
+ def is_output(self) -> bool:
140
+ "Tells if it is an output."
141
+ return self.kind == RuntimeValueKind.OUTPUT
142
+
143
+ @property
144
+ def is_input(self) -> bool:
145
+ "Tells if it is an input."
146
+ return self.kind == RuntimeValueKind.INPUT
147
+
148
+ @property
149
+ def is_initializer(self) -> bool:
150
+ "Tells if it is an initializer."
151
+ return self.kind == RuntimeValueKind.INITIALIZER
152
+
153
+
154
+ def get_hidden_inputs(graph: onnx.GraphProto) -> Set[str]:
155
+ """
156
+ Returns the hidden inputs (inputs coming from an upper context)
157
+ used by a subgraph.
158
+ """
159
+ hidden = set()
160
+ memo = (
161
+ set(i.name for i in graph.initializer)
162
+ | set(i.name for i in graph.sparse_initializer)
163
+ | set(i.name for i in graph.input)
164
+ )
165
+ for node in graph.node:
166
+ for i in node.input:
167
+ if i not in memo:
168
+ hidden.add(i)
169
+ for att in node.attribute:
170
+ if att.type == onnx.AttributeProto.GRAPH and att.g:
171
+ hid = get_hidden_inputs(att.g)
172
+ less = set(h for h in hid if h not in memo)
173
+ hidden |= less
174
+ memo |= set(node.output)
175
+ return hidden
176
+
177
+
178
+ def set_is_shape(
179
+ node: onnx.NodeProto, values: Dict[str, RuntimeValue], drop: Optional[Set[str]] = None
180
+ ) -> List[str]:
181
+ """
182
+ Sets attribute ``is_shape`` for outputs of a node.
183
+
184
+ :param node: node to process
185
+ :param values: stored results, values in this dictionary are updated
186
+ :param drop: variables not to consider because the come from the graph
187
+ holding this subgraph
188
+ :return: list of modified results
189
+ """
190
+ if not node.input:
191
+ # Constant
192
+ return []
193
+ drop = drop or set()
194
+ if node.op_type in ("Shape", "Size") and node.domain == "":
195
+ values[node.output[0]].is_shape = True
196
+ return [node.output[0]]
197
+ is_shapes = [values[i].is_shape for i in node.input if i not in drop]
198
+ if any(is_shapes):
199
+ if is_shapes[0] and len(node.output) == 1:
200
+ values[node.output[0]].is_shape = True
201
+ return [node.output[0]]
202
+ else:
203
+ for o in node.output:
204
+ values[o].is_shape = False
205
+ return list(node.output)
206
+ return []
207
+
208
+
209
+ def first_used_last_used(
210
+ proto: Union[onnx.FunctionProto, onnx.GraphProto, onnx.ModelProto],
211
+ constant_as_initializer: bool = False,
212
+ ) -> Dict[str, RuntimeValue]:
213
+ """
214
+ Builds first used, last used information for every result
215
+ in the model.
216
+
217
+ :param proto: model, graph or function
218
+ :param constant_as_initializer: outputs of node Constant is tagged as INITIALIZER
219
+ :return: dictionary of RuntimeValue
220
+ """
221
+ values = {}
222
+ if isinstance(proto, onnx.ModelProto):
223
+ initializer = proto.graph.initializer
224
+ sparse_initializer = proto.graph.sparse_initializer
225
+ _input = proto.graph.input
226
+ output = proto.graph.output
227
+ _node = proto.graph.node
228
+ allow_unknown = False
229
+ elif isinstance(proto, onnx.GraphProto):
230
+ initializer = proto.initializer
231
+ sparse_initializer = proto.sparse_initializer
232
+ _input = proto.input
233
+ output = proto.output
234
+ _node = proto.node
235
+ allow_unknown = True
236
+ else:
237
+ initializer = []
238
+ sparse_initializer = []
239
+ _input = proto.input
240
+ output = proto.output
241
+ _node = proto.node
242
+ allow_unknown = False
243
+
244
+ for init in initializer:
245
+ values[init.name] = RuntimeValue(
246
+ init.name, kind=RuntimeValueKind.INITIALIZER, created=-1
247
+ )
248
+ for init in sparse_initializer:
249
+ values[init.name] = RuntimeValue(
250
+ init.name, created=-1, kind=RuntimeValueKind.INITIALIZER
251
+ )
252
+ for inp in _input:
253
+ n = inp if isinstance(inp, str) else inp.name
254
+ values[n] = RuntimeValue(n, created=-1, kind=RuntimeValueKind.INPUT)
255
+ drop = set()
256
+ for it, node in enumerate(_node):
257
+ for i in node.input:
258
+ if i not in values:
259
+ assert allow_unknown, f"Input {i!r} is unknown."
260
+ # This input comes from a context and the model is a GraphProto
261
+ drop.add(i)
262
+ continue
263
+ if values[i].first_used is None:
264
+ values[i].first_used = it
265
+ values[i].last_used = it
266
+ for att in node.attribute:
267
+ if att.type == onnx.AttributeProto.GRAPH:
268
+ for n in get_hidden_inputs(att.g):
269
+ if values[n].first_used is None:
270
+ values[n].first_used = it
271
+ values[n].last_used = it
272
+ is_constant = node.op_type == "Constant" and node.domain == ""
273
+ for o in node.output:
274
+ values[o] = RuntimeValue(
275
+ o,
276
+ created=it,
277
+ kind=(
278
+ RuntimeValueKind.INITIALIZER
279
+ if is_constant and constant_as_initializer
280
+ else RuntimeValueKind.RESULT
281
+ ),
282
+ )
283
+ set_is_shape(node, values, drop=drop)
284
+
285
+ for out in output:
286
+ n = out if isinstance(out, str) else out.name
287
+ values[n].kind = RuntimeValueKind.OUTPUT
288
+ values[n].last_used = len(_node)
289
+ return values
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: onnx-diagnostic
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Summary: Investigate ONNX models
5
5
  Home-page: https://github.com/sdpython/onnx-diagnostic
6
6
  Author: Xavier Dupré
@@ -1,29 +1,31 @@
1
- onnx_diagnostic/__init__.py,sha256=5S8PigU8f0RN8fU9ddmGimcrAr1kUtpUORdZRi96mHw,173
1
+ onnx_diagnostic/__init__.py,sha256=yCtQh931_2K3SHqvkJ_EVFSKxjtdNDc21rdCxdemDBM,173
2
2
  onnx_diagnostic/__main__.py,sha256=YmyV_Aq_ianDlHyKLHMa6h8YK3ZmFPpLVHLKjM91aCk,79
3
- onnx_diagnostic/_command_lines_parser.py,sha256=yy4upYkizwu-8M6ErGKhzwiX5fW8dWT_34EBOT7CPPQ,18632
3
+ onnx_diagnostic/_command_lines_parser.py,sha256=WSoopSHjXWEgFvzyfGe3_c-hZoStuQPQc_k08siFuf4,19211
4
+ onnx_diagnostic/api.py,sha256=BhCl_yCd78N7TlVtPOHjeYv1QBEy39TjZ647rcHqLh0,345
4
5
  onnx_diagnostic/doc.py,sha256=MTuT7Kxyvn7KEy84liQeFeqhugJrUQhjjpx21F72Uxw,926
5
- onnx_diagnostic/ext_test_case.py,sha256=PVkneWhs-jt_nkfH06hv12WjtaBX0Rim1r_dxGPXjq0,42256
6
+ onnx_diagnostic/ext_test_case.py,sha256=nhWz75caudvKn-svH1ppUY8uw8MoTD4cEdqMdj6PiPc,42399
6
7
  onnx_diagnostic/export/__init__.py,sha256=yEIoWiOeTwBsDhyYt2fTKuhtA0Ya1J9u9ZzMTOTWaWs,101
7
8
  onnx_diagnostic/export/dynamic_shapes.py,sha256=EHB7VoWNx8sVetvOgE1vgC7wHtIjWDLjanhbEJNpK88,39892
8
9
  onnx_diagnostic/export/validate.py,sha256=_PGUql2DJhIgGKo0WjTGUc5AgsZUx8fEs00MePy-w98,6043
9
10
  onnx_diagnostic/helpers/__init__.py,sha256=GJ2GT7cgnlIveVUwMZhuvUwidbTJaKv8CsSIOpZDsJg,83
10
- onnx_diagnostic/helpers/args_helper.py,sha256=7pTrw1A1wuNvLdXJdpda5spPI140FylwSmxxZTGu_4E,4389
11
+ onnx_diagnostic/helpers/args_helper.py,sha256=SRWnqC7EENg09RZlA50B_PcdiIhdbgA4C3ACfzl5nMs,4419
11
12
  onnx_diagnostic/helpers/bench_run.py,sha256=CGA6VMJZMH2gDhVueT9ypNm4PMcjGrrGFYp08nhWj9k,16539
12
13
  onnx_diagnostic/helpers/cache_helper.py,sha256=soKjyIXa7EQgALd9PAUGIKYzXlJGoLevYiQDsxoqkQ4,8349
13
14
  onnx_diagnostic/helpers/config_helper.py,sha256=aZATKVbZuw8L56KQpwMNcqJ3Qi5OplzS_N3ETR3hmj0,3351
14
15
  onnx_diagnostic/helpers/graph_helper.py,sha256=hevQT5a7_QuriVPQcbT5qe18n99Doyl5h3-qshx1-uk,14093
15
- onnx_diagnostic/helpers/helper.py,sha256=h7nuAUWBvLgOq95AY9xIer4rcXhLxkAM1-u-QliAx5A,56929
16
+ onnx_diagnostic/helpers/helper.py,sha256=oPybQruFcVLqvqLDhjphOZ8zZU1HHJWAlABMuTkAO8A,57090
16
17
  onnx_diagnostic/helpers/memory_peak.py,sha256=OT6mz0muBbBZY0pjgW2_eCk_lOtFRo-5w4jFo2Z6Kok,6380
17
18
  onnx_diagnostic/helpers/mini_onnx_builder.py,sha256=R1Vu4zHzN7GIUnbMVQzpkaXj8cCyyOweWOI9-TSgAHM,20966
18
- onnx_diagnostic/helpers/model_builder_helper.py,sha256=wHd2qqfGNvdgjGBmXyyZhfikjyM_-ijPkLbMRkqW0Pg,12963
19
+ onnx_diagnostic/helpers/model_builder_helper.py,sha256=cQuC7wbl8UcU_IaSBnX_CsydKTABN6lABCWEthmpmDA,13386
19
20
  onnx_diagnostic/helpers/onnx_helper.py,sha256=chw-HB4iqGCD_16d0_BaCnreEgWYW4KeH78nh-3t2Uw,29213
20
21
  onnx_diagnostic/helpers/ort_session.py,sha256=UgUUeUslDxEFBc6w6f3HMq_a7bn4TBlItmojqWquSj4,29281
21
- onnx_diagnostic/helpers/rt_helper.py,sha256=PbMRp0AQGKxj9B8_-oIMYPG5o86jTXJalkoBTmg4VZs,4147
22
- onnx_diagnostic/helpers/torch_helper.py,sha256=83HnFGcOX8YmPDAikhxFpBydxfI3gyWPDiRHYidrH6A,31531
23
- onnx_diagnostic/reference/__init__.py,sha256=0Al5kins8LlBICAsszEZ59thMwmaARBO6fMwtYpKOOQ,98
22
+ onnx_diagnostic/helpers/rt_helper.py,sha256=BXU_u1syk2RyM0HTFHKEiO6rHHhZW2UFPyUTVdeq8BU,4251
23
+ onnx_diagnostic/helpers/torch_helper.py,sha256=mrmn4mBeRvMRJ9cEu7BbNG-AHq2OJfSm8dxgtzh-yQQ,31631
24
+ onnx_diagnostic/reference/__init__.py,sha256=nrd09rRuwMDBCPTSZ6kSKZXp1W9W_ExO1t9duDlBnh8,146
24
25
  onnx_diagnostic/reference/evaluator.py,sha256=RzNzjFDeMe-4X51Tb22N6aagazY5ktNq-mRmPcfY5EU,8848
25
26
  onnx_diagnostic/reference/ort_evaluator.py,sha256=OaWMREF8fuJwimmONpIjQ6WxQT1X2roDsdJsgR8H_Cg,24853
26
27
  onnx_diagnostic/reference/quantized_tensor.py,sha256=5u67uS2uGacdMD5VYCbpojNjiesDlV_kO0fAJ0vUWGE,1098
28
+ onnx_diagnostic/reference/torch_evaluator.py,sha256=uvcpDROoCDd8Rln_kieNRfraNg9j1FD39n1xiGNh3LA,20825
27
29
  onnx_diagnostic/reference/ops/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
28
30
  onnx_diagnostic/reference/ops/op_add_add_mul_mul.py,sha256=CXQVtgVrT066gDJFwxL4nDSY4G8r08XNu3EwhWqMapU,1521
29
31
  onnx_diagnostic/reference/ops/op_attention.py,sha256=ThALMDF53v3QeG1bohi0bvX2o90HZhGJbbAFOtwEHPE,2027
@@ -53,11 +55,23 @@ onnx_diagnostic/reference/ops/op_skip_layer_normalization.py,sha256=oJ7fQNx2iQh9
53
55
  onnx_diagnostic/reference/ops/op_slice.py,sha256=yRxfYBs8b7QezyyG9JHCD8MIJHij2qR2NNDpBmD3FJI,705
54
56
  onnx_diagnostic/reference/ops/op_transpose_cast.py,sha256=ifef74rvh0Yvq1Zx51B4mfnISbxV9uRg9DFjkdL1_68,361
55
57
  onnx_diagnostic/reference/ops/op_tri_matrix.py,sha256=Yn2gxAyygcwtF5Hjau9ihXDAzul0BAkdqVimVahtFBU,519
56
- onnx_diagnostic/tasks/__init__.py,sha256=b7AquEcM1Pdjp-m9K-z83_dOpvyXf4NWXNuzrl1Qxfg,1648
58
+ onnx_diagnostic/reference/torch_ops/__init__.py,sha256=DzuCaiKbzJnkXprJVbVJwA7A29w6T_W1_plB_ZXDQsk,1144
59
+ onnx_diagnostic/reference/torch_ops/_op_run.py,sha256=1nnW6Ub3jWkS-HI3--dhYNXRLqy9Ppe7F9kOeGGYRhw,10253
60
+ onnx_diagnostic/reference/torch_ops/access_ops.py,sha256=sLiTbZUfNbATQxVpq2Rv8n6cbV4jJmQlWHUVIds_GlY,3102
61
+ onnx_diagnostic/reference/torch_ops/binary_ops.py,sha256=774QlWFPvNtNhwxtLb-d28jhTO8U0cthoJKHjM89WrA,2641
62
+ onnx_diagnostic/reference/torch_ops/controlflow_ops.py,sha256=EsiMFmLHxFHprCSz9OLlYxo3sMaF9czj-4NOFkHZH5c,4362
63
+ onnx_diagnostic/reference/torch_ops/generator_ops.py,sha256=oxoeg7YxQiEaC20qOFI-BwQuBtkxN7y9XD9o3gPjPkI,871
64
+ onnx_diagnostic/reference/torch_ops/nn_ops.py,sha256=wzXuBfMsA1aQPQDi4qAv0oZ8kB1qwt4reQ8LiWg1ulo,6906
65
+ onnx_diagnostic/reference/torch_ops/other_ops.py,sha256=bIZsyqrRfTI1xiC4WvV5LcQawsy4gqqci9EgOO9rk9c,3766
66
+ onnx_diagnostic/reference/torch_ops/reduce_ops.py,sha256=oeA-NNJ1MFQD7xG5RD61_3SQhXvpJpNXKZ-_0rFikjE,5020
67
+ onnx_diagnostic/reference/torch_ops/sequence_ops.py,sha256=q1bwFI1zUO69KrOOAbNFqBhz1s9YkqxV1kCaBmgIoYI,2215
68
+ onnx_diagnostic/reference/torch_ops/shape_ops.py,sha256=1pR-3EwhuMpAE-B2TUJs83GxDGITaLBHKxExJ-Ie1EE,4095
69
+ onnx_diagnostic/reference/torch_ops/unary_ops.py,sha256=T3EtQW0p_kNN-OhjVsk1STZ0uWxXyB-rYO-lIp3gXuU,1630
70
+ onnx_diagnostic/tasks/__init__.py,sha256=5XXM-rv-Hk2gSHvqsww9DzVd9mcRifacgcPgvPCjnDM,2412
57
71
  onnx_diagnostic/tasks/automatic_speech_recognition.py,sha256=oRoYy56M0Yv_WOcn1hJXv-R9wgHkJ8rbym7j7y8oslw,6851
58
72
  onnx_diagnostic/tasks/feature_extraction.py,sha256=V-T5NpZ6EimOz00weWWxGfksZ9jQ5ZQyaP-mxuCEuJo,2223
59
73
  onnx_diagnostic/tasks/fill_mask.py,sha256=POUtgvOWv8wTOVLqxPNsj_C2WBiBWkmM72Z9mNlNqxI,2341
60
- onnx_diagnostic/tasks/image_classification.py,sha256=qgT9tbXby3dACZyXXjvfpm0a7-ey2-vxMCXtjoDusJw,4210
74
+ onnx_diagnostic/tasks/image_classification.py,sha256=wtSkZB6Wqh2Y1O_zjfnYRZxUQPVVUlLQ_4D0H-SG-xU,4140
61
75
  onnx_diagnostic/tasks/image_text_to_text.py,sha256=6rKbts_p05VZL8wufJa6NP-MhxUOU-fuTAks5QfUVVQ,6037
62
76
  onnx_diagnostic/tasks/mixture_of_expert.py,sha256=orMx8Ly4DO0Po0tEmme4gi2flPIGip4TaAyxVik4Zgg,2685
63
77
  onnx_diagnostic/tasks/object_detection.py,sha256=o1T8NMztjdFAFA-Z5efx-8nd9W7YZZcbE8Ag5wKVxZA,3930
@@ -65,7 +79,7 @@ onnx_diagnostic/tasks/sentence_similarity.py,sha256=okQ-TQR8j1a92_N-eT6xN56rjtu2
65
79
  onnx_diagnostic/tasks/summarization.py,sha256=qK9E7TdaB9g_Mu-f4Vdr_X8mMAUSlIapLlc8FlWSGFU,7989
66
80
  onnx_diagnostic/tasks/text2text_generation.py,sha256=x5p_5n72scF9hFNOVP8BjOr4Lga1nnqtjfStZ_n9EwQ,8406
67
81
  onnx_diagnostic/tasks/text_classification.py,sha256=OgC_G9iumzTjTNUEvMoFFNTHCD8_BkdvdYC4jUsfpHM,2412
68
- onnx_diagnostic/tasks/text_generation.py,sha256=Wv8DamBHte355wXe_tAeVxG4EL20y86fu7JEmUM75to,10385
82
+ onnx_diagnostic/tasks/text_generation.py,sha256=jWKBFt7M-Neyjw6YSOrYY28xOkRkIerDF5YlugKK3qk,10386
69
83
  onnx_diagnostic/tasks/zero_shot_image_classification.py,sha256=N3cEG1Lq95wS1N_CWUUUCU5j-4Tp5eR8Ce68U8THYAk,4380
70
84
  onnx_diagnostic/torch_export_patches/__init__.py,sha256=0SaZedwznm1hQUCvXZsGZORV5vby954wEExr5faepGg,720
71
85
  onnx_diagnostic/torch_export_patches/onnx_export_errors.py,sha256=MgOQwgLf6-uCGQaiUrhVNfZQ43dCp1iWGbzLbKEVyc8,18810
@@ -73,27 +87,28 @@ onnx_diagnostic/torch_export_patches/onnx_export_serialization.py,sha256=l5HvE_F
73
87
  onnx_diagnostic/torch_export_patches/patch_expressions.py,sha256=vr4tt61cbDnaaaduzMj4UBZ8OUtr6GfDpIWwOYqjWzs,3213
74
88
  onnx_diagnostic/torch_export_patches/patch_inputs.py,sha256=9b4pmyT00BwLqi7WG-gliep1RUy3gXEgW6BDnlSSA-M,7689
75
89
  onnx_diagnostic/torch_export_patches/patch_module.py,sha256=R2d9IHM-RwsBKDsxuBIJnEqMoxbS9gd4YWFGG2wwV5A,39881
76
- onnx_diagnostic/torch_export_patches/patch_module_helper.py,sha256=-sFpuBnwPl61Y0KKENniMfQkL-0-3SaLn5mzgF-fP6g,1946
77
- onnx_diagnostic/torch_export_patches/eval/__init__.py,sha256=V8gbjsbYJHyjLo4WyzhsDx-noBQn6bsK1lhgm8IQlzQ,20890
78
- onnx_diagnostic/torch_export_patches/eval/model_cases.py,sha256=KtK4AgrFE2Mm8wo15O7x4deTGubOU9MFp3QCuac6WkM,26471
90
+ onnx_diagnostic/torch_export_patches/patch_module_helper.py,sha256=sIvu4E9BsCB8f-KlM4xykR19mflDfLGaiel6nb9ZGx8,6926
91
+ onnx_diagnostic/torch_export_patches/eval/__init__.py,sha256=VtkQB1o3Q2Fh99OOF6vQ2dynkhwzx2Wx6oB-rRbvTI0,23954
92
+ onnx_diagnostic/torch_export_patches/eval/model_cases.py,sha256=DTvdHPtNQh25Akv5o3D4Jxf1L1-SJ7w14tgvj8AAns8,26577
79
93
  onnx_diagnostic/torch_export_patches/patches/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
80
94
  onnx_diagnostic/torch_export_patches/patches/patch_torch.py,sha256=KaZ8TjDa9ATgT4HllYzzoNf_51q_yOj_GuF5NYjPCrU,18913
81
- onnx_diagnostic/torch_export_patches/patches/patch_transformers.py,sha256=QGuZ_j8juG9dlSUBSpc2T1nYwkoeFz3iP2kONx2Hmrc,23025
95
+ onnx_diagnostic/torch_export_patches/patches/patch_transformers.py,sha256=Hf-U50vzgzJ4iUjS2LAYkbfmzCEwX80Dzvdrr-Rhlp0,26456
82
96
  onnx_diagnostic/torch_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
83
97
  onnx_diagnostic/torch_models/llms.py,sha256=soyg4yC87ptGoeulJhKqw5opGmuLvH1pn_ZDXZ4Jr8E,90
84
- onnx_diagnostic/torch_models/test_helper.py,sha256=SU8HwQtfUEicCpukp_prqX0ol5fu2rA06lc1GROxW38,55309
98
+ onnx_diagnostic/torch_models/test_helper.py,sha256=72HE_fY0m9TNly1w_b2dD-P67eSLJreOMYtT6W6CLfQ,58704
85
99
  onnx_diagnostic/torch_models/hghub/__init__.py,sha256=vi1Q7YHdddj1soiBN42MSvJdFqe2_KUoWafHISjwOu8,58
86
100
  onnx_diagnostic/torch_models/hghub/hub_api.py,sha256=BgM_p57Q0gT9GOhdrmOYcnbuTTzCWp80jS4OQqWwFhs,9990
87
101
  onnx_diagnostic/torch_models/hghub/hub_data.py,sha256=885wKyZkdM-Qp5Sg6C9Ol1dxigmA8FYAko-Ys08sppo,8096
88
- onnx_diagnostic/torch_models/hghub/hub_data_cached_configs.py,sha256=gndvVH_OybEAQaaG4ZvqFELrZaEozTeHDpdW2AK9m9M,255155
102
+ onnx_diagnostic/torch_models/hghub/hub_data_cached_configs.py,sha256=V4Wv_73QsiWMFTw-xqj-5yZOri1NKuAub6VQa2UVIpw,259582
89
103
  onnx_diagnostic/torch_models/hghub/model_inputs.py,sha256=1h1jHJknqDHAa308_bjOzXVPgy3GIF-ikpce8CHNTmE,7804
90
104
  onnx_diagnostic/torch_models/untrained/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
91
105
  onnx_diagnostic/torch_models/untrained/llm_phi2.py,sha256=ynBTDHJHCk44NjLT_t6OiFDBdPP0rFGPteiONDxvztw,3708
92
106
  onnx_diagnostic/torch_models/untrained/llm_tiny_llm.py,sha256=7N3fGvT_4Mn4NbIo0Qk57c6DMc3OXGWyvj_P41rjwSY,3513
93
107
  onnx_diagnostic/torch_onnx/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
108
+ onnx_diagnostic/torch_onnx/runtime_info.py,sha256=1g9F_Jf9AAgYQU4stbsrFXwQl-30mWlQrFbQ7val8Ps,9268
94
109
  onnx_diagnostic/torch_onnx/sbs.py,sha256=1EL25DeYFzlBSiFG_XjePBLvsiItRXbdDrr5-QZW2mA,16878
95
- onnx_diagnostic-0.6.0.dist-info/licenses/LICENSE.txt,sha256=Vv6TXglX6Rc0d-f8aREhayhT-6PMQXEyOmI2NKlUCMc,1045
96
- onnx_diagnostic-0.6.0.dist-info/METADATA,sha256=jqrQEqFmrlycVGKW_zlSrxhzMoeV-X-H4eSeGBZyK1o,6643
97
- onnx_diagnostic-0.6.0.dist-info/WHEEL,sha256=zaaOINJESkSfm_4HQVc5ssNzHCPXhJm0kEUakpsEHaU,91
98
- onnx_diagnostic-0.6.0.dist-info/top_level.txt,sha256=KwNkXewmcobM3ZT1DJLVWH6ebJzA5qKg7cWqKfpGNT4,16
99
- onnx_diagnostic-0.6.0.dist-info/RECORD,,
110
+ onnx_diagnostic-0.6.1.dist-info/licenses/LICENSE.txt,sha256=Vv6TXglX6Rc0d-f8aREhayhT-6PMQXEyOmI2NKlUCMc,1045
111
+ onnx_diagnostic-0.6.1.dist-info/METADATA,sha256=j0i2pgpY_6bD7IFlqqdmIZSVSvv67Q-7X4N4fih-2JQ,6643
112
+ onnx_diagnostic-0.6.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
113
+ onnx_diagnostic-0.6.1.dist-info/top_level.txt,sha256=KwNkXewmcobM3ZT1DJLVWH6ebJzA5qKg7cWqKfpGNT4,16
114
+ onnx_diagnostic-0.6.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.8.0)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5