@mlhub/models-ts-sdk 0.0.0 → 0.0.1

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 (56) hide show
  1. package/.openapi-generator/FILES +11 -1
  2. package/README.md +2 -2
  3. package/dist/apis/ArtifactsApi.d.ts +13 -1
  4. package/dist/apis/ArtifactsApi.js +49 -0
  5. package/dist/apis/ModelsApi.d.ts +74 -0
  6. package/dist/apis/ModelsApi.js +302 -0
  7. package/dist/apis/TasksApi.d.ts +26 -0
  8. package/dist/apis/{MetadataApi.js → TasksApi.js} +13 -21
  9. package/dist/apis/index.d.ts +2 -1
  10. package/dist/apis/index.js +2 -1
  11. package/dist/models/AssociateModelMetadata.d.ts +33 -0
  12. package/dist/models/AssociateModelMetadata.js +42 -0
  13. package/dist/models/AssociateModelMetadataResponse.d.ts +51 -0
  14. package/dist/models/AssociateModelMetadataResponse.js +48 -0
  15. package/dist/models/DiscoverModelsResponse.d.ts +51 -0
  16. package/dist/models/DiscoverModelsResponse.js +48 -0
  17. package/dist/models/DiscoveryCriteria.d.ts +11 -5
  18. package/dist/models/DiscoveryCriteria.js +4 -2
  19. package/dist/models/DiscoveryCriterion.d.ts +245 -0
  20. package/dist/models/DiscoveryCriterion.js +114 -0
  21. package/dist/models/GetModelArtifactResponse.d.ts +3 -3
  22. package/dist/models/GetModelArtifactResponse.js +2 -2
  23. package/dist/models/GetModelResponse.d.ts +51 -0
  24. package/dist/models/GetModelResponse.js +48 -0
  25. package/dist/models/ListModelsResponse.d.ts +51 -0
  26. package/dist/models/ListModelsResponse.js +48 -0
  27. package/dist/models/ListTasksResponse.d.ts +52 -0
  28. package/dist/models/ListTasksResponse.js +49 -0
  29. package/dist/models/ModelArtifact.d.ts +52 -0
  30. package/dist/models/ModelArtifact.js +50 -0
  31. package/dist/models/ModelMetadata.d.ts +15 -15
  32. package/dist/models/ModelMetadata.js +6 -6
  33. package/dist/models/Task.d.ts +66 -0
  34. package/dist/models/Task.js +80 -0
  35. package/dist/models/index.d.ts +9 -0
  36. package/dist/models/index.js +9 -0
  37. package/package.json +1 -1
  38. package/src/apis/ArtifactsApi.ts +48 -0
  39. package/src/apis/ModelsApi.ts +236 -0
  40. package/src/apis/TasksApi.ts +63 -0
  41. package/src/apis/index.ts +2 -1
  42. package/src/models/AssociateModelMetadata.ts +64 -0
  43. package/src/models/AssociateModelMetadataResponse.ts +88 -0
  44. package/src/models/DiscoverModelsResponse.ts +88 -0
  45. package/src/models/DiscoveryCriteria.ts +18 -10
  46. package/src/models/DiscoveryCriterion.ts +360 -0
  47. package/src/models/GetModelArtifactResponse.ts +8 -8
  48. package/src/models/GetModelResponse.ts +88 -0
  49. package/src/models/ListModelsResponse.ts +88 -0
  50. package/src/models/ListTasksResponse.ts +95 -0
  51. package/src/models/ModelArtifact.ts +99 -0
  52. package/src/models/ModelMetadata.ts +24 -20
  53. package/src/models/Task.ts +79 -0
  54. package/src/models/index.ts +9 -0
  55. package/dist/apis/MetadataApi.d.ts +0 -30
  56. package/src/apis/MetadataApi.ts +0 -82
@@ -0,0 +1,64 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * MLHub Models API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: 0.1.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { exists, mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface AssociateModelMetadata
20
+ */
21
+ export interface AssociateModelMetadata {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof AssociateModelMetadata
26
+ */
27
+ author: string;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof AssociateModelMetadata
32
+ */
33
+ name: string;
34
+ }
35
+
36
+ export function AssociateModelMetadataFromJSON(json: any): AssociateModelMetadata {
37
+ return AssociateModelMetadataFromJSONTyped(json, false);
38
+ }
39
+
40
+ export function AssociateModelMetadataFromJSONTyped(json: any, ignoreDiscriminator: boolean): AssociateModelMetadata {
41
+ if ((json === undefined) || (json === null)) {
42
+ return json;
43
+ }
44
+ return {
45
+
46
+ 'author': json['author'],
47
+ 'name': json['name'],
48
+ };
49
+ }
50
+
51
+ export function AssociateModelMetadataToJSON(value?: AssociateModelMetadata | null): any {
52
+ if (value === undefined) {
53
+ return undefined;
54
+ }
55
+ if (value === null) {
56
+ return null;
57
+ }
58
+ return {
59
+
60
+ 'author': value.author,
61
+ 'name': value.name,
62
+ };
63
+ }
64
+
@@ -0,0 +1,88 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * MLHub Models API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: 0.1.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { exists, mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface AssociateModelMetadataResponse
20
+ */
21
+ export interface AssociateModelMetadataResponse {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof AssociateModelMetadataResponse
26
+ */
27
+ message: string;
28
+ /**
29
+ *
30
+ * @type {object}
31
+ * @memberof AssociateModelMetadataResponse
32
+ */
33
+ metadata: object;
34
+ /**
35
+ *
36
+ * @type {object}
37
+ * @memberof AssociateModelMetadataResponse
38
+ */
39
+ result: object;
40
+ /**
41
+ *
42
+ * @type {number}
43
+ * @memberof AssociateModelMetadataResponse
44
+ */
45
+ status: number;
46
+ /**
47
+ *
48
+ * @type {string}
49
+ * @memberof AssociateModelMetadataResponse
50
+ */
51
+ version: string;
52
+ }
53
+
54
+ export function AssociateModelMetadataResponseFromJSON(json: any): AssociateModelMetadataResponse {
55
+ return AssociateModelMetadataResponseFromJSONTyped(json, false);
56
+ }
57
+
58
+ export function AssociateModelMetadataResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): AssociateModelMetadataResponse {
59
+ if ((json === undefined) || (json === null)) {
60
+ return json;
61
+ }
62
+ return {
63
+
64
+ 'message': json['message'],
65
+ 'metadata': json['metadata'],
66
+ 'result': json['result'],
67
+ 'status': json['status'],
68
+ 'version': json['version'],
69
+ };
70
+ }
71
+
72
+ export function AssociateModelMetadataResponseToJSON(value?: AssociateModelMetadataResponse | null): any {
73
+ if (value === undefined) {
74
+ return undefined;
75
+ }
76
+ if (value === null) {
77
+ return null;
78
+ }
79
+ return {
80
+
81
+ 'message': value.message,
82
+ 'metadata': value.metadata,
83
+ 'result': value.result,
84
+ 'status': value.status,
85
+ 'version': value.version,
86
+ };
87
+ }
88
+
@@ -0,0 +1,88 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * MLHub Models API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: 0.1.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { exists, mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface DiscoverModelsResponse
20
+ */
21
+ export interface DiscoverModelsResponse {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof DiscoverModelsResponse
26
+ */
27
+ message: string;
28
+ /**
29
+ *
30
+ * @type {object}
31
+ * @memberof DiscoverModelsResponse
32
+ */
33
+ metadata: object;
34
+ /**
35
+ *
36
+ * @type {object}
37
+ * @memberof DiscoverModelsResponse
38
+ */
39
+ result: object;
40
+ /**
41
+ *
42
+ * @type {number}
43
+ * @memberof DiscoverModelsResponse
44
+ */
45
+ status: number;
46
+ /**
47
+ *
48
+ * @type {string}
49
+ * @memberof DiscoverModelsResponse
50
+ */
51
+ version: string;
52
+ }
53
+
54
+ export function DiscoverModelsResponseFromJSON(json: any): DiscoverModelsResponse {
55
+ return DiscoverModelsResponseFromJSONTyped(json, false);
56
+ }
57
+
58
+ export function DiscoverModelsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): DiscoverModelsResponse {
59
+ if ((json === undefined) || (json === null)) {
60
+ return json;
61
+ }
62
+ return {
63
+
64
+ 'message': json['message'],
65
+ 'metadata': json['metadata'],
66
+ 'result': json['result'],
67
+ 'status': json['status'],
68
+ 'version': json['version'],
69
+ };
70
+ }
71
+
72
+ export function DiscoverModelsResponseToJSON(value?: DiscoverModelsResponse | null): any {
73
+ if (value === undefined) {
74
+ return undefined;
75
+ }
76
+ if (value === null) {
77
+ return null;
78
+ }
79
+ return {
80
+
81
+ 'message': value.message,
82
+ 'metadata': value.metadata,
83
+ 'result': value.result,
84
+ 'status': value.status,
85
+ 'version': value.version,
86
+ };
87
+ }
88
+
@@ -14,10 +14,10 @@
14
14
 
15
15
  import { exists, mapValues } from '../runtime';
16
16
  import {
17
- ModelMetadata,
18
- ModelMetadataFromJSON,
19
- ModelMetadataFromJSONTyped,
20
- ModelMetadataToJSON,
17
+ DiscoveryCriterion,
18
+ DiscoveryCriterionFromJSON,
19
+ DiscoveryCriterionFromJSONTyped,
20
+ DiscoveryCriterionToJSON,
21
21
  } from './';
22
22
 
23
23
  /**
@@ -28,16 +28,22 @@ import {
28
28
  export interface DiscoveryCriteria {
29
29
  /**
30
30
  *
31
- * @type {Array<string>}
31
+ * @type {number}
32
32
  * @memberof DiscoveryCriteria
33
33
  */
34
- confidence_threshold?: Array<string> | null;
34
+ confidence_threshold?: number | null;
35
35
  /**
36
36
  *
37
- * @type {Array<ModelMetadata>}
37
+ * @type {Array<DiscoveryCriterion>}
38
38
  * @memberof DiscoveryCriteria
39
39
  */
40
- criteria: Array<ModelMetadata>;
40
+ criteria: Array<DiscoveryCriterion>;
41
+ /**
42
+ *
43
+ * @type {string}
44
+ * @memberof DiscoveryCriteria
45
+ */
46
+ prompt?: string | null;
41
47
  }
42
48
 
43
49
  export function DiscoveryCriteriaFromJSON(json: any): DiscoveryCriteria {
@@ -51,7 +57,8 @@ export function DiscoveryCriteriaFromJSONTyped(json: any, ignoreDiscriminator: b
51
57
  return {
52
58
 
53
59
  'confidence_threshold': !exists(json, 'confidence_threshold') ? undefined : json['confidence_threshold'],
54
- 'criteria': ((json['criteria'] as Array<any>).map(ModelMetadataFromJSON)),
60
+ 'criteria': ((json['criteria'] as Array<any>).map(DiscoveryCriterionFromJSON)),
61
+ 'prompt': !exists(json, 'prompt') ? undefined : json['prompt'],
55
62
  };
56
63
  }
57
64
 
@@ -65,7 +72,8 @@ export function DiscoveryCriteriaToJSON(value?: DiscoveryCriteria | null): any {
65
72
  return {
66
73
 
67
74
  'confidence_threshold': value.confidence_threshold,
68
- 'criteria': ((value.criteria as Array<any>).map(ModelMetadataToJSON)),
75
+ 'criteria': ((value.criteria as Array<any>).map(DiscoveryCriterionToJSON)),
76
+ 'prompt': value.prompt,
69
77
  };
70
78
  }
71
79
 
@@ -0,0 +1,360 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * MLHub Models API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: 0.1.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { exists, mapValues } from '../runtime';
16
+ import {
17
+ HardwareRequirements,
18
+ HardwareRequirementsFromJSON,
19
+ HardwareRequirementsFromJSONTyped,
20
+ HardwareRequirementsToJSON,
21
+ ModelIO,
22
+ ModelIOFromJSON,
23
+ ModelIOFromJSONTyped,
24
+ ModelIOToJSON,
25
+ Task,
26
+ TaskFromJSON,
27
+ TaskFromJSONTyped,
28
+ TaskToJSON,
29
+ } from './';
30
+
31
+ /**
32
+ *
33
+ * @export
34
+ * @interface DiscoveryCriterion
35
+ */
36
+ export interface DiscoveryCriterion {
37
+ /**
38
+ *
39
+ * @type {any}
40
+ * @memberof DiscoveryCriterion
41
+ */
42
+ annotation?: any | null;
43
+ /**
44
+ *
45
+ * @type {string}
46
+ * @memberof DiscoveryCriterion
47
+ */
48
+ author?: string | null;
49
+ /**
50
+ *
51
+ * @type {number}
52
+ * @memberof DiscoveryCriterion
53
+ */
54
+ bias_evaluation_score?: number | null;
55
+ /**
56
+ *
57
+ * @type {boolean}
58
+ * @memberof DiscoveryCriterion
59
+ */
60
+ edge_optimized?: boolean | null;
61
+ /**
62
+ *
63
+ * @type {Array<string>}
64
+ * @memberof DiscoveryCriterion
65
+ */
66
+ finetuning_datasets?: Array<string> | null;
67
+ /**
68
+ *
69
+ * @type {string}
70
+ * @memberof DiscoveryCriterion
71
+ */
72
+ framework?: string | null;
73
+ /**
74
+ *
75
+ * @type {string}
76
+ * @memberof DiscoveryCriterion
77
+ */
78
+ image?: string | null;
79
+ /**
80
+ *
81
+ * @type {boolean}
82
+ * @memberof DiscoveryCriterion
83
+ */
84
+ inference_distributed?: boolean | null;
85
+ /**
86
+ *
87
+ * @type {HardwareRequirements}
88
+ * @memberof DiscoveryCriterion
89
+ */
90
+ inference_hardware?: HardwareRequirements | null;
91
+ /**
92
+ *
93
+ * @type {number}
94
+ * @memberof DiscoveryCriterion
95
+ */
96
+ inference_max_compute_utilization_percentage?: number | null;
97
+ /**
98
+ *
99
+ * @type {number}
100
+ * @memberof DiscoveryCriterion
101
+ */
102
+ inference_max_energy_consumption_watts?: number | null;
103
+ /**
104
+ * Inference performance fields
105
+ * @type {number}
106
+ * @memberof DiscoveryCriterion
107
+ */
108
+ inference_max_latency_ms?: number | null;
109
+ /**
110
+ *
111
+ * @type {number}
112
+ * @memberof DiscoveryCriterion
113
+ */
114
+ inference_max_memory_usage_mb?: number | null;
115
+ /**
116
+ *
117
+ * @type {number}
118
+ * @memberof DiscoveryCriterion
119
+ */
120
+ inference_min_throughput?: number | null;
121
+ /**
122
+ *
123
+ * @type {string}
124
+ * @memberof DiscoveryCriterion
125
+ */
126
+ inference_precision?: string | null;
127
+ /**
128
+ *
129
+ * @type {Array<string>}
130
+ * @memberof DiscoveryCriterion
131
+ */
132
+ inference_software_dependencies?: Array<string> | null;
133
+ /**
134
+ * Arbitrary labels
135
+ * @type {Array<string>}
136
+ * @memberof DiscoveryCriterion
137
+ */
138
+ keywords?: Array<string> | null;
139
+ /**
140
+ *
141
+ * @type {string}
142
+ * @memberof DiscoveryCriterion
143
+ */
144
+ license?: string | null;
145
+ /**
146
+ *
147
+ * @type {Array<ModelIO>}
148
+ * @memberof DiscoveryCriterion
149
+ */
150
+ model_inputs?: Array<ModelIO> | null;
151
+ /**
152
+ *
153
+ * @type {Array<ModelIO>}
154
+ * @memberof DiscoveryCriterion
155
+ */
156
+ model_outputs?: Array<ModelIO> | null;
157
+ /**
158
+ *
159
+ * @type {string}
160
+ * @memberof DiscoveryCriterion
161
+ */
162
+ model_type?: string | null;
163
+ /**
164
+ * Architecture fields
165
+ * @type {boolean}
166
+ * @memberof DiscoveryCriterion
167
+ */
168
+ multi_modal?: boolean | null;
169
+ /**
170
+ *
171
+ * @type {string}
172
+ * @memberof DiscoveryCriterion
173
+ */
174
+ name?: string | null;
175
+ /**
176
+ *
177
+ * @type {boolean}
178
+ * @memberof DiscoveryCriterion
179
+ */
180
+ pretrained?: boolean | null;
181
+ /**
182
+ *
183
+ * @type {Array<string>}
184
+ * @memberof DiscoveryCriterion
185
+ */
186
+ pretraining_datasets?: Array<string> | null;
187
+ /**
188
+ *
189
+ * @type {boolean}
190
+ * @memberof DiscoveryCriterion
191
+ */
192
+ pruned?: boolean | null;
193
+ /**
194
+ *
195
+ * @type {boolean}
196
+ * @memberof DiscoveryCriterion
197
+ */
198
+ quantization_aware?: boolean | null;
199
+ /**
200
+ * Regulatory and Compliance Fields
201
+ * A vector or strings that represent regulatory standards. Ex HIPPA
202
+ * @type {Array<string>}
203
+ * @memberof DiscoveryCriterion
204
+ */
205
+ regulatory?: Array<string> | null;
206
+ /**
207
+ *
208
+ * @type {boolean}
209
+ * @memberof DiscoveryCriterion
210
+ */
211
+ slimmed?: boolean | null;
212
+ /**
213
+ *
214
+ * @type {boolean}
215
+ * @memberof DiscoveryCriterion
216
+ */
217
+ supports_quantization?: boolean | null;
218
+ /**
219
+ * Inference Fields
220
+ * @type {Array<Task>}
221
+ * @memberof DiscoveryCriterion
222
+ */
223
+ task_types?: Array<Task> | null;
224
+ /**
225
+ *
226
+ * @type {boolean}
227
+ * @memberof DiscoveryCriterion
228
+ */
229
+ training_distributed?: boolean | null;
230
+ /**
231
+ *
232
+ * @type {HardwareRequirements}
233
+ * @memberof DiscoveryCriterion
234
+ */
235
+ training_hardware?: HardwareRequirements | null;
236
+ /**
237
+ * Training performance fields
238
+ * @type {number}
239
+ * @memberof DiscoveryCriterion
240
+ */
241
+ training_max_energy_consumption_watts?: number | null;
242
+ /**
243
+ *
244
+ * @type {string}
245
+ * @memberof DiscoveryCriterion
246
+ */
247
+ training_precision?: string | null;
248
+ /**
249
+ * Training-related Fields
250
+ * @type {number}
251
+ * @memberof DiscoveryCriterion
252
+ */
253
+ training_time?: number | null;
254
+ /**
255
+ *
256
+ * @type {string}
257
+ * @memberof DiscoveryCriterion
258
+ */
259
+ version?: string | null;
260
+ }
261
+
262
+ export function DiscoveryCriterionFromJSON(json: any): DiscoveryCriterion {
263
+ return DiscoveryCriterionFromJSONTyped(json, false);
264
+ }
265
+
266
+ export function DiscoveryCriterionFromJSONTyped(json: any, ignoreDiscriminator: boolean): DiscoveryCriterion {
267
+ if ((json === undefined) || (json === null)) {
268
+ return json;
269
+ }
270
+ return {
271
+
272
+ 'annotation': !exists(json, 'annotation') ? undefined : json['annotation'],
273
+ 'author': !exists(json, 'author') ? undefined : json['author'],
274
+ 'bias_evaluation_score': !exists(json, 'bias_evaluation_score') ? undefined : json['bias_evaluation_score'],
275
+ 'edge_optimized': !exists(json, 'edge_optimized') ? undefined : json['edge_optimized'],
276
+ 'finetuning_datasets': !exists(json, 'finetuning_datasets') ? undefined : json['finetuning_datasets'],
277
+ 'framework': !exists(json, 'framework') ? undefined : json['framework'],
278
+ 'image': !exists(json, 'image') ? undefined : json['image'],
279
+ 'inference_distributed': !exists(json, 'inference_distributed') ? undefined : json['inference_distributed'],
280
+ 'inference_hardware': !exists(json, 'inference_hardware') ? undefined : HardwareRequirementsFromJSON(json['inference_hardware']),
281
+ 'inference_max_compute_utilization_percentage': !exists(json, 'inference_max_compute_utilization_percentage') ? undefined : json['inference_max_compute_utilization_percentage'],
282
+ 'inference_max_energy_consumption_watts': !exists(json, 'inference_max_energy_consumption_watts') ? undefined : json['inference_max_energy_consumption_watts'],
283
+ 'inference_max_latency_ms': !exists(json, 'inference_max_latency_ms') ? undefined : json['inference_max_latency_ms'],
284
+ 'inference_max_memory_usage_mb': !exists(json, 'inference_max_memory_usage_mb') ? undefined : json['inference_max_memory_usage_mb'],
285
+ 'inference_min_throughput': !exists(json, 'inference_min_throughput') ? undefined : json['inference_min_throughput'],
286
+ 'inference_precision': !exists(json, 'inference_precision') ? undefined : json['inference_precision'],
287
+ 'inference_software_dependencies': !exists(json, 'inference_software_dependencies') ? undefined : json['inference_software_dependencies'],
288
+ 'keywords': !exists(json, 'keywords') ? undefined : json['keywords'],
289
+ 'license': !exists(json, 'license') ? undefined : json['license'],
290
+ 'model_inputs': !exists(json, 'model_inputs') ? undefined : (json['model_inputs'] === null ? null : (json['model_inputs'] as Array<any>).map(ModelIOFromJSON)),
291
+ 'model_outputs': !exists(json, 'model_outputs') ? undefined : (json['model_outputs'] === null ? null : (json['model_outputs'] as Array<any>).map(ModelIOFromJSON)),
292
+ 'model_type': !exists(json, 'model_type') ? undefined : json['model_type'],
293
+ 'multi_modal': !exists(json, 'multi_modal') ? undefined : json['multi_modal'],
294
+ 'name': !exists(json, 'name') ? undefined : json['name'],
295
+ 'pretrained': !exists(json, 'pretrained') ? undefined : json['pretrained'],
296
+ 'pretraining_datasets': !exists(json, 'pretraining_datasets') ? undefined : json['pretraining_datasets'],
297
+ 'pruned': !exists(json, 'pruned') ? undefined : json['pruned'],
298
+ 'quantization_aware': !exists(json, 'quantization_aware') ? undefined : json['quantization_aware'],
299
+ 'regulatory': !exists(json, 'regulatory') ? undefined : json['regulatory'],
300
+ 'slimmed': !exists(json, 'slimmed') ? undefined : json['slimmed'],
301
+ 'supports_quantization': !exists(json, 'supports_quantization') ? undefined : json['supports_quantization'],
302
+ 'task_types': !exists(json, 'task_types') ? undefined : (json['task_types'] === null ? null : (json['task_types'] as Array<any>).map(TaskFromJSON)),
303
+ 'training_distributed': !exists(json, 'training_distributed') ? undefined : json['training_distributed'],
304
+ 'training_hardware': !exists(json, 'training_hardware') ? undefined : HardwareRequirementsFromJSON(json['training_hardware']),
305
+ 'training_max_energy_consumption_watts': !exists(json, 'training_max_energy_consumption_watts') ? undefined : json['training_max_energy_consumption_watts'],
306
+ 'training_precision': !exists(json, 'training_precision') ? undefined : json['training_precision'],
307
+ 'training_time': !exists(json, 'training_time') ? undefined : json['training_time'],
308
+ 'version': !exists(json, 'version') ? undefined : json['version'],
309
+ };
310
+ }
311
+
312
+ export function DiscoveryCriterionToJSON(value?: DiscoveryCriterion | null): any {
313
+ if (value === undefined) {
314
+ return undefined;
315
+ }
316
+ if (value === null) {
317
+ return null;
318
+ }
319
+ return {
320
+
321
+ 'annotation': value.annotation,
322
+ 'author': value.author,
323
+ 'bias_evaluation_score': value.bias_evaluation_score,
324
+ 'edge_optimized': value.edge_optimized,
325
+ 'finetuning_datasets': value.finetuning_datasets,
326
+ 'framework': value.framework,
327
+ 'image': value.image,
328
+ 'inference_distributed': value.inference_distributed,
329
+ 'inference_hardware': HardwareRequirementsToJSON(value.inference_hardware),
330
+ 'inference_max_compute_utilization_percentage': value.inference_max_compute_utilization_percentage,
331
+ 'inference_max_energy_consumption_watts': value.inference_max_energy_consumption_watts,
332
+ 'inference_max_latency_ms': value.inference_max_latency_ms,
333
+ 'inference_max_memory_usage_mb': value.inference_max_memory_usage_mb,
334
+ 'inference_min_throughput': value.inference_min_throughput,
335
+ 'inference_precision': value.inference_precision,
336
+ 'inference_software_dependencies': value.inference_software_dependencies,
337
+ 'keywords': value.keywords,
338
+ 'license': value.license,
339
+ 'model_inputs': value.model_inputs === undefined ? undefined : (value.model_inputs === null ? null : (value.model_inputs as Array<any>).map(ModelIOToJSON)),
340
+ 'model_outputs': value.model_outputs === undefined ? undefined : (value.model_outputs === null ? null : (value.model_outputs as Array<any>).map(ModelIOToJSON)),
341
+ 'model_type': value.model_type,
342
+ 'multi_modal': value.multi_modal,
343
+ 'name': value.name,
344
+ 'pretrained': value.pretrained,
345
+ 'pretraining_datasets': value.pretraining_datasets,
346
+ 'pruned': value.pruned,
347
+ 'quantization_aware': value.quantization_aware,
348
+ 'regulatory': value.regulatory,
349
+ 'slimmed': value.slimmed,
350
+ 'supports_quantization': value.supports_quantization,
351
+ 'task_types': value.task_types === undefined ? undefined : (value.task_types === null ? null : (value.task_types as Array<any>).map(TaskToJSON)),
352
+ 'training_distributed': value.training_distributed,
353
+ 'training_hardware': HardwareRequirementsToJSON(value.training_hardware),
354
+ 'training_max_energy_consumption_watts': value.training_max_energy_consumption_watts,
355
+ 'training_precision': value.training_precision,
356
+ 'training_time': value.training_time,
357
+ 'version': value.version,
358
+ };
359
+ }
360
+