unitycatalog-client 0.2.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.
- unitycatalog/client/__init__.py +102 -0
- unitycatalog/client/api/__init__.py +13 -0
- unitycatalog/client/api/catalogs_api.py +1404 -0
- unitycatalog/client/api/functions_api.py +1135 -0
- unitycatalog/client/api/grants_api.py +630 -0
- unitycatalog/client/api/model_versions_api.py +1748 -0
- unitycatalog/client/api/registered_models_api.py +1438 -0
- unitycatalog/client/api/schemas_api.py +1421 -0
- unitycatalog/client/api/tables_api.py +1135 -0
- unitycatalog/client/api/temporary_credentials_api.py +1109 -0
- unitycatalog/client/api/volumes_api.py +1421 -0
- unitycatalog/client/api_client.py +773 -0
- unitycatalog/client/api_response.py +21 -0
- unitycatalog/client/configuration.py +432 -0
- unitycatalog/client/exceptions.py +199 -0
- unitycatalog/client/models/__init__.py +77 -0
- unitycatalog/client/models/aws_credentials.py +91 -0
- unitycatalog/client/models/azure_user_delegation_sas.py +87 -0
- unitycatalog/client/models/catalog_info.py +103 -0
- unitycatalog/client/models/column_info.py +108 -0
- unitycatalog/client/models/column_type_name.py +56 -0
- unitycatalog/client/models/create_catalog.py +91 -0
- unitycatalog/client/models/create_function.py +163 -0
- unitycatalog/client/models/create_function_request.py +91 -0
- unitycatalog/client/models/create_model_version.py +97 -0
- unitycatalog/client/models/create_registered_model.py +93 -0
- unitycatalog/client/models/create_schema.py +93 -0
- unitycatalog/client/models/create_table.py +113 -0
- unitycatalog/client/models/create_volume_request_content.py +99 -0
- unitycatalog/client/models/data_source_format.py +42 -0
- unitycatalog/client/models/dependency.py +97 -0
- unitycatalog/client/models/dependency_list.py +95 -0
- unitycatalog/client/models/finalize_model_version.py +89 -0
- unitycatalog/client/models/function_dependency.py +87 -0
- unitycatalog/client/models/function_info.py +189 -0
- unitycatalog/client/models/function_parameter_info.py +112 -0
- unitycatalog/client/models/function_parameter_infos.py +95 -0
- unitycatalog/client/models/function_parameter_mode.py +36 -0
- unitycatalog/client/models/function_parameter_type.py +37 -0
- unitycatalog/client/models/gcp_oauth_token.py +87 -0
- unitycatalog/client/models/generate_temporary_model_version_credential.py +96 -0
- unitycatalog/client/models/generate_temporary_path_credential.py +90 -0
- unitycatalog/client/models/generate_temporary_table_credential.py +90 -0
- unitycatalog/client/models/generate_temporary_volume_credential.py +90 -0
- unitycatalog/client/models/list_catalogs_response.py +97 -0
- unitycatalog/client/models/list_functions_response.py +97 -0
- unitycatalog/client/models/list_model_versions_response.py +97 -0
- unitycatalog/client/models/list_registered_models_response.py +97 -0
- unitycatalog/client/models/list_schemas_response.py +97 -0
- unitycatalog/client/models/list_tables_response.py +97 -0
- unitycatalog/client/models/list_volumes_response_content.py +97 -0
- unitycatalog/client/models/model_version_info.py +114 -0
- unitycatalog/client/models/model_version_operation.py +38 -0
- unitycatalog/client/models/model_version_status.py +39 -0
- unitycatalog/client/models/path_operation.py +39 -0
- unitycatalog/client/models/permissions_change.py +92 -0
- unitycatalog/client/models/permissions_list.py +95 -0
- unitycatalog/client/models/principal_type.py +37 -0
- unitycatalog/client/models/privilege.py +47 -0
- unitycatalog/client/models/privilege_assignment.py +90 -0
- unitycatalog/client/models/registered_model_info.py +109 -0
- unitycatalog/client/models/schema_info.py +107 -0
- unitycatalog/client/models/securable_type.py +42 -0
- unitycatalog/client/models/table_dependency.py +87 -0
- unitycatalog/client/models/table_info.py +125 -0
- unitycatalog/client/models/table_operation.py +38 -0
- unitycatalog/client/models/table_type.py +37 -0
- unitycatalog/client/models/temporary_credentials.py +105 -0
- unitycatalog/client/models/update_catalog.py +91 -0
- unitycatalog/client/models/update_model_version.py +87 -0
- unitycatalog/client/models/update_permissions.py +95 -0
- unitycatalog/client/models/update_registered_model.py +89 -0
- unitycatalog/client/models/update_schema.py +91 -0
- unitycatalog/client/models/update_volume_request_content.py +90 -0
- unitycatalog/client/models/volume_info.py +113 -0
- unitycatalog/client/models/volume_operation.py +38 -0
- unitycatalog/client/models/volume_type.py +37 -0
- unitycatalog/client/py.typed +0 -0
- unitycatalog/client/rest.py +215 -0
- unitycatalog_client-0.2.1.dist-info/METADATA +199 -0
- unitycatalog_client-0.2.1.dist-info/RECORD +82 -0
- unitycatalog_client-0.2.1.dist-info/WHEEL +4 -0
|
@@ -0,0 +1,1748 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Unity Catalog API
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 0.1
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
import warnings
|
|
15
|
+
from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
|
|
16
|
+
from typing import Any, Dict, List, Optional, Tuple, Union
|
|
17
|
+
from typing_extensions import Annotated
|
|
18
|
+
|
|
19
|
+
from pydantic import Field, StrictInt, StrictStr
|
|
20
|
+
from typing import Any, Optional
|
|
21
|
+
from typing_extensions import Annotated
|
|
22
|
+
from unitycatalog.client.models.create_model_version import CreateModelVersion
|
|
23
|
+
from unitycatalog.client.models.finalize_model_version import FinalizeModelVersion
|
|
24
|
+
from unitycatalog.client.models.list_model_versions_response import ListModelVersionsResponse
|
|
25
|
+
from unitycatalog.client.models.model_version_info import ModelVersionInfo
|
|
26
|
+
from unitycatalog.client.models.update_model_version import UpdateModelVersion
|
|
27
|
+
|
|
28
|
+
from unitycatalog.client.api_client import ApiClient, RequestSerialized
|
|
29
|
+
from unitycatalog.client.api_response import ApiResponse
|
|
30
|
+
from unitycatalog.client.rest import RESTResponseType
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
class ModelVersionsApi:
|
|
34
|
+
"""NOTE: This class is auto generated by OpenAPI Generator
|
|
35
|
+
Ref: https://openapi-generator.tech
|
|
36
|
+
|
|
37
|
+
Do not edit the class manually.
|
|
38
|
+
"""
|
|
39
|
+
|
|
40
|
+
def __init__(self, api_client=None) -> None:
|
|
41
|
+
if api_client is None:
|
|
42
|
+
api_client = ApiClient.get_default()
|
|
43
|
+
self.api_client = api_client
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
@validate_call
|
|
47
|
+
async def create_model_version(
|
|
48
|
+
self,
|
|
49
|
+
create_model_version: Optional[CreateModelVersion] = None,
|
|
50
|
+
_request_timeout: Union[
|
|
51
|
+
None,
|
|
52
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
53
|
+
Tuple[
|
|
54
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
55
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
56
|
+
]
|
|
57
|
+
] = None,
|
|
58
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
59
|
+
_content_type: Optional[StrictStr] = None,
|
|
60
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
61
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
62
|
+
) -> ModelVersionInfo:
|
|
63
|
+
"""Create a model version.
|
|
64
|
+
|
|
65
|
+
Creates a new model version instance.
|
|
66
|
+
|
|
67
|
+
:param create_model_version:
|
|
68
|
+
:type create_model_version: CreateModelVersion
|
|
69
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
70
|
+
number provided, it will be total request
|
|
71
|
+
timeout. It can also be a pair (tuple) of
|
|
72
|
+
(connection, read) timeouts.
|
|
73
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
74
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
75
|
+
request; this effectively ignores the
|
|
76
|
+
authentication in the spec for a single request.
|
|
77
|
+
:type _request_auth: dict, optional
|
|
78
|
+
:param _content_type: force content-type for the request.
|
|
79
|
+
:type _content_type: str, Optional
|
|
80
|
+
:param _headers: set to override the headers for a single
|
|
81
|
+
request; this effectively ignores the headers
|
|
82
|
+
in the spec for a single request.
|
|
83
|
+
:type _headers: dict, optional
|
|
84
|
+
:param _host_index: set to override the host_index for a single
|
|
85
|
+
request; this effectively ignores the host_index
|
|
86
|
+
in the spec for a single request.
|
|
87
|
+
:type _host_index: int, optional
|
|
88
|
+
:return: Returns the result object.
|
|
89
|
+
""" # noqa: E501
|
|
90
|
+
|
|
91
|
+
_param = self._create_model_version_serialize(
|
|
92
|
+
create_model_version=create_model_version,
|
|
93
|
+
_request_auth=_request_auth,
|
|
94
|
+
_content_type=_content_type,
|
|
95
|
+
_headers=_headers,
|
|
96
|
+
_host_index=_host_index
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
100
|
+
'200': "ModelVersionInfo",
|
|
101
|
+
}
|
|
102
|
+
response_data = await self.api_client.call_api(
|
|
103
|
+
*_param,
|
|
104
|
+
_request_timeout=_request_timeout
|
|
105
|
+
)
|
|
106
|
+
await response_data.read()
|
|
107
|
+
return self.api_client.response_deserialize(
|
|
108
|
+
response_data=response_data,
|
|
109
|
+
response_types_map=_response_types_map,
|
|
110
|
+
).data
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
@validate_call
|
|
114
|
+
async def create_model_version_with_http_info(
|
|
115
|
+
self,
|
|
116
|
+
create_model_version: Optional[CreateModelVersion] = None,
|
|
117
|
+
_request_timeout: Union[
|
|
118
|
+
None,
|
|
119
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
120
|
+
Tuple[
|
|
121
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
122
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
123
|
+
]
|
|
124
|
+
] = None,
|
|
125
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
126
|
+
_content_type: Optional[StrictStr] = None,
|
|
127
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
128
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
129
|
+
) -> ApiResponse[ModelVersionInfo]:
|
|
130
|
+
"""Create a model version.
|
|
131
|
+
|
|
132
|
+
Creates a new model version instance.
|
|
133
|
+
|
|
134
|
+
:param create_model_version:
|
|
135
|
+
:type create_model_version: CreateModelVersion
|
|
136
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
137
|
+
number provided, it will be total request
|
|
138
|
+
timeout. It can also be a pair (tuple) of
|
|
139
|
+
(connection, read) timeouts.
|
|
140
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
141
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
142
|
+
request; this effectively ignores the
|
|
143
|
+
authentication in the spec for a single request.
|
|
144
|
+
:type _request_auth: dict, optional
|
|
145
|
+
:param _content_type: force content-type for the request.
|
|
146
|
+
:type _content_type: str, Optional
|
|
147
|
+
:param _headers: set to override the headers for a single
|
|
148
|
+
request; this effectively ignores the headers
|
|
149
|
+
in the spec for a single request.
|
|
150
|
+
:type _headers: dict, optional
|
|
151
|
+
:param _host_index: set to override the host_index for a single
|
|
152
|
+
request; this effectively ignores the host_index
|
|
153
|
+
in the spec for a single request.
|
|
154
|
+
:type _host_index: int, optional
|
|
155
|
+
:return: Returns the result object.
|
|
156
|
+
""" # noqa: E501
|
|
157
|
+
|
|
158
|
+
_param = self._create_model_version_serialize(
|
|
159
|
+
create_model_version=create_model_version,
|
|
160
|
+
_request_auth=_request_auth,
|
|
161
|
+
_content_type=_content_type,
|
|
162
|
+
_headers=_headers,
|
|
163
|
+
_host_index=_host_index
|
|
164
|
+
)
|
|
165
|
+
|
|
166
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
167
|
+
'200': "ModelVersionInfo",
|
|
168
|
+
}
|
|
169
|
+
response_data = await self.api_client.call_api(
|
|
170
|
+
*_param,
|
|
171
|
+
_request_timeout=_request_timeout
|
|
172
|
+
)
|
|
173
|
+
await response_data.read()
|
|
174
|
+
return self.api_client.response_deserialize(
|
|
175
|
+
response_data=response_data,
|
|
176
|
+
response_types_map=_response_types_map,
|
|
177
|
+
)
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
@validate_call
|
|
181
|
+
async def create_model_version_without_preload_content(
|
|
182
|
+
self,
|
|
183
|
+
create_model_version: Optional[CreateModelVersion] = None,
|
|
184
|
+
_request_timeout: Union[
|
|
185
|
+
None,
|
|
186
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
187
|
+
Tuple[
|
|
188
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
189
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
190
|
+
]
|
|
191
|
+
] = None,
|
|
192
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
193
|
+
_content_type: Optional[StrictStr] = None,
|
|
194
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
195
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
196
|
+
) -> RESTResponseType:
|
|
197
|
+
"""Create a model version.
|
|
198
|
+
|
|
199
|
+
Creates a new model version instance.
|
|
200
|
+
|
|
201
|
+
:param create_model_version:
|
|
202
|
+
:type create_model_version: CreateModelVersion
|
|
203
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
204
|
+
number provided, it will be total request
|
|
205
|
+
timeout. It can also be a pair (tuple) of
|
|
206
|
+
(connection, read) timeouts.
|
|
207
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
208
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
209
|
+
request; this effectively ignores the
|
|
210
|
+
authentication in the spec for a single request.
|
|
211
|
+
:type _request_auth: dict, optional
|
|
212
|
+
:param _content_type: force content-type for the request.
|
|
213
|
+
:type _content_type: str, Optional
|
|
214
|
+
:param _headers: set to override the headers for a single
|
|
215
|
+
request; this effectively ignores the headers
|
|
216
|
+
in the spec for a single request.
|
|
217
|
+
:type _headers: dict, optional
|
|
218
|
+
:param _host_index: set to override the host_index for a single
|
|
219
|
+
request; this effectively ignores the host_index
|
|
220
|
+
in the spec for a single request.
|
|
221
|
+
:type _host_index: int, optional
|
|
222
|
+
:return: Returns the result object.
|
|
223
|
+
""" # noqa: E501
|
|
224
|
+
|
|
225
|
+
_param = self._create_model_version_serialize(
|
|
226
|
+
create_model_version=create_model_version,
|
|
227
|
+
_request_auth=_request_auth,
|
|
228
|
+
_content_type=_content_type,
|
|
229
|
+
_headers=_headers,
|
|
230
|
+
_host_index=_host_index
|
|
231
|
+
)
|
|
232
|
+
|
|
233
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
234
|
+
'200': "ModelVersionInfo",
|
|
235
|
+
}
|
|
236
|
+
response_data = await self.api_client.call_api(
|
|
237
|
+
*_param,
|
|
238
|
+
_request_timeout=_request_timeout
|
|
239
|
+
)
|
|
240
|
+
return response_data.response
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
def _create_model_version_serialize(
|
|
244
|
+
self,
|
|
245
|
+
create_model_version,
|
|
246
|
+
_request_auth,
|
|
247
|
+
_content_type,
|
|
248
|
+
_headers,
|
|
249
|
+
_host_index,
|
|
250
|
+
) -> RequestSerialized:
|
|
251
|
+
|
|
252
|
+
_host = None
|
|
253
|
+
|
|
254
|
+
_collection_formats: Dict[str, str] = {
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
_path_params: Dict[str, str] = {}
|
|
258
|
+
_query_params: List[Tuple[str, str]] = []
|
|
259
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
260
|
+
_form_params: List[Tuple[str, str]] = []
|
|
261
|
+
_files: Dict[str, Union[str, bytes]] = {}
|
|
262
|
+
_body_params: Optional[bytes] = None
|
|
263
|
+
|
|
264
|
+
# process the path parameters
|
|
265
|
+
# process the query parameters
|
|
266
|
+
# process the header parameters
|
|
267
|
+
# process the form parameters
|
|
268
|
+
# process the body parameter
|
|
269
|
+
if create_model_version is not None:
|
|
270
|
+
_body_params = create_model_version
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
# set the HTTP header `Accept`
|
|
274
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
275
|
+
[
|
|
276
|
+
'application/json'
|
|
277
|
+
]
|
|
278
|
+
)
|
|
279
|
+
|
|
280
|
+
# set the HTTP header `Content-Type`
|
|
281
|
+
if _content_type:
|
|
282
|
+
_header_params['Content-Type'] = _content_type
|
|
283
|
+
else:
|
|
284
|
+
_default_content_type = (
|
|
285
|
+
self.api_client.select_header_content_type(
|
|
286
|
+
[
|
|
287
|
+
'application/json'
|
|
288
|
+
]
|
|
289
|
+
)
|
|
290
|
+
)
|
|
291
|
+
if _default_content_type is not None:
|
|
292
|
+
_header_params['Content-Type'] = _default_content_type
|
|
293
|
+
|
|
294
|
+
# authentication setting
|
|
295
|
+
_auth_settings: List[str] = [
|
|
296
|
+
]
|
|
297
|
+
|
|
298
|
+
return self.api_client.param_serialize(
|
|
299
|
+
method='POST',
|
|
300
|
+
resource_path='/models/versions',
|
|
301
|
+
path_params=_path_params,
|
|
302
|
+
query_params=_query_params,
|
|
303
|
+
header_params=_header_params,
|
|
304
|
+
body=_body_params,
|
|
305
|
+
post_params=_form_params,
|
|
306
|
+
files=_files,
|
|
307
|
+
auth_settings=_auth_settings,
|
|
308
|
+
collection_formats=_collection_formats,
|
|
309
|
+
_host=_host,
|
|
310
|
+
_request_auth=_request_auth
|
|
311
|
+
)
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
@validate_call
|
|
317
|
+
async def delete_model_version(
|
|
318
|
+
self,
|
|
319
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
320
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
321
|
+
_request_timeout: Union[
|
|
322
|
+
None,
|
|
323
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
324
|
+
Tuple[
|
|
325
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
326
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
327
|
+
]
|
|
328
|
+
] = None,
|
|
329
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
330
|
+
_content_type: Optional[StrictStr] = None,
|
|
331
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
332
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
333
|
+
) -> object:
|
|
334
|
+
"""Delete a model version
|
|
335
|
+
|
|
336
|
+
Deletes the specified model version.
|
|
337
|
+
|
|
338
|
+
:param full_name: Full name of the model. (required)
|
|
339
|
+
:type full_name: str
|
|
340
|
+
:param version: Version number of the model version. (required)
|
|
341
|
+
:type version: int
|
|
342
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
343
|
+
number provided, it will be total request
|
|
344
|
+
timeout. It can also be a pair (tuple) of
|
|
345
|
+
(connection, read) timeouts.
|
|
346
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
347
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
348
|
+
request; this effectively ignores the
|
|
349
|
+
authentication in the spec for a single request.
|
|
350
|
+
:type _request_auth: dict, optional
|
|
351
|
+
:param _content_type: force content-type for the request.
|
|
352
|
+
:type _content_type: str, Optional
|
|
353
|
+
:param _headers: set to override the headers for a single
|
|
354
|
+
request; this effectively ignores the headers
|
|
355
|
+
in the spec for a single request.
|
|
356
|
+
:type _headers: dict, optional
|
|
357
|
+
:param _host_index: set to override the host_index for a single
|
|
358
|
+
request; this effectively ignores the host_index
|
|
359
|
+
in the spec for a single request.
|
|
360
|
+
:type _host_index: int, optional
|
|
361
|
+
:return: Returns the result object.
|
|
362
|
+
""" # noqa: E501
|
|
363
|
+
|
|
364
|
+
_param = self._delete_model_version_serialize(
|
|
365
|
+
full_name=full_name,
|
|
366
|
+
version=version,
|
|
367
|
+
_request_auth=_request_auth,
|
|
368
|
+
_content_type=_content_type,
|
|
369
|
+
_headers=_headers,
|
|
370
|
+
_host_index=_host_index
|
|
371
|
+
)
|
|
372
|
+
|
|
373
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
374
|
+
'200': "object",
|
|
375
|
+
}
|
|
376
|
+
response_data = await self.api_client.call_api(
|
|
377
|
+
*_param,
|
|
378
|
+
_request_timeout=_request_timeout
|
|
379
|
+
)
|
|
380
|
+
await response_data.read()
|
|
381
|
+
return self.api_client.response_deserialize(
|
|
382
|
+
response_data=response_data,
|
|
383
|
+
response_types_map=_response_types_map,
|
|
384
|
+
).data
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
@validate_call
|
|
388
|
+
async def delete_model_version_with_http_info(
|
|
389
|
+
self,
|
|
390
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
391
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
392
|
+
_request_timeout: Union[
|
|
393
|
+
None,
|
|
394
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
395
|
+
Tuple[
|
|
396
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
397
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
398
|
+
]
|
|
399
|
+
] = None,
|
|
400
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
401
|
+
_content_type: Optional[StrictStr] = None,
|
|
402
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
403
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
404
|
+
) -> ApiResponse[object]:
|
|
405
|
+
"""Delete a model version
|
|
406
|
+
|
|
407
|
+
Deletes the specified model version.
|
|
408
|
+
|
|
409
|
+
:param full_name: Full name of the model. (required)
|
|
410
|
+
:type full_name: str
|
|
411
|
+
:param version: Version number of the model version. (required)
|
|
412
|
+
:type version: int
|
|
413
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
414
|
+
number provided, it will be total request
|
|
415
|
+
timeout. It can also be a pair (tuple) of
|
|
416
|
+
(connection, read) timeouts.
|
|
417
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
418
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
419
|
+
request; this effectively ignores the
|
|
420
|
+
authentication in the spec for a single request.
|
|
421
|
+
:type _request_auth: dict, optional
|
|
422
|
+
:param _content_type: force content-type for the request.
|
|
423
|
+
:type _content_type: str, Optional
|
|
424
|
+
:param _headers: set to override the headers for a single
|
|
425
|
+
request; this effectively ignores the headers
|
|
426
|
+
in the spec for a single request.
|
|
427
|
+
:type _headers: dict, optional
|
|
428
|
+
:param _host_index: set to override the host_index for a single
|
|
429
|
+
request; this effectively ignores the host_index
|
|
430
|
+
in the spec for a single request.
|
|
431
|
+
:type _host_index: int, optional
|
|
432
|
+
:return: Returns the result object.
|
|
433
|
+
""" # noqa: E501
|
|
434
|
+
|
|
435
|
+
_param = self._delete_model_version_serialize(
|
|
436
|
+
full_name=full_name,
|
|
437
|
+
version=version,
|
|
438
|
+
_request_auth=_request_auth,
|
|
439
|
+
_content_type=_content_type,
|
|
440
|
+
_headers=_headers,
|
|
441
|
+
_host_index=_host_index
|
|
442
|
+
)
|
|
443
|
+
|
|
444
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
445
|
+
'200': "object",
|
|
446
|
+
}
|
|
447
|
+
response_data = await self.api_client.call_api(
|
|
448
|
+
*_param,
|
|
449
|
+
_request_timeout=_request_timeout
|
|
450
|
+
)
|
|
451
|
+
await response_data.read()
|
|
452
|
+
return self.api_client.response_deserialize(
|
|
453
|
+
response_data=response_data,
|
|
454
|
+
response_types_map=_response_types_map,
|
|
455
|
+
)
|
|
456
|
+
|
|
457
|
+
|
|
458
|
+
@validate_call
|
|
459
|
+
async def delete_model_version_without_preload_content(
|
|
460
|
+
self,
|
|
461
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
462
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
463
|
+
_request_timeout: Union[
|
|
464
|
+
None,
|
|
465
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
466
|
+
Tuple[
|
|
467
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
468
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
469
|
+
]
|
|
470
|
+
] = None,
|
|
471
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
472
|
+
_content_type: Optional[StrictStr] = None,
|
|
473
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
474
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
475
|
+
) -> RESTResponseType:
|
|
476
|
+
"""Delete a model version
|
|
477
|
+
|
|
478
|
+
Deletes the specified model version.
|
|
479
|
+
|
|
480
|
+
:param full_name: Full name of the model. (required)
|
|
481
|
+
:type full_name: str
|
|
482
|
+
:param version: Version number of the model version. (required)
|
|
483
|
+
:type version: int
|
|
484
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
485
|
+
number provided, it will be total request
|
|
486
|
+
timeout. It can also be a pair (tuple) of
|
|
487
|
+
(connection, read) timeouts.
|
|
488
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
489
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
490
|
+
request; this effectively ignores the
|
|
491
|
+
authentication in the spec for a single request.
|
|
492
|
+
:type _request_auth: dict, optional
|
|
493
|
+
:param _content_type: force content-type for the request.
|
|
494
|
+
:type _content_type: str, Optional
|
|
495
|
+
:param _headers: set to override the headers for a single
|
|
496
|
+
request; this effectively ignores the headers
|
|
497
|
+
in the spec for a single request.
|
|
498
|
+
:type _headers: dict, optional
|
|
499
|
+
:param _host_index: set to override the host_index for a single
|
|
500
|
+
request; this effectively ignores the host_index
|
|
501
|
+
in the spec for a single request.
|
|
502
|
+
:type _host_index: int, optional
|
|
503
|
+
:return: Returns the result object.
|
|
504
|
+
""" # noqa: E501
|
|
505
|
+
|
|
506
|
+
_param = self._delete_model_version_serialize(
|
|
507
|
+
full_name=full_name,
|
|
508
|
+
version=version,
|
|
509
|
+
_request_auth=_request_auth,
|
|
510
|
+
_content_type=_content_type,
|
|
511
|
+
_headers=_headers,
|
|
512
|
+
_host_index=_host_index
|
|
513
|
+
)
|
|
514
|
+
|
|
515
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
516
|
+
'200': "object",
|
|
517
|
+
}
|
|
518
|
+
response_data = await self.api_client.call_api(
|
|
519
|
+
*_param,
|
|
520
|
+
_request_timeout=_request_timeout
|
|
521
|
+
)
|
|
522
|
+
return response_data.response
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
def _delete_model_version_serialize(
|
|
526
|
+
self,
|
|
527
|
+
full_name,
|
|
528
|
+
version,
|
|
529
|
+
_request_auth,
|
|
530
|
+
_content_type,
|
|
531
|
+
_headers,
|
|
532
|
+
_host_index,
|
|
533
|
+
) -> RequestSerialized:
|
|
534
|
+
|
|
535
|
+
_host = None
|
|
536
|
+
|
|
537
|
+
_collection_formats: Dict[str, str] = {
|
|
538
|
+
}
|
|
539
|
+
|
|
540
|
+
_path_params: Dict[str, str] = {}
|
|
541
|
+
_query_params: List[Tuple[str, str]] = []
|
|
542
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
543
|
+
_form_params: List[Tuple[str, str]] = []
|
|
544
|
+
_files: Dict[str, Union[str, bytes]] = {}
|
|
545
|
+
_body_params: Optional[bytes] = None
|
|
546
|
+
|
|
547
|
+
# process the path parameters
|
|
548
|
+
if full_name is not None:
|
|
549
|
+
_path_params['full_name'] = full_name
|
|
550
|
+
if version is not None:
|
|
551
|
+
_path_params['version'] = version
|
|
552
|
+
# process the query parameters
|
|
553
|
+
# process the header parameters
|
|
554
|
+
# process the form parameters
|
|
555
|
+
# process the body parameter
|
|
556
|
+
|
|
557
|
+
|
|
558
|
+
# set the HTTP header `Accept`
|
|
559
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
560
|
+
[
|
|
561
|
+
'application/json'
|
|
562
|
+
]
|
|
563
|
+
)
|
|
564
|
+
|
|
565
|
+
|
|
566
|
+
# authentication setting
|
|
567
|
+
_auth_settings: List[str] = [
|
|
568
|
+
]
|
|
569
|
+
|
|
570
|
+
return self.api_client.param_serialize(
|
|
571
|
+
method='DELETE',
|
|
572
|
+
resource_path='/models/{full_name}/versions/{version}',
|
|
573
|
+
path_params=_path_params,
|
|
574
|
+
query_params=_query_params,
|
|
575
|
+
header_params=_header_params,
|
|
576
|
+
body=_body_params,
|
|
577
|
+
post_params=_form_params,
|
|
578
|
+
files=_files,
|
|
579
|
+
auth_settings=_auth_settings,
|
|
580
|
+
collection_formats=_collection_formats,
|
|
581
|
+
_host=_host,
|
|
582
|
+
_request_auth=_request_auth
|
|
583
|
+
)
|
|
584
|
+
|
|
585
|
+
|
|
586
|
+
|
|
587
|
+
|
|
588
|
+
@validate_call
|
|
589
|
+
async def finalize_model_version(
|
|
590
|
+
self,
|
|
591
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
592
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
593
|
+
finalize_model_version: Optional[FinalizeModelVersion] = None,
|
|
594
|
+
_request_timeout: Union[
|
|
595
|
+
None,
|
|
596
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
597
|
+
Tuple[
|
|
598
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
599
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
600
|
+
]
|
|
601
|
+
] = None,
|
|
602
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
603
|
+
_content_type: Optional[StrictStr] = None,
|
|
604
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
605
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
606
|
+
) -> ModelVersionInfo:
|
|
607
|
+
"""Finalize a model version
|
|
608
|
+
|
|
609
|
+
Finalizes the status of the specified model version.
|
|
610
|
+
|
|
611
|
+
:param full_name: Full name of the model. (required)
|
|
612
|
+
:type full_name: str
|
|
613
|
+
:param version: Version number of the model version. (required)
|
|
614
|
+
:type version: int
|
|
615
|
+
:param finalize_model_version:
|
|
616
|
+
:type finalize_model_version: FinalizeModelVersion
|
|
617
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
618
|
+
number provided, it will be total request
|
|
619
|
+
timeout. It can also be a pair (tuple) of
|
|
620
|
+
(connection, read) timeouts.
|
|
621
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
622
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
623
|
+
request; this effectively ignores the
|
|
624
|
+
authentication in the spec for a single request.
|
|
625
|
+
:type _request_auth: dict, optional
|
|
626
|
+
:param _content_type: force content-type for the request.
|
|
627
|
+
:type _content_type: str, Optional
|
|
628
|
+
:param _headers: set to override the headers for a single
|
|
629
|
+
request; this effectively ignores the headers
|
|
630
|
+
in the spec for a single request.
|
|
631
|
+
:type _headers: dict, optional
|
|
632
|
+
:param _host_index: set to override the host_index for a single
|
|
633
|
+
request; this effectively ignores the host_index
|
|
634
|
+
in the spec for a single request.
|
|
635
|
+
:type _host_index: int, optional
|
|
636
|
+
:return: Returns the result object.
|
|
637
|
+
""" # noqa: E501
|
|
638
|
+
|
|
639
|
+
_param = self._finalize_model_version_serialize(
|
|
640
|
+
full_name=full_name,
|
|
641
|
+
version=version,
|
|
642
|
+
finalize_model_version=finalize_model_version,
|
|
643
|
+
_request_auth=_request_auth,
|
|
644
|
+
_content_type=_content_type,
|
|
645
|
+
_headers=_headers,
|
|
646
|
+
_host_index=_host_index
|
|
647
|
+
)
|
|
648
|
+
|
|
649
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
650
|
+
'200': "ModelVersionInfo",
|
|
651
|
+
}
|
|
652
|
+
response_data = await self.api_client.call_api(
|
|
653
|
+
*_param,
|
|
654
|
+
_request_timeout=_request_timeout
|
|
655
|
+
)
|
|
656
|
+
await response_data.read()
|
|
657
|
+
return self.api_client.response_deserialize(
|
|
658
|
+
response_data=response_data,
|
|
659
|
+
response_types_map=_response_types_map,
|
|
660
|
+
).data
|
|
661
|
+
|
|
662
|
+
|
|
663
|
+
@validate_call
|
|
664
|
+
async def finalize_model_version_with_http_info(
|
|
665
|
+
self,
|
|
666
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
667
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
668
|
+
finalize_model_version: Optional[FinalizeModelVersion] = None,
|
|
669
|
+
_request_timeout: Union[
|
|
670
|
+
None,
|
|
671
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
672
|
+
Tuple[
|
|
673
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
674
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
675
|
+
]
|
|
676
|
+
] = None,
|
|
677
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
678
|
+
_content_type: Optional[StrictStr] = None,
|
|
679
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
680
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
681
|
+
) -> ApiResponse[ModelVersionInfo]:
|
|
682
|
+
"""Finalize a model version
|
|
683
|
+
|
|
684
|
+
Finalizes the status of the specified model version.
|
|
685
|
+
|
|
686
|
+
:param full_name: Full name of the model. (required)
|
|
687
|
+
:type full_name: str
|
|
688
|
+
:param version: Version number of the model version. (required)
|
|
689
|
+
:type version: int
|
|
690
|
+
:param finalize_model_version:
|
|
691
|
+
:type finalize_model_version: FinalizeModelVersion
|
|
692
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
693
|
+
number provided, it will be total request
|
|
694
|
+
timeout. It can also be a pair (tuple) of
|
|
695
|
+
(connection, read) timeouts.
|
|
696
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
697
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
698
|
+
request; this effectively ignores the
|
|
699
|
+
authentication in the spec for a single request.
|
|
700
|
+
:type _request_auth: dict, optional
|
|
701
|
+
:param _content_type: force content-type for the request.
|
|
702
|
+
:type _content_type: str, Optional
|
|
703
|
+
:param _headers: set to override the headers for a single
|
|
704
|
+
request; this effectively ignores the headers
|
|
705
|
+
in the spec for a single request.
|
|
706
|
+
:type _headers: dict, optional
|
|
707
|
+
:param _host_index: set to override the host_index for a single
|
|
708
|
+
request; this effectively ignores the host_index
|
|
709
|
+
in the spec for a single request.
|
|
710
|
+
:type _host_index: int, optional
|
|
711
|
+
:return: Returns the result object.
|
|
712
|
+
""" # noqa: E501
|
|
713
|
+
|
|
714
|
+
_param = self._finalize_model_version_serialize(
|
|
715
|
+
full_name=full_name,
|
|
716
|
+
version=version,
|
|
717
|
+
finalize_model_version=finalize_model_version,
|
|
718
|
+
_request_auth=_request_auth,
|
|
719
|
+
_content_type=_content_type,
|
|
720
|
+
_headers=_headers,
|
|
721
|
+
_host_index=_host_index
|
|
722
|
+
)
|
|
723
|
+
|
|
724
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
725
|
+
'200': "ModelVersionInfo",
|
|
726
|
+
}
|
|
727
|
+
response_data = await self.api_client.call_api(
|
|
728
|
+
*_param,
|
|
729
|
+
_request_timeout=_request_timeout
|
|
730
|
+
)
|
|
731
|
+
await response_data.read()
|
|
732
|
+
return self.api_client.response_deserialize(
|
|
733
|
+
response_data=response_data,
|
|
734
|
+
response_types_map=_response_types_map,
|
|
735
|
+
)
|
|
736
|
+
|
|
737
|
+
|
|
738
|
+
@validate_call
|
|
739
|
+
async def finalize_model_version_without_preload_content(
|
|
740
|
+
self,
|
|
741
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
742
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
743
|
+
finalize_model_version: Optional[FinalizeModelVersion] = None,
|
|
744
|
+
_request_timeout: Union[
|
|
745
|
+
None,
|
|
746
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
747
|
+
Tuple[
|
|
748
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
749
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
750
|
+
]
|
|
751
|
+
] = None,
|
|
752
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
753
|
+
_content_type: Optional[StrictStr] = None,
|
|
754
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
755
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
756
|
+
) -> RESTResponseType:
|
|
757
|
+
"""Finalize a model version
|
|
758
|
+
|
|
759
|
+
Finalizes the status of the specified model version.
|
|
760
|
+
|
|
761
|
+
:param full_name: Full name of the model. (required)
|
|
762
|
+
:type full_name: str
|
|
763
|
+
:param version: Version number of the model version. (required)
|
|
764
|
+
:type version: int
|
|
765
|
+
:param finalize_model_version:
|
|
766
|
+
:type finalize_model_version: FinalizeModelVersion
|
|
767
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
768
|
+
number provided, it will be total request
|
|
769
|
+
timeout. It can also be a pair (tuple) of
|
|
770
|
+
(connection, read) timeouts.
|
|
771
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
772
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
773
|
+
request; this effectively ignores the
|
|
774
|
+
authentication in the spec for a single request.
|
|
775
|
+
:type _request_auth: dict, optional
|
|
776
|
+
:param _content_type: force content-type for the request.
|
|
777
|
+
:type _content_type: str, Optional
|
|
778
|
+
:param _headers: set to override the headers for a single
|
|
779
|
+
request; this effectively ignores the headers
|
|
780
|
+
in the spec for a single request.
|
|
781
|
+
:type _headers: dict, optional
|
|
782
|
+
:param _host_index: set to override the host_index for a single
|
|
783
|
+
request; this effectively ignores the host_index
|
|
784
|
+
in the spec for a single request.
|
|
785
|
+
:type _host_index: int, optional
|
|
786
|
+
:return: Returns the result object.
|
|
787
|
+
""" # noqa: E501
|
|
788
|
+
|
|
789
|
+
_param = self._finalize_model_version_serialize(
|
|
790
|
+
full_name=full_name,
|
|
791
|
+
version=version,
|
|
792
|
+
finalize_model_version=finalize_model_version,
|
|
793
|
+
_request_auth=_request_auth,
|
|
794
|
+
_content_type=_content_type,
|
|
795
|
+
_headers=_headers,
|
|
796
|
+
_host_index=_host_index
|
|
797
|
+
)
|
|
798
|
+
|
|
799
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
800
|
+
'200': "ModelVersionInfo",
|
|
801
|
+
}
|
|
802
|
+
response_data = await self.api_client.call_api(
|
|
803
|
+
*_param,
|
|
804
|
+
_request_timeout=_request_timeout
|
|
805
|
+
)
|
|
806
|
+
return response_data.response
|
|
807
|
+
|
|
808
|
+
|
|
809
|
+
def _finalize_model_version_serialize(
|
|
810
|
+
self,
|
|
811
|
+
full_name,
|
|
812
|
+
version,
|
|
813
|
+
finalize_model_version,
|
|
814
|
+
_request_auth,
|
|
815
|
+
_content_type,
|
|
816
|
+
_headers,
|
|
817
|
+
_host_index,
|
|
818
|
+
) -> RequestSerialized:
|
|
819
|
+
|
|
820
|
+
_host = None
|
|
821
|
+
|
|
822
|
+
_collection_formats: Dict[str, str] = {
|
|
823
|
+
}
|
|
824
|
+
|
|
825
|
+
_path_params: Dict[str, str] = {}
|
|
826
|
+
_query_params: List[Tuple[str, str]] = []
|
|
827
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
828
|
+
_form_params: List[Tuple[str, str]] = []
|
|
829
|
+
_files: Dict[str, Union[str, bytes]] = {}
|
|
830
|
+
_body_params: Optional[bytes] = None
|
|
831
|
+
|
|
832
|
+
# process the path parameters
|
|
833
|
+
if full_name is not None:
|
|
834
|
+
_path_params['full_name'] = full_name
|
|
835
|
+
if version is not None:
|
|
836
|
+
_path_params['version'] = version
|
|
837
|
+
# process the query parameters
|
|
838
|
+
# process the header parameters
|
|
839
|
+
# process the form parameters
|
|
840
|
+
# process the body parameter
|
|
841
|
+
if finalize_model_version is not None:
|
|
842
|
+
_body_params = finalize_model_version
|
|
843
|
+
|
|
844
|
+
|
|
845
|
+
# set the HTTP header `Accept`
|
|
846
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
847
|
+
[
|
|
848
|
+
'application/json'
|
|
849
|
+
]
|
|
850
|
+
)
|
|
851
|
+
|
|
852
|
+
# set the HTTP header `Content-Type`
|
|
853
|
+
if _content_type:
|
|
854
|
+
_header_params['Content-Type'] = _content_type
|
|
855
|
+
else:
|
|
856
|
+
_default_content_type = (
|
|
857
|
+
self.api_client.select_header_content_type(
|
|
858
|
+
[
|
|
859
|
+
'application/json'
|
|
860
|
+
]
|
|
861
|
+
)
|
|
862
|
+
)
|
|
863
|
+
if _default_content_type is not None:
|
|
864
|
+
_header_params['Content-Type'] = _default_content_type
|
|
865
|
+
|
|
866
|
+
# authentication setting
|
|
867
|
+
_auth_settings: List[str] = [
|
|
868
|
+
]
|
|
869
|
+
|
|
870
|
+
return self.api_client.param_serialize(
|
|
871
|
+
method='PATCH',
|
|
872
|
+
resource_path='/models/{full_name}/versions/{version}/finalize',
|
|
873
|
+
path_params=_path_params,
|
|
874
|
+
query_params=_query_params,
|
|
875
|
+
header_params=_header_params,
|
|
876
|
+
body=_body_params,
|
|
877
|
+
post_params=_form_params,
|
|
878
|
+
files=_files,
|
|
879
|
+
auth_settings=_auth_settings,
|
|
880
|
+
collection_formats=_collection_formats,
|
|
881
|
+
_host=_host,
|
|
882
|
+
_request_auth=_request_auth
|
|
883
|
+
)
|
|
884
|
+
|
|
885
|
+
|
|
886
|
+
|
|
887
|
+
|
|
888
|
+
@validate_call
|
|
889
|
+
async def get_model_version(
|
|
890
|
+
self,
|
|
891
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
892
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
893
|
+
_request_timeout: Union[
|
|
894
|
+
None,
|
|
895
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
896
|
+
Tuple[
|
|
897
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
898
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
899
|
+
]
|
|
900
|
+
] = None,
|
|
901
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
902
|
+
_content_type: Optional[StrictStr] = None,
|
|
903
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
904
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
905
|
+
) -> ModelVersionInfo:
|
|
906
|
+
"""Get a model version
|
|
907
|
+
|
|
908
|
+
Gets a specific model version for a specific model.
|
|
909
|
+
|
|
910
|
+
:param full_name: Full name of the model. (required)
|
|
911
|
+
:type full_name: str
|
|
912
|
+
:param version: Version number of the model version. (required)
|
|
913
|
+
:type version: int
|
|
914
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
915
|
+
number provided, it will be total request
|
|
916
|
+
timeout. It can also be a pair (tuple) of
|
|
917
|
+
(connection, read) timeouts.
|
|
918
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
919
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
920
|
+
request; this effectively ignores the
|
|
921
|
+
authentication in the spec for a single request.
|
|
922
|
+
:type _request_auth: dict, optional
|
|
923
|
+
:param _content_type: force content-type for the request.
|
|
924
|
+
:type _content_type: str, Optional
|
|
925
|
+
:param _headers: set to override the headers for a single
|
|
926
|
+
request; this effectively ignores the headers
|
|
927
|
+
in the spec for a single request.
|
|
928
|
+
:type _headers: dict, optional
|
|
929
|
+
:param _host_index: set to override the host_index for a single
|
|
930
|
+
request; this effectively ignores the host_index
|
|
931
|
+
in the spec for a single request.
|
|
932
|
+
:type _host_index: int, optional
|
|
933
|
+
:return: Returns the result object.
|
|
934
|
+
""" # noqa: E501
|
|
935
|
+
|
|
936
|
+
_param = self._get_model_version_serialize(
|
|
937
|
+
full_name=full_name,
|
|
938
|
+
version=version,
|
|
939
|
+
_request_auth=_request_auth,
|
|
940
|
+
_content_type=_content_type,
|
|
941
|
+
_headers=_headers,
|
|
942
|
+
_host_index=_host_index
|
|
943
|
+
)
|
|
944
|
+
|
|
945
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
946
|
+
'200': "ModelVersionInfo",
|
|
947
|
+
}
|
|
948
|
+
response_data = await self.api_client.call_api(
|
|
949
|
+
*_param,
|
|
950
|
+
_request_timeout=_request_timeout
|
|
951
|
+
)
|
|
952
|
+
await response_data.read()
|
|
953
|
+
return self.api_client.response_deserialize(
|
|
954
|
+
response_data=response_data,
|
|
955
|
+
response_types_map=_response_types_map,
|
|
956
|
+
).data
|
|
957
|
+
|
|
958
|
+
|
|
959
|
+
@validate_call
|
|
960
|
+
async def get_model_version_with_http_info(
|
|
961
|
+
self,
|
|
962
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
963
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
964
|
+
_request_timeout: Union[
|
|
965
|
+
None,
|
|
966
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
967
|
+
Tuple[
|
|
968
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
969
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
970
|
+
]
|
|
971
|
+
] = None,
|
|
972
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
973
|
+
_content_type: Optional[StrictStr] = None,
|
|
974
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
975
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
976
|
+
) -> ApiResponse[ModelVersionInfo]:
|
|
977
|
+
"""Get a model version
|
|
978
|
+
|
|
979
|
+
Gets a specific model version for a specific model.
|
|
980
|
+
|
|
981
|
+
:param full_name: Full name of the model. (required)
|
|
982
|
+
:type full_name: str
|
|
983
|
+
:param version: Version number of the model version. (required)
|
|
984
|
+
:type version: int
|
|
985
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
986
|
+
number provided, it will be total request
|
|
987
|
+
timeout. It can also be a pair (tuple) of
|
|
988
|
+
(connection, read) timeouts.
|
|
989
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
990
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
991
|
+
request; this effectively ignores the
|
|
992
|
+
authentication in the spec for a single request.
|
|
993
|
+
:type _request_auth: dict, optional
|
|
994
|
+
:param _content_type: force content-type for the request.
|
|
995
|
+
:type _content_type: str, Optional
|
|
996
|
+
:param _headers: set to override the headers for a single
|
|
997
|
+
request; this effectively ignores the headers
|
|
998
|
+
in the spec for a single request.
|
|
999
|
+
:type _headers: dict, optional
|
|
1000
|
+
:param _host_index: set to override the host_index for a single
|
|
1001
|
+
request; this effectively ignores the host_index
|
|
1002
|
+
in the spec for a single request.
|
|
1003
|
+
:type _host_index: int, optional
|
|
1004
|
+
:return: Returns the result object.
|
|
1005
|
+
""" # noqa: E501
|
|
1006
|
+
|
|
1007
|
+
_param = self._get_model_version_serialize(
|
|
1008
|
+
full_name=full_name,
|
|
1009
|
+
version=version,
|
|
1010
|
+
_request_auth=_request_auth,
|
|
1011
|
+
_content_type=_content_type,
|
|
1012
|
+
_headers=_headers,
|
|
1013
|
+
_host_index=_host_index
|
|
1014
|
+
)
|
|
1015
|
+
|
|
1016
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
1017
|
+
'200': "ModelVersionInfo",
|
|
1018
|
+
}
|
|
1019
|
+
response_data = await self.api_client.call_api(
|
|
1020
|
+
*_param,
|
|
1021
|
+
_request_timeout=_request_timeout
|
|
1022
|
+
)
|
|
1023
|
+
await response_data.read()
|
|
1024
|
+
return self.api_client.response_deserialize(
|
|
1025
|
+
response_data=response_data,
|
|
1026
|
+
response_types_map=_response_types_map,
|
|
1027
|
+
)
|
|
1028
|
+
|
|
1029
|
+
|
|
1030
|
+
@validate_call
|
|
1031
|
+
async def get_model_version_without_preload_content(
|
|
1032
|
+
self,
|
|
1033
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
1034
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
1035
|
+
_request_timeout: Union[
|
|
1036
|
+
None,
|
|
1037
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1038
|
+
Tuple[
|
|
1039
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1040
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
1041
|
+
]
|
|
1042
|
+
] = None,
|
|
1043
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
1044
|
+
_content_type: Optional[StrictStr] = None,
|
|
1045
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1046
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1047
|
+
) -> RESTResponseType:
|
|
1048
|
+
"""Get a model version
|
|
1049
|
+
|
|
1050
|
+
Gets a specific model version for a specific model.
|
|
1051
|
+
|
|
1052
|
+
:param full_name: Full name of the model. (required)
|
|
1053
|
+
:type full_name: str
|
|
1054
|
+
:param version: Version number of the model version. (required)
|
|
1055
|
+
:type version: int
|
|
1056
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
1057
|
+
number provided, it will be total request
|
|
1058
|
+
timeout. It can also be a pair (tuple) of
|
|
1059
|
+
(connection, read) timeouts.
|
|
1060
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
1061
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
1062
|
+
request; this effectively ignores the
|
|
1063
|
+
authentication in the spec for a single request.
|
|
1064
|
+
:type _request_auth: dict, optional
|
|
1065
|
+
:param _content_type: force content-type for the request.
|
|
1066
|
+
:type _content_type: str, Optional
|
|
1067
|
+
:param _headers: set to override the headers for a single
|
|
1068
|
+
request; this effectively ignores the headers
|
|
1069
|
+
in the spec for a single request.
|
|
1070
|
+
:type _headers: dict, optional
|
|
1071
|
+
:param _host_index: set to override the host_index for a single
|
|
1072
|
+
request; this effectively ignores the host_index
|
|
1073
|
+
in the spec for a single request.
|
|
1074
|
+
:type _host_index: int, optional
|
|
1075
|
+
:return: Returns the result object.
|
|
1076
|
+
""" # noqa: E501
|
|
1077
|
+
|
|
1078
|
+
_param = self._get_model_version_serialize(
|
|
1079
|
+
full_name=full_name,
|
|
1080
|
+
version=version,
|
|
1081
|
+
_request_auth=_request_auth,
|
|
1082
|
+
_content_type=_content_type,
|
|
1083
|
+
_headers=_headers,
|
|
1084
|
+
_host_index=_host_index
|
|
1085
|
+
)
|
|
1086
|
+
|
|
1087
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
1088
|
+
'200': "ModelVersionInfo",
|
|
1089
|
+
}
|
|
1090
|
+
response_data = await self.api_client.call_api(
|
|
1091
|
+
*_param,
|
|
1092
|
+
_request_timeout=_request_timeout
|
|
1093
|
+
)
|
|
1094
|
+
return response_data.response
|
|
1095
|
+
|
|
1096
|
+
|
|
1097
|
+
def _get_model_version_serialize(
|
|
1098
|
+
self,
|
|
1099
|
+
full_name,
|
|
1100
|
+
version,
|
|
1101
|
+
_request_auth,
|
|
1102
|
+
_content_type,
|
|
1103
|
+
_headers,
|
|
1104
|
+
_host_index,
|
|
1105
|
+
) -> RequestSerialized:
|
|
1106
|
+
|
|
1107
|
+
_host = None
|
|
1108
|
+
|
|
1109
|
+
_collection_formats: Dict[str, str] = {
|
|
1110
|
+
}
|
|
1111
|
+
|
|
1112
|
+
_path_params: Dict[str, str] = {}
|
|
1113
|
+
_query_params: List[Tuple[str, str]] = []
|
|
1114
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
1115
|
+
_form_params: List[Tuple[str, str]] = []
|
|
1116
|
+
_files: Dict[str, Union[str, bytes]] = {}
|
|
1117
|
+
_body_params: Optional[bytes] = None
|
|
1118
|
+
|
|
1119
|
+
# process the path parameters
|
|
1120
|
+
if full_name is not None:
|
|
1121
|
+
_path_params['full_name'] = full_name
|
|
1122
|
+
if version is not None:
|
|
1123
|
+
_path_params['version'] = version
|
|
1124
|
+
# process the query parameters
|
|
1125
|
+
# process the header parameters
|
|
1126
|
+
# process the form parameters
|
|
1127
|
+
# process the body parameter
|
|
1128
|
+
|
|
1129
|
+
|
|
1130
|
+
# set the HTTP header `Accept`
|
|
1131
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
1132
|
+
[
|
|
1133
|
+
'application/json'
|
|
1134
|
+
]
|
|
1135
|
+
)
|
|
1136
|
+
|
|
1137
|
+
|
|
1138
|
+
# authentication setting
|
|
1139
|
+
_auth_settings: List[str] = [
|
|
1140
|
+
]
|
|
1141
|
+
|
|
1142
|
+
return self.api_client.param_serialize(
|
|
1143
|
+
method='GET',
|
|
1144
|
+
resource_path='/models/{full_name}/versions/{version}',
|
|
1145
|
+
path_params=_path_params,
|
|
1146
|
+
query_params=_query_params,
|
|
1147
|
+
header_params=_header_params,
|
|
1148
|
+
body=_body_params,
|
|
1149
|
+
post_params=_form_params,
|
|
1150
|
+
files=_files,
|
|
1151
|
+
auth_settings=_auth_settings,
|
|
1152
|
+
collection_formats=_collection_formats,
|
|
1153
|
+
_host=_host,
|
|
1154
|
+
_request_auth=_request_auth
|
|
1155
|
+
)
|
|
1156
|
+
|
|
1157
|
+
|
|
1158
|
+
|
|
1159
|
+
|
|
1160
|
+
@validate_call
|
|
1161
|
+
async def list_model_versions(
|
|
1162
|
+
self,
|
|
1163
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the registered model.")],
|
|
1164
|
+
max_results: Annotated[Optional[Annotated[int, Field(le=50, strict=True)]], Field(description="Maximum number of model versions to return. - when set to a value greater than 0, the page length is the minimum of this value and a server configured value; - when set to 0, the page length is set to a server configured value; - when set to a value less than 0, an invalid parameter error is returned; ")] = None,
|
|
1165
|
+
page_token: Annotated[Optional[StrictStr], Field(description="Opaque token to send for the next page of results (pagination).")] = None,
|
|
1166
|
+
_request_timeout: Union[
|
|
1167
|
+
None,
|
|
1168
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1169
|
+
Tuple[
|
|
1170
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1171
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
1172
|
+
]
|
|
1173
|
+
] = None,
|
|
1174
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
1175
|
+
_content_type: Optional[StrictStr] = None,
|
|
1176
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1177
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1178
|
+
) -> ListModelVersionsResponse:
|
|
1179
|
+
"""List model versions of the specified registered model.
|
|
1180
|
+
|
|
1181
|
+
Gets the paginated list of all available model versions under the specified registered model. There is no guarantee of a specific ordering of the elements in the array.
|
|
1182
|
+
|
|
1183
|
+
:param full_name: Full name of the registered model. (required)
|
|
1184
|
+
:type full_name: str
|
|
1185
|
+
:param max_results: Maximum number of model versions to return. - when set to a value greater than 0, the page length is the minimum of this value and a server configured value; - when set to 0, the page length is set to a server configured value; - when set to a value less than 0, an invalid parameter error is returned;
|
|
1186
|
+
:type max_results: int
|
|
1187
|
+
:param page_token: Opaque token to send for the next page of results (pagination).
|
|
1188
|
+
:type page_token: str
|
|
1189
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
1190
|
+
number provided, it will be total request
|
|
1191
|
+
timeout. It can also be a pair (tuple) of
|
|
1192
|
+
(connection, read) timeouts.
|
|
1193
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
1194
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
1195
|
+
request; this effectively ignores the
|
|
1196
|
+
authentication in the spec for a single request.
|
|
1197
|
+
:type _request_auth: dict, optional
|
|
1198
|
+
:param _content_type: force content-type for the request.
|
|
1199
|
+
:type _content_type: str, Optional
|
|
1200
|
+
:param _headers: set to override the headers for a single
|
|
1201
|
+
request; this effectively ignores the headers
|
|
1202
|
+
in the spec for a single request.
|
|
1203
|
+
:type _headers: dict, optional
|
|
1204
|
+
:param _host_index: set to override the host_index for a single
|
|
1205
|
+
request; this effectively ignores the host_index
|
|
1206
|
+
in the spec for a single request.
|
|
1207
|
+
:type _host_index: int, optional
|
|
1208
|
+
:return: Returns the result object.
|
|
1209
|
+
""" # noqa: E501
|
|
1210
|
+
|
|
1211
|
+
_param = self._list_model_versions_serialize(
|
|
1212
|
+
full_name=full_name,
|
|
1213
|
+
max_results=max_results,
|
|
1214
|
+
page_token=page_token,
|
|
1215
|
+
_request_auth=_request_auth,
|
|
1216
|
+
_content_type=_content_type,
|
|
1217
|
+
_headers=_headers,
|
|
1218
|
+
_host_index=_host_index
|
|
1219
|
+
)
|
|
1220
|
+
|
|
1221
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
1222
|
+
'200': "ListModelVersionsResponse",
|
|
1223
|
+
}
|
|
1224
|
+
response_data = await self.api_client.call_api(
|
|
1225
|
+
*_param,
|
|
1226
|
+
_request_timeout=_request_timeout
|
|
1227
|
+
)
|
|
1228
|
+
await response_data.read()
|
|
1229
|
+
return self.api_client.response_deserialize(
|
|
1230
|
+
response_data=response_data,
|
|
1231
|
+
response_types_map=_response_types_map,
|
|
1232
|
+
).data
|
|
1233
|
+
|
|
1234
|
+
|
|
1235
|
+
@validate_call
|
|
1236
|
+
async def list_model_versions_with_http_info(
|
|
1237
|
+
self,
|
|
1238
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the registered model.")],
|
|
1239
|
+
max_results: Annotated[Optional[Annotated[int, Field(le=50, strict=True)]], Field(description="Maximum number of model versions to return. - when set to a value greater than 0, the page length is the minimum of this value and a server configured value; - when set to 0, the page length is set to a server configured value; - when set to a value less than 0, an invalid parameter error is returned; ")] = None,
|
|
1240
|
+
page_token: Annotated[Optional[StrictStr], Field(description="Opaque token to send for the next page of results (pagination).")] = None,
|
|
1241
|
+
_request_timeout: Union[
|
|
1242
|
+
None,
|
|
1243
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1244
|
+
Tuple[
|
|
1245
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1246
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
1247
|
+
]
|
|
1248
|
+
] = None,
|
|
1249
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
1250
|
+
_content_type: Optional[StrictStr] = None,
|
|
1251
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1252
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1253
|
+
) -> ApiResponse[ListModelVersionsResponse]:
|
|
1254
|
+
"""List model versions of the specified registered model.
|
|
1255
|
+
|
|
1256
|
+
Gets the paginated list of all available model versions under the specified registered model. There is no guarantee of a specific ordering of the elements in the array.
|
|
1257
|
+
|
|
1258
|
+
:param full_name: Full name of the registered model. (required)
|
|
1259
|
+
:type full_name: str
|
|
1260
|
+
:param max_results: Maximum number of model versions to return. - when set to a value greater than 0, the page length is the minimum of this value and a server configured value; - when set to 0, the page length is set to a server configured value; - when set to a value less than 0, an invalid parameter error is returned;
|
|
1261
|
+
:type max_results: int
|
|
1262
|
+
:param page_token: Opaque token to send for the next page of results (pagination).
|
|
1263
|
+
:type page_token: str
|
|
1264
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
1265
|
+
number provided, it will be total request
|
|
1266
|
+
timeout. It can also be a pair (tuple) of
|
|
1267
|
+
(connection, read) timeouts.
|
|
1268
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
1269
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
1270
|
+
request; this effectively ignores the
|
|
1271
|
+
authentication in the spec for a single request.
|
|
1272
|
+
:type _request_auth: dict, optional
|
|
1273
|
+
:param _content_type: force content-type for the request.
|
|
1274
|
+
:type _content_type: str, Optional
|
|
1275
|
+
:param _headers: set to override the headers for a single
|
|
1276
|
+
request; this effectively ignores the headers
|
|
1277
|
+
in the spec for a single request.
|
|
1278
|
+
:type _headers: dict, optional
|
|
1279
|
+
:param _host_index: set to override the host_index for a single
|
|
1280
|
+
request; this effectively ignores the host_index
|
|
1281
|
+
in the spec for a single request.
|
|
1282
|
+
:type _host_index: int, optional
|
|
1283
|
+
:return: Returns the result object.
|
|
1284
|
+
""" # noqa: E501
|
|
1285
|
+
|
|
1286
|
+
_param = self._list_model_versions_serialize(
|
|
1287
|
+
full_name=full_name,
|
|
1288
|
+
max_results=max_results,
|
|
1289
|
+
page_token=page_token,
|
|
1290
|
+
_request_auth=_request_auth,
|
|
1291
|
+
_content_type=_content_type,
|
|
1292
|
+
_headers=_headers,
|
|
1293
|
+
_host_index=_host_index
|
|
1294
|
+
)
|
|
1295
|
+
|
|
1296
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
1297
|
+
'200': "ListModelVersionsResponse",
|
|
1298
|
+
}
|
|
1299
|
+
response_data = await self.api_client.call_api(
|
|
1300
|
+
*_param,
|
|
1301
|
+
_request_timeout=_request_timeout
|
|
1302
|
+
)
|
|
1303
|
+
await response_data.read()
|
|
1304
|
+
return self.api_client.response_deserialize(
|
|
1305
|
+
response_data=response_data,
|
|
1306
|
+
response_types_map=_response_types_map,
|
|
1307
|
+
)
|
|
1308
|
+
|
|
1309
|
+
|
|
1310
|
+
@validate_call
|
|
1311
|
+
async def list_model_versions_without_preload_content(
|
|
1312
|
+
self,
|
|
1313
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the registered model.")],
|
|
1314
|
+
max_results: Annotated[Optional[Annotated[int, Field(le=50, strict=True)]], Field(description="Maximum number of model versions to return. - when set to a value greater than 0, the page length is the minimum of this value and a server configured value; - when set to 0, the page length is set to a server configured value; - when set to a value less than 0, an invalid parameter error is returned; ")] = None,
|
|
1315
|
+
page_token: Annotated[Optional[StrictStr], Field(description="Opaque token to send for the next page of results (pagination).")] = None,
|
|
1316
|
+
_request_timeout: Union[
|
|
1317
|
+
None,
|
|
1318
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1319
|
+
Tuple[
|
|
1320
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1321
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
1322
|
+
]
|
|
1323
|
+
] = None,
|
|
1324
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
1325
|
+
_content_type: Optional[StrictStr] = None,
|
|
1326
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1327
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1328
|
+
) -> RESTResponseType:
|
|
1329
|
+
"""List model versions of the specified registered model.
|
|
1330
|
+
|
|
1331
|
+
Gets the paginated list of all available model versions under the specified registered model. There is no guarantee of a specific ordering of the elements in the array.
|
|
1332
|
+
|
|
1333
|
+
:param full_name: Full name of the registered model. (required)
|
|
1334
|
+
:type full_name: str
|
|
1335
|
+
:param max_results: Maximum number of model versions to return. - when set to a value greater than 0, the page length is the minimum of this value and a server configured value; - when set to 0, the page length is set to a server configured value; - when set to a value less than 0, an invalid parameter error is returned;
|
|
1336
|
+
:type max_results: int
|
|
1337
|
+
:param page_token: Opaque token to send for the next page of results (pagination).
|
|
1338
|
+
:type page_token: str
|
|
1339
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
1340
|
+
number provided, it will be total request
|
|
1341
|
+
timeout. It can also be a pair (tuple) of
|
|
1342
|
+
(connection, read) timeouts.
|
|
1343
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
1344
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
1345
|
+
request; this effectively ignores the
|
|
1346
|
+
authentication in the spec for a single request.
|
|
1347
|
+
:type _request_auth: dict, optional
|
|
1348
|
+
:param _content_type: force content-type for the request.
|
|
1349
|
+
:type _content_type: str, Optional
|
|
1350
|
+
:param _headers: set to override the headers for a single
|
|
1351
|
+
request; this effectively ignores the headers
|
|
1352
|
+
in the spec for a single request.
|
|
1353
|
+
:type _headers: dict, optional
|
|
1354
|
+
:param _host_index: set to override the host_index for a single
|
|
1355
|
+
request; this effectively ignores the host_index
|
|
1356
|
+
in the spec for a single request.
|
|
1357
|
+
:type _host_index: int, optional
|
|
1358
|
+
:return: Returns the result object.
|
|
1359
|
+
""" # noqa: E501
|
|
1360
|
+
|
|
1361
|
+
_param = self._list_model_versions_serialize(
|
|
1362
|
+
full_name=full_name,
|
|
1363
|
+
max_results=max_results,
|
|
1364
|
+
page_token=page_token,
|
|
1365
|
+
_request_auth=_request_auth,
|
|
1366
|
+
_content_type=_content_type,
|
|
1367
|
+
_headers=_headers,
|
|
1368
|
+
_host_index=_host_index
|
|
1369
|
+
)
|
|
1370
|
+
|
|
1371
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
1372
|
+
'200': "ListModelVersionsResponse",
|
|
1373
|
+
}
|
|
1374
|
+
response_data = await self.api_client.call_api(
|
|
1375
|
+
*_param,
|
|
1376
|
+
_request_timeout=_request_timeout
|
|
1377
|
+
)
|
|
1378
|
+
return response_data.response
|
|
1379
|
+
|
|
1380
|
+
|
|
1381
|
+
def _list_model_versions_serialize(
|
|
1382
|
+
self,
|
|
1383
|
+
full_name,
|
|
1384
|
+
max_results,
|
|
1385
|
+
page_token,
|
|
1386
|
+
_request_auth,
|
|
1387
|
+
_content_type,
|
|
1388
|
+
_headers,
|
|
1389
|
+
_host_index,
|
|
1390
|
+
) -> RequestSerialized:
|
|
1391
|
+
|
|
1392
|
+
_host = None
|
|
1393
|
+
|
|
1394
|
+
_collection_formats: Dict[str, str] = {
|
|
1395
|
+
}
|
|
1396
|
+
|
|
1397
|
+
_path_params: Dict[str, str] = {}
|
|
1398
|
+
_query_params: List[Tuple[str, str]] = []
|
|
1399
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
1400
|
+
_form_params: List[Tuple[str, str]] = []
|
|
1401
|
+
_files: Dict[str, Union[str, bytes]] = {}
|
|
1402
|
+
_body_params: Optional[bytes] = None
|
|
1403
|
+
|
|
1404
|
+
# process the path parameters
|
|
1405
|
+
if full_name is not None:
|
|
1406
|
+
_path_params['full_name'] = full_name
|
|
1407
|
+
# process the query parameters
|
|
1408
|
+
if max_results is not None:
|
|
1409
|
+
|
|
1410
|
+
_query_params.append(('max_results', max_results))
|
|
1411
|
+
|
|
1412
|
+
if page_token is not None:
|
|
1413
|
+
|
|
1414
|
+
_query_params.append(('page_token', page_token))
|
|
1415
|
+
|
|
1416
|
+
# process the header parameters
|
|
1417
|
+
# process the form parameters
|
|
1418
|
+
# process the body parameter
|
|
1419
|
+
|
|
1420
|
+
|
|
1421
|
+
# set the HTTP header `Accept`
|
|
1422
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
1423
|
+
[
|
|
1424
|
+
'application/json'
|
|
1425
|
+
]
|
|
1426
|
+
)
|
|
1427
|
+
|
|
1428
|
+
|
|
1429
|
+
# authentication setting
|
|
1430
|
+
_auth_settings: List[str] = [
|
|
1431
|
+
]
|
|
1432
|
+
|
|
1433
|
+
return self.api_client.param_serialize(
|
|
1434
|
+
method='GET',
|
|
1435
|
+
resource_path='/models/{full_name}/versions',
|
|
1436
|
+
path_params=_path_params,
|
|
1437
|
+
query_params=_query_params,
|
|
1438
|
+
header_params=_header_params,
|
|
1439
|
+
body=_body_params,
|
|
1440
|
+
post_params=_form_params,
|
|
1441
|
+
files=_files,
|
|
1442
|
+
auth_settings=_auth_settings,
|
|
1443
|
+
collection_formats=_collection_formats,
|
|
1444
|
+
_host=_host,
|
|
1445
|
+
_request_auth=_request_auth
|
|
1446
|
+
)
|
|
1447
|
+
|
|
1448
|
+
|
|
1449
|
+
|
|
1450
|
+
|
|
1451
|
+
@validate_call
|
|
1452
|
+
async def update_model_version(
|
|
1453
|
+
self,
|
|
1454
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
1455
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
1456
|
+
update_model_version: Optional[UpdateModelVersion] = None,
|
|
1457
|
+
_request_timeout: Union[
|
|
1458
|
+
None,
|
|
1459
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1460
|
+
Tuple[
|
|
1461
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1462
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
1463
|
+
]
|
|
1464
|
+
] = None,
|
|
1465
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
1466
|
+
_content_type: Optional[StrictStr] = None,
|
|
1467
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1468
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1469
|
+
) -> ModelVersionInfo:
|
|
1470
|
+
"""Update a model version
|
|
1471
|
+
|
|
1472
|
+
Updates the specified model version.
|
|
1473
|
+
|
|
1474
|
+
:param full_name: Full name of the model. (required)
|
|
1475
|
+
:type full_name: str
|
|
1476
|
+
:param version: Version number of the model version. (required)
|
|
1477
|
+
:type version: int
|
|
1478
|
+
:param update_model_version:
|
|
1479
|
+
:type update_model_version: UpdateModelVersion
|
|
1480
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
1481
|
+
number provided, it will be total request
|
|
1482
|
+
timeout. It can also be a pair (tuple) of
|
|
1483
|
+
(connection, read) timeouts.
|
|
1484
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
1485
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
1486
|
+
request; this effectively ignores the
|
|
1487
|
+
authentication in the spec for a single request.
|
|
1488
|
+
:type _request_auth: dict, optional
|
|
1489
|
+
:param _content_type: force content-type for the request.
|
|
1490
|
+
:type _content_type: str, Optional
|
|
1491
|
+
:param _headers: set to override the headers for a single
|
|
1492
|
+
request; this effectively ignores the headers
|
|
1493
|
+
in the spec for a single request.
|
|
1494
|
+
:type _headers: dict, optional
|
|
1495
|
+
:param _host_index: set to override the host_index for a single
|
|
1496
|
+
request; this effectively ignores the host_index
|
|
1497
|
+
in the spec for a single request.
|
|
1498
|
+
:type _host_index: int, optional
|
|
1499
|
+
:return: Returns the result object.
|
|
1500
|
+
""" # noqa: E501
|
|
1501
|
+
|
|
1502
|
+
_param = self._update_model_version_serialize(
|
|
1503
|
+
full_name=full_name,
|
|
1504
|
+
version=version,
|
|
1505
|
+
update_model_version=update_model_version,
|
|
1506
|
+
_request_auth=_request_auth,
|
|
1507
|
+
_content_type=_content_type,
|
|
1508
|
+
_headers=_headers,
|
|
1509
|
+
_host_index=_host_index
|
|
1510
|
+
)
|
|
1511
|
+
|
|
1512
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
1513
|
+
'200': "ModelVersionInfo",
|
|
1514
|
+
}
|
|
1515
|
+
response_data = await self.api_client.call_api(
|
|
1516
|
+
*_param,
|
|
1517
|
+
_request_timeout=_request_timeout
|
|
1518
|
+
)
|
|
1519
|
+
await response_data.read()
|
|
1520
|
+
return self.api_client.response_deserialize(
|
|
1521
|
+
response_data=response_data,
|
|
1522
|
+
response_types_map=_response_types_map,
|
|
1523
|
+
).data
|
|
1524
|
+
|
|
1525
|
+
|
|
1526
|
+
@validate_call
|
|
1527
|
+
async def update_model_version_with_http_info(
|
|
1528
|
+
self,
|
|
1529
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
1530
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
1531
|
+
update_model_version: Optional[UpdateModelVersion] = None,
|
|
1532
|
+
_request_timeout: Union[
|
|
1533
|
+
None,
|
|
1534
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1535
|
+
Tuple[
|
|
1536
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1537
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
1538
|
+
]
|
|
1539
|
+
] = None,
|
|
1540
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
1541
|
+
_content_type: Optional[StrictStr] = None,
|
|
1542
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1543
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1544
|
+
) -> ApiResponse[ModelVersionInfo]:
|
|
1545
|
+
"""Update a model version
|
|
1546
|
+
|
|
1547
|
+
Updates the specified model version.
|
|
1548
|
+
|
|
1549
|
+
:param full_name: Full name of the model. (required)
|
|
1550
|
+
:type full_name: str
|
|
1551
|
+
:param version: Version number of the model version. (required)
|
|
1552
|
+
:type version: int
|
|
1553
|
+
:param update_model_version:
|
|
1554
|
+
:type update_model_version: UpdateModelVersion
|
|
1555
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
1556
|
+
number provided, it will be total request
|
|
1557
|
+
timeout. It can also be a pair (tuple) of
|
|
1558
|
+
(connection, read) timeouts.
|
|
1559
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
1560
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
1561
|
+
request; this effectively ignores the
|
|
1562
|
+
authentication in the spec for a single request.
|
|
1563
|
+
:type _request_auth: dict, optional
|
|
1564
|
+
:param _content_type: force content-type for the request.
|
|
1565
|
+
:type _content_type: str, Optional
|
|
1566
|
+
:param _headers: set to override the headers for a single
|
|
1567
|
+
request; this effectively ignores the headers
|
|
1568
|
+
in the spec for a single request.
|
|
1569
|
+
:type _headers: dict, optional
|
|
1570
|
+
:param _host_index: set to override the host_index for a single
|
|
1571
|
+
request; this effectively ignores the host_index
|
|
1572
|
+
in the spec for a single request.
|
|
1573
|
+
:type _host_index: int, optional
|
|
1574
|
+
:return: Returns the result object.
|
|
1575
|
+
""" # noqa: E501
|
|
1576
|
+
|
|
1577
|
+
_param = self._update_model_version_serialize(
|
|
1578
|
+
full_name=full_name,
|
|
1579
|
+
version=version,
|
|
1580
|
+
update_model_version=update_model_version,
|
|
1581
|
+
_request_auth=_request_auth,
|
|
1582
|
+
_content_type=_content_type,
|
|
1583
|
+
_headers=_headers,
|
|
1584
|
+
_host_index=_host_index
|
|
1585
|
+
)
|
|
1586
|
+
|
|
1587
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
1588
|
+
'200': "ModelVersionInfo",
|
|
1589
|
+
}
|
|
1590
|
+
response_data = await self.api_client.call_api(
|
|
1591
|
+
*_param,
|
|
1592
|
+
_request_timeout=_request_timeout
|
|
1593
|
+
)
|
|
1594
|
+
await response_data.read()
|
|
1595
|
+
return self.api_client.response_deserialize(
|
|
1596
|
+
response_data=response_data,
|
|
1597
|
+
response_types_map=_response_types_map,
|
|
1598
|
+
)
|
|
1599
|
+
|
|
1600
|
+
|
|
1601
|
+
@validate_call
|
|
1602
|
+
async def update_model_version_without_preload_content(
|
|
1603
|
+
self,
|
|
1604
|
+
full_name: Annotated[StrictStr, Field(description="Full name of the model.")],
|
|
1605
|
+
version: Annotated[StrictInt, Field(description="Version number of the model version.")],
|
|
1606
|
+
update_model_version: Optional[UpdateModelVersion] = None,
|
|
1607
|
+
_request_timeout: Union[
|
|
1608
|
+
None,
|
|
1609
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1610
|
+
Tuple[
|
|
1611
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
1612
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
1613
|
+
]
|
|
1614
|
+
] = None,
|
|
1615
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
1616
|
+
_content_type: Optional[StrictStr] = None,
|
|
1617
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1618
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1619
|
+
) -> RESTResponseType:
|
|
1620
|
+
"""Update a model version
|
|
1621
|
+
|
|
1622
|
+
Updates the specified model version.
|
|
1623
|
+
|
|
1624
|
+
:param full_name: Full name of the model. (required)
|
|
1625
|
+
:type full_name: str
|
|
1626
|
+
:param version: Version number of the model version. (required)
|
|
1627
|
+
:type version: int
|
|
1628
|
+
:param update_model_version:
|
|
1629
|
+
:type update_model_version: UpdateModelVersion
|
|
1630
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
1631
|
+
number provided, it will be total request
|
|
1632
|
+
timeout. It can also be a pair (tuple) of
|
|
1633
|
+
(connection, read) timeouts.
|
|
1634
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
1635
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
1636
|
+
request; this effectively ignores the
|
|
1637
|
+
authentication in the spec for a single request.
|
|
1638
|
+
:type _request_auth: dict, optional
|
|
1639
|
+
:param _content_type: force content-type for the request.
|
|
1640
|
+
:type _content_type: str, Optional
|
|
1641
|
+
:param _headers: set to override the headers for a single
|
|
1642
|
+
request; this effectively ignores the headers
|
|
1643
|
+
in the spec for a single request.
|
|
1644
|
+
:type _headers: dict, optional
|
|
1645
|
+
:param _host_index: set to override the host_index for a single
|
|
1646
|
+
request; this effectively ignores the host_index
|
|
1647
|
+
in the spec for a single request.
|
|
1648
|
+
:type _host_index: int, optional
|
|
1649
|
+
:return: Returns the result object.
|
|
1650
|
+
""" # noqa: E501
|
|
1651
|
+
|
|
1652
|
+
_param = self._update_model_version_serialize(
|
|
1653
|
+
full_name=full_name,
|
|
1654
|
+
version=version,
|
|
1655
|
+
update_model_version=update_model_version,
|
|
1656
|
+
_request_auth=_request_auth,
|
|
1657
|
+
_content_type=_content_type,
|
|
1658
|
+
_headers=_headers,
|
|
1659
|
+
_host_index=_host_index
|
|
1660
|
+
)
|
|
1661
|
+
|
|
1662
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
1663
|
+
'200': "ModelVersionInfo",
|
|
1664
|
+
}
|
|
1665
|
+
response_data = await self.api_client.call_api(
|
|
1666
|
+
*_param,
|
|
1667
|
+
_request_timeout=_request_timeout
|
|
1668
|
+
)
|
|
1669
|
+
return response_data.response
|
|
1670
|
+
|
|
1671
|
+
|
|
1672
|
+
def _update_model_version_serialize(
|
|
1673
|
+
self,
|
|
1674
|
+
full_name,
|
|
1675
|
+
version,
|
|
1676
|
+
update_model_version,
|
|
1677
|
+
_request_auth,
|
|
1678
|
+
_content_type,
|
|
1679
|
+
_headers,
|
|
1680
|
+
_host_index,
|
|
1681
|
+
) -> RequestSerialized:
|
|
1682
|
+
|
|
1683
|
+
_host = None
|
|
1684
|
+
|
|
1685
|
+
_collection_formats: Dict[str, str] = {
|
|
1686
|
+
}
|
|
1687
|
+
|
|
1688
|
+
_path_params: Dict[str, str] = {}
|
|
1689
|
+
_query_params: List[Tuple[str, str]] = []
|
|
1690
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
1691
|
+
_form_params: List[Tuple[str, str]] = []
|
|
1692
|
+
_files: Dict[str, Union[str, bytes]] = {}
|
|
1693
|
+
_body_params: Optional[bytes] = None
|
|
1694
|
+
|
|
1695
|
+
# process the path parameters
|
|
1696
|
+
if full_name is not None:
|
|
1697
|
+
_path_params['full_name'] = full_name
|
|
1698
|
+
if version is not None:
|
|
1699
|
+
_path_params['version'] = version
|
|
1700
|
+
# process the query parameters
|
|
1701
|
+
# process the header parameters
|
|
1702
|
+
# process the form parameters
|
|
1703
|
+
# process the body parameter
|
|
1704
|
+
if update_model_version is not None:
|
|
1705
|
+
_body_params = update_model_version
|
|
1706
|
+
|
|
1707
|
+
|
|
1708
|
+
# set the HTTP header `Accept`
|
|
1709
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
1710
|
+
[
|
|
1711
|
+
'application/json'
|
|
1712
|
+
]
|
|
1713
|
+
)
|
|
1714
|
+
|
|
1715
|
+
# set the HTTP header `Content-Type`
|
|
1716
|
+
if _content_type:
|
|
1717
|
+
_header_params['Content-Type'] = _content_type
|
|
1718
|
+
else:
|
|
1719
|
+
_default_content_type = (
|
|
1720
|
+
self.api_client.select_header_content_type(
|
|
1721
|
+
[
|
|
1722
|
+
'application/json'
|
|
1723
|
+
]
|
|
1724
|
+
)
|
|
1725
|
+
)
|
|
1726
|
+
if _default_content_type is not None:
|
|
1727
|
+
_header_params['Content-Type'] = _default_content_type
|
|
1728
|
+
|
|
1729
|
+
# authentication setting
|
|
1730
|
+
_auth_settings: List[str] = [
|
|
1731
|
+
]
|
|
1732
|
+
|
|
1733
|
+
return self.api_client.param_serialize(
|
|
1734
|
+
method='PATCH',
|
|
1735
|
+
resource_path='/models/{full_name}/versions/{version}',
|
|
1736
|
+
path_params=_path_params,
|
|
1737
|
+
query_params=_query_params,
|
|
1738
|
+
header_params=_header_params,
|
|
1739
|
+
body=_body_params,
|
|
1740
|
+
post_params=_form_params,
|
|
1741
|
+
files=_files,
|
|
1742
|
+
auth_settings=_auth_settings,
|
|
1743
|
+
collection_formats=_collection_formats,
|
|
1744
|
+
_host=_host,
|
|
1745
|
+
_request_auth=_request_auth
|
|
1746
|
+
)
|
|
1747
|
+
|
|
1748
|
+
|