beamlit 0.0.19__py3-none-any.whl → 0.0.20rc2__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- beamlit/api/agents/create_agent.py +14 -9
- beamlit/api/agents/get_agent_deployment.py +22 -1
- beamlit/api/agents/update_agent.py +14 -9
- beamlit/api/functions/create_function.py +14 -9
- beamlit/api/functions/update_function.py +14 -9
- beamlit/api/{authentication_providers/list_organizations_for_authentication_provider.py → integrations/create_integration_connection.py} +45 -41
- beamlit/api/integrations/delete_integration_connection.py +158 -0
- beamlit/api/integrations/get_integration.py +97 -0
- beamlit/api/integrations/get_integration_connection.py +154 -0
- beamlit/api/integrations/get_integration_connection_model.py +97 -0
- beamlit/api/integrations/get_integration_model.py +97 -0
- beamlit/api/integrations/list_integration_connection_models.py +97 -0
- beamlit/api/{authentication_providers/list_models_for_authentication_provider.py → integrations/list_integration_connections.py} +24 -48
- beamlit/api/integrations/list_integration_models.py +97 -0
- beamlit/api/integrations/update_integration_connection.py +180 -0
- beamlit/authentication/__init__.py +2 -1
- beamlit/authentication/authentication.py +3 -0
- beamlit/authentication/clientcredentials.py +99 -0
- beamlit/authentication/credentials.py +7 -1
- beamlit/authentication/device_mode.py +0 -2
- beamlit/common/generate.py +166 -0
- beamlit/common/logger.py +30 -0
- beamlit/common/settings.py +112 -0
- beamlit/common/utils.py +13 -0
- beamlit/models/__init__.py +50 -24
- beamlit/models/agent_deployment.py +117 -49
- beamlit/models/{agent_deployment_configuration.py → agent_deployment_configuration_type_0.py} +5 -5
- beamlit/models/agent_deployment_history.py +46 -13
- beamlit/models/agent_deployment_history_event.py +78 -22
- beamlit/models/{function_deployment_pod_template.py → agent_deployment_pod_template_type_0.py} +5 -5
- beamlit/models/agent_with_deployments.py +174 -0
- beamlit/models/deployment_configurations.py +19 -6
- beamlit/models/deployment_serverless_config_type_0.py +218 -0
- beamlit/models/environment_metrics.py +19 -0
- beamlit/models/function_deployment.py +110 -42
- beamlit/models/{function_deployment_configuration.py → function_deployment_configuration_type_0.py} +5 -5
- beamlit/models/{agent_deployment_pod_template.py → function_deployment_pod_template_type_0.py} +5 -5
- beamlit/models/function_with_deployments.py +174 -0
- beamlit/models/increase_and_rate_metric.py +102 -0
- beamlit/models/integration.py +196 -0
- beamlit/models/integration_config.py +43 -0
- beamlit/models/integration_connection.py +196 -0
- beamlit/models/integration_connection_config.py +43 -0
- beamlit/models/integration_connection_secret.py +59 -0
- beamlit/models/integration_model.py +142 -0
- beamlit/models/integration_secret.py +59 -0
- beamlit/models/metrics.py +61 -20
- beamlit/models/model_deployment.py +96 -64
- beamlit/models/{model_deployment_pod_template.py → model_deployment_pod_template_type_0.py} +5 -5
- beamlit/models/policy.py +8 -34
- beamlit/models/provider_config.py +0 -9
- beamlit/models/resource_deployment_metrics.py +231 -36
- beamlit/models/resource_deployment_metrics_inference_per_region_type_0.py +75 -0
- beamlit/models/{resource_deployment_metrics_inference_per_second_per_region.py → resource_deployment_metrics_inference_per_second_per_region_type_0.py} +5 -5
- beamlit/models/resource_deployment_metrics_query_per_region_per_code_type_0.py +73 -0
- beamlit/models/{resource_deployment_metrics_query_per_second_per_region_per_code.py → resource_deployment_metrics_query_per_second_per_region_per_code_type_0.py} +5 -5
- beamlit/models/resource_metrics.py +36 -0
- beamlit/models/runtime.py +29 -12
- beamlit/models/{runtime_readiness_probe.py → runtime_readiness_probe_type_0.py} +5 -5
- beamlit/models/store_agent.py +29 -13
- beamlit/models/{store_agent_labels.py → store_agent_labels_type_0.py} +5 -5
- beamlit/models/store_configuration.py +15 -4
- beamlit/models/store_configuration_option.py +18 -5
- beamlit/models/store_function.py +29 -13
- beamlit/models/{store_function_labels.py → store_function_labels_type_0.py} +5 -5
- beamlit/run.py +49 -0
- {beamlit-0.0.19.dist-info → beamlit-0.0.20rc2.dist-info}/METADATA +5 -2
- {beamlit-0.0.19.dist-info → beamlit-0.0.20rc2.dist-info}/RECORD +70 -46
- beamlit/api/authentication_providers/get_model_with_repo_for_authentication_provider.py +0 -184
- beamlit/models/deployment_serverless_config.py +0 -129
- beamlit/models/labels.py +0 -43
- /beamlit/api/{authentication_providers → integrations}/__init__.py +0 -0
- {beamlit-0.0.19.dist-info → beamlit-0.0.20rc2.dist-info}/WHEEL +0 -0
@@ -1,4 +1,4 @@
|
|
1
|
-
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar, Union
|
1
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar, Union, cast
|
2
2
|
|
3
3
|
from attrs import define as _attrs_define
|
4
4
|
from attrs import field as _attrs_field
|
@@ -8,11 +8,17 @@ from ..types import UNSET, Unset
|
|
8
8
|
if TYPE_CHECKING:
|
9
9
|
from ..models.metric import Metric
|
10
10
|
from ..models.qps import QPS
|
11
|
-
from ..models.
|
12
|
-
|
11
|
+
from ..models.resource_deployment_metrics_inference_per_region_type_0 import (
|
12
|
+
ResourceDeploymentMetricsInferencePerRegionType0,
|
13
13
|
)
|
14
|
-
from ..models.
|
15
|
-
|
14
|
+
from ..models.resource_deployment_metrics_inference_per_second_per_region_type_0 import (
|
15
|
+
ResourceDeploymentMetricsInferencePerSecondPerRegionType0,
|
16
|
+
)
|
17
|
+
from ..models.resource_deployment_metrics_query_per_region_per_code_type_0 import (
|
18
|
+
ResourceDeploymentMetricsQueryPerRegionPerCodeType0,
|
19
|
+
)
|
20
|
+
from ..models.resource_deployment_metrics_query_per_second_per_region_per_code_type_0 import (
|
21
|
+
ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0,
|
16
22
|
)
|
17
23
|
|
18
24
|
|
@@ -24,29 +30,75 @@ class ResourceDeploymentMetrics:
|
|
24
30
|
"""Metrics for a single resource deployment (eg. model deployment, function deployment)
|
25
31
|
|
26
32
|
Attributes:
|
33
|
+
inference_global (Union[Unset, List['Metric']]): Array of metrics
|
34
|
+
inference_per_region (Union['ResourceDeploymentMetricsInferencePerRegionType0', None, Unset]): Historical
|
35
|
+
requests (in last 24 hours) per location, for the model deployment
|
27
36
|
inference_per_second_global (Union[Unset, List['Metric']]): Array of metrics
|
28
|
-
inference_per_second_per_region (Union[
|
29
|
-
requests per second (RPS) per location, for the model deployment
|
37
|
+
inference_per_second_per_region (Union['ResourceDeploymentMetricsInferencePerSecondPerRegionType0', None,
|
38
|
+
Unset]): Historical requests per second (RPS) per location, for the model deployment
|
39
|
+
query_global (Union[Unset, float]): Number of requests done on the resource for the model deployment
|
40
|
+
query_per_code_global (Union[Unset, QPS]): Query per second per element, can be per response status code (e.g.
|
41
|
+
200, 400) or per location
|
42
|
+
query_per_region (Union[Unset, QPS]): Query per second per element, can be per response status code (e.g. 200,
|
43
|
+
400) or per location
|
44
|
+
query_per_region_per_code (Union['ResourceDeploymentMetricsQueryPerRegionPerCodeType0', None, Unset]): Number of
|
45
|
+
requests done on the resource for the model deployment
|
30
46
|
query_per_second_global (Union[Unset, float]): RPS value (in last 24 hours) for the model deployment globally
|
31
47
|
query_per_second_per_code_global (Union[Unset, QPS]): Query per second per element, can be per response status
|
32
48
|
code (e.g. 200, 400) or per location
|
33
49
|
query_per_second_per_region (Union[Unset, QPS]): Query per second per element, can be per response status code
|
34
50
|
(e.g. 200, 400) or per location
|
35
|
-
query_per_second_per_region_per_code (Union[
|
36
|
-
RPS value (in last 24 hours) per response status code per location, for the model deployment
|
51
|
+
query_per_second_per_region_per_code (Union['ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0',
|
52
|
+
None, Unset]): RPS value (in last 24 hours) per response status code per location, for the model deployment
|
37
53
|
"""
|
38
54
|
|
55
|
+
inference_global: Union[Unset, List["Metric"]] = UNSET
|
56
|
+
inference_per_region: Union["ResourceDeploymentMetricsInferencePerRegionType0", None, Unset] = UNSET
|
39
57
|
inference_per_second_global: Union[Unset, List["Metric"]] = UNSET
|
40
|
-
inference_per_second_per_region: Union[
|
58
|
+
inference_per_second_per_region: Union["ResourceDeploymentMetricsInferencePerSecondPerRegionType0", None, Unset] = (
|
59
|
+
UNSET
|
60
|
+
)
|
61
|
+
query_global: Union[Unset, float] = UNSET
|
62
|
+
query_per_code_global: Union[Unset, "QPS"] = UNSET
|
63
|
+
query_per_region: Union[Unset, "QPS"] = UNSET
|
64
|
+
query_per_region_per_code: Union["ResourceDeploymentMetricsQueryPerRegionPerCodeType0", None, Unset] = UNSET
|
41
65
|
query_per_second_global: Union[Unset, float] = UNSET
|
42
66
|
query_per_second_per_code_global: Union[Unset, "QPS"] = UNSET
|
43
67
|
query_per_second_per_region: Union[Unset, "QPS"] = UNSET
|
44
|
-
query_per_second_per_region_per_code: Union[
|
45
|
-
|
46
|
-
|
68
|
+
query_per_second_per_region_per_code: Union[
|
69
|
+
"ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0", None, Unset
|
70
|
+
] = UNSET
|
47
71
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
48
72
|
|
49
73
|
def to_dict(self) -> dict[str, Any]:
|
74
|
+
from ..models.resource_deployment_metrics_inference_per_region_type_0 import (
|
75
|
+
ResourceDeploymentMetricsInferencePerRegionType0,
|
76
|
+
)
|
77
|
+
from ..models.resource_deployment_metrics_inference_per_second_per_region_type_0 import (
|
78
|
+
ResourceDeploymentMetricsInferencePerSecondPerRegionType0,
|
79
|
+
)
|
80
|
+
from ..models.resource_deployment_metrics_query_per_region_per_code_type_0 import (
|
81
|
+
ResourceDeploymentMetricsQueryPerRegionPerCodeType0,
|
82
|
+
)
|
83
|
+
from ..models.resource_deployment_metrics_query_per_second_per_region_per_code_type_0 import (
|
84
|
+
ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0,
|
85
|
+
)
|
86
|
+
|
87
|
+
inference_global: Union[Unset, List[Dict[str, Any]]] = UNSET
|
88
|
+
if not isinstance(self.inference_global, Unset):
|
89
|
+
inference_global = []
|
90
|
+
for componentsschemas_array_metric_item_data in self.inference_global:
|
91
|
+
componentsschemas_array_metric_item = componentsschemas_array_metric_item_data.to_dict()
|
92
|
+
inference_global.append(componentsschemas_array_metric_item)
|
93
|
+
|
94
|
+
inference_per_region: Union[Dict[str, Any], None, Unset]
|
95
|
+
if isinstance(self.inference_per_region, Unset):
|
96
|
+
inference_per_region = UNSET
|
97
|
+
elif isinstance(self.inference_per_region, ResourceDeploymentMetricsInferencePerRegionType0):
|
98
|
+
inference_per_region = self.inference_per_region.to_dict()
|
99
|
+
else:
|
100
|
+
inference_per_region = self.inference_per_region
|
101
|
+
|
50
102
|
inference_per_second_global: Union[Unset, List[Dict[str, Any]]] = UNSET
|
51
103
|
if not isinstance(self.inference_per_second_global, Unset):
|
52
104
|
inference_per_second_global = []
|
@@ -54,9 +106,33 @@ class ResourceDeploymentMetrics:
|
|
54
106
|
componentsschemas_array_metric_item = componentsschemas_array_metric_item_data.to_dict()
|
55
107
|
inference_per_second_global.append(componentsschemas_array_metric_item)
|
56
108
|
|
57
|
-
inference_per_second_per_region: Union[
|
58
|
-
if
|
109
|
+
inference_per_second_per_region: Union[Dict[str, Any], None, Unset]
|
110
|
+
if isinstance(self.inference_per_second_per_region, Unset):
|
111
|
+
inference_per_second_per_region = UNSET
|
112
|
+
elif isinstance(
|
113
|
+
self.inference_per_second_per_region, ResourceDeploymentMetricsInferencePerSecondPerRegionType0
|
114
|
+
):
|
59
115
|
inference_per_second_per_region = self.inference_per_second_per_region.to_dict()
|
116
|
+
else:
|
117
|
+
inference_per_second_per_region = self.inference_per_second_per_region
|
118
|
+
|
119
|
+
query_global = self.query_global
|
120
|
+
|
121
|
+
query_per_code_global: Union[Unset, Dict[str, Any]] = UNSET
|
122
|
+
if not isinstance(self.query_per_code_global, Unset):
|
123
|
+
query_per_code_global = self.query_per_code_global.to_dict()
|
124
|
+
|
125
|
+
query_per_region: Union[Unset, Dict[str, Any]] = UNSET
|
126
|
+
if not isinstance(self.query_per_region, Unset):
|
127
|
+
query_per_region = self.query_per_region.to_dict()
|
128
|
+
|
129
|
+
query_per_region_per_code: Union[Dict[str, Any], None, Unset]
|
130
|
+
if isinstance(self.query_per_region_per_code, Unset):
|
131
|
+
query_per_region_per_code = UNSET
|
132
|
+
elif isinstance(self.query_per_region_per_code, ResourceDeploymentMetricsQueryPerRegionPerCodeType0):
|
133
|
+
query_per_region_per_code = self.query_per_region_per_code.to_dict()
|
134
|
+
else:
|
135
|
+
query_per_region_per_code = self.query_per_region_per_code
|
60
136
|
|
61
137
|
query_per_second_global = self.query_per_second_global
|
62
138
|
|
@@ -68,17 +144,35 @@ class ResourceDeploymentMetrics:
|
|
68
144
|
if not isinstance(self.query_per_second_per_region, Unset):
|
69
145
|
query_per_second_per_region = self.query_per_second_per_region.to_dict()
|
70
146
|
|
71
|
-
query_per_second_per_region_per_code: Union[
|
72
|
-
if
|
147
|
+
query_per_second_per_region_per_code: Union[Dict[str, Any], None, Unset]
|
148
|
+
if isinstance(self.query_per_second_per_region_per_code, Unset):
|
149
|
+
query_per_second_per_region_per_code = UNSET
|
150
|
+
elif isinstance(
|
151
|
+
self.query_per_second_per_region_per_code, ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0
|
152
|
+
):
|
73
153
|
query_per_second_per_region_per_code = self.query_per_second_per_region_per_code.to_dict()
|
154
|
+
else:
|
155
|
+
query_per_second_per_region_per_code = self.query_per_second_per_region_per_code
|
74
156
|
|
75
157
|
field_dict: dict[str, Any] = {}
|
76
158
|
field_dict.update(self.additional_properties)
|
77
159
|
field_dict.update({})
|
160
|
+
if inference_global is not UNSET:
|
161
|
+
field_dict["inference_global"] = inference_global
|
162
|
+
if inference_per_region is not UNSET:
|
163
|
+
field_dict["inference_per_region"] = inference_per_region
|
78
164
|
if inference_per_second_global is not UNSET:
|
79
165
|
field_dict["inference_per_second_global"] = inference_per_second_global
|
80
166
|
if inference_per_second_per_region is not UNSET:
|
81
167
|
field_dict["inference_per_second_per_region"] = inference_per_second_per_region
|
168
|
+
if query_global is not UNSET:
|
169
|
+
field_dict["query_global"] = query_global
|
170
|
+
if query_per_code_global is not UNSET:
|
171
|
+
field_dict["query_per_code_global"] = query_per_code_global
|
172
|
+
if query_per_region is not UNSET:
|
173
|
+
field_dict["query_per_region"] = query_per_region
|
174
|
+
if query_per_region_per_code is not UNSET:
|
175
|
+
field_dict["query_per_region_per_code"] = query_per_region_per_code
|
82
176
|
if query_per_second_global is not UNSET:
|
83
177
|
field_dict["query_per_second_global"] = query_per_second_global
|
84
178
|
if query_per_second_per_code_global is not UNSET:
|
@@ -94,14 +188,46 @@ class ResourceDeploymentMetrics:
|
|
94
188
|
def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
|
95
189
|
from ..models.metric import Metric
|
96
190
|
from ..models.qps import QPS
|
97
|
-
from ..models.
|
98
|
-
|
191
|
+
from ..models.resource_deployment_metrics_inference_per_region_type_0 import (
|
192
|
+
ResourceDeploymentMetricsInferencePerRegionType0,
|
193
|
+
)
|
194
|
+
from ..models.resource_deployment_metrics_inference_per_second_per_region_type_0 import (
|
195
|
+
ResourceDeploymentMetricsInferencePerSecondPerRegionType0,
|
196
|
+
)
|
197
|
+
from ..models.resource_deployment_metrics_query_per_region_per_code_type_0 import (
|
198
|
+
ResourceDeploymentMetricsQueryPerRegionPerCodeType0,
|
99
199
|
)
|
100
|
-
from ..models.
|
101
|
-
|
200
|
+
from ..models.resource_deployment_metrics_query_per_second_per_region_per_code_type_0 import (
|
201
|
+
ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0,
|
102
202
|
)
|
103
203
|
|
104
204
|
d = src_dict.copy()
|
205
|
+
inference_global = []
|
206
|
+
_inference_global = d.pop("inference_global", UNSET)
|
207
|
+
for componentsschemas_array_metric_item_data in _inference_global or []:
|
208
|
+
componentsschemas_array_metric_item = Metric.from_dict(componentsschemas_array_metric_item_data)
|
209
|
+
|
210
|
+
inference_global.append(componentsschemas_array_metric_item)
|
211
|
+
|
212
|
+
def _parse_inference_per_region(
|
213
|
+
data: object,
|
214
|
+
) -> Union["ResourceDeploymentMetricsInferencePerRegionType0", None, Unset]:
|
215
|
+
if data is None:
|
216
|
+
return data
|
217
|
+
if isinstance(data, Unset):
|
218
|
+
return data
|
219
|
+
try:
|
220
|
+
if not isinstance(data, dict):
|
221
|
+
raise TypeError()
|
222
|
+
inference_per_region_type_0 = ResourceDeploymentMetricsInferencePerRegionType0.from_dict(data)
|
223
|
+
|
224
|
+
return inference_per_region_type_0
|
225
|
+
except: # noqa: E722
|
226
|
+
pass
|
227
|
+
return cast(Union["ResourceDeploymentMetricsInferencePerRegionType0", None, Unset], data)
|
228
|
+
|
229
|
+
inference_per_region = _parse_inference_per_region(d.pop("inference_per_region", UNSET))
|
230
|
+
|
105
231
|
inference_per_second_global = []
|
106
232
|
_inference_per_second_global = d.pop("inference_per_second_global", UNSET)
|
107
233
|
for componentsschemas_array_metric_item_data in _inference_per_second_global or []:
|
@@ -109,14 +235,63 @@ class ResourceDeploymentMetrics:
|
|
109
235
|
|
110
236
|
inference_per_second_global.append(componentsschemas_array_metric_item)
|
111
237
|
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
238
|
+
def _parse_inference_per_second_per_region(
|
239
|
+
data: object,
|
240
|
+
) -> Union["ResourceDeploymentMetricsInferencePerSecondPerRegionType0", None, Unset]:
|
241
|
+
if data is None:
|
242
|
+
return data
|
243
|
+
if isinstance(data, Unset):
|
244
|
+
return data
|
245
|
+
try:
|
246
|
+
if not isinstance(data, dict):
|
247
|
+
raise TypeError()
|
248
|
+
inference_per_second_per_region_type_0 = (
|
249
|
+
ResourceDeploymentMetricsInferencePerSecondPerRegionType0.from_dict(data)
|
250
|
+
)
|
251
|
+
|
252
|
+
return inference_per_second_per_region_type_0
|
253
|
+
except: # noqa: E722
|
254
|
+
pass
|
255
|
+
return cast(Union["ResourceDeploymentMetricsInferencePerSecondPerRegionType0", None, Unset], data)
|
256
|
+
|
257
|
+
inference_per_second_per_region = _parse_inference_per_second_per_region(
|
258
|
+
d.pop("inference_per_second_per_region", UNSET)
|
259
|
+
)
|
260
|
+
|
261
|
+
query_global = d.pop("query_global", UNSET)
|
262
|
+
|
263
|
+
_query_per_code_global = d.pop("query_per_code_global", UNSET)
|
264
|
+
query_per_code_global: Union[Unset, QPS]
|
265
|
+
if isinstance(_query_per_code_global, Unset):
|
266
|
+
query_per_code_global = UNSET
|
116
267
|
else:
|
117
|
-
|
118
|
-
|
119
|
-
|
268
|
+
query_per_code_global = QPS.from_dict(_query_per_code_global)
|
269
|
+
|
270
|
+
_query_per_region = d.pop("query_per_region", UNSET)
|
271
|
+
query_per_region: Union[Unset, QPS]
|
272
|
+
if isinstance(_query_per_region, Unset):
|
273
|
+
query_per_region = UNSET
|
274
|
+
else:
|
275
|
+
query_per_region = QPS.from_dict(_query_per_region)
|
276
|
+
|
277
|
+
def _parse_query_per_region_per_code(
|
278
|
+
data: object,
|
279
|
+
) -> Union["ResourceDeploymentMetricsQueryPerRegionPerCodeType0", None, Unset]:
|
280
|
+
if data is None:
|
281
|
+
return data
|
282
|
+
if isinstance(data, Unset):
|
283
|
+
return data
|
284
|
+
try:
|
285
|
+
if not isinstance(data, dict):
|
286
|
+
raise TypeError()
|
287
|
+
query_per_region_per_code_type_0 = ResourceDeploymentMetricsQueryPerRegionPerCodeType0.from_dict(data)
|
288
|
+
|
289
|
+
return query_per_region_per_code_type_0
|
290
|
+
except: # noqa: E722
|
291
|
+
pass
|
292
|
+
return cast(Union["ResourceDeploymentMetricsQueryPerRegionPerCodeType0", None, Unset], data)
|
293
|
+
|
294
|
+
query_per_region_per_code = _parse_query_per_region_per_code(d.pop("query_per_region_per_code", UNSET))
|
120
295
|
|
121
296
|
query_per_second_global = d.pop("query_per_second_global", UNSET)
|
122
297
|
|
@@ -134,18 +309,38 @@ class ResourceDeploymentMetrics:
|
|
134
309
|
else:
|
135
310
|
query_per_second_per_region = QPS.from_dict(_query_per_second_per_region)
|
136
311
|
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
312
|
+
def _parse_query_per_second_per_region_per_code(
|
313
|
+
data: object,
|
314
|
+
) -> Union["ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0", None, Unset]:
|
315
|
+
if data is None:
|
316
|
+
return data
|
317
|
+
if isinstance(data, Unset):
|
318
|
+
return data
|
319
|
+
try:
|
320
|
+
if not isinstance(data, dict):
|
321
|
+
raise TypeError()
|
322
|
+
query_per_second_per_region_per_code_type_0 = (
|
323
|
+
ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0.from_dict(data)
|
324
|
+
)
|
325
|
+
|
326
|
+
return query_per_second_per_region_per_code_type_0
|
327
|
+
except: # noqa: E722
|
328
|
+
pass
|
329
|
+
return cast(Union["ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0", None, Unset], data)
|
330
|
+
|
331
|
+
query_per_second_per_region_per_code = _parse_query_per_second_per_region_per_code(
|
332
|
+
d.pop("query_per_second_per_region_per_code", UNSET)
|
333
|
+
)
|
145
334
|
|
146
335
|
resource_deployment_metrics = cls(
|
336
|
+
inference_global=inference_global,
|
337
|
+
inference_per_region=inference_per_region,
|
147
338
|
inference_per_second_global=inference_per_second_global,
|
148
339
|
inference_per_second_per_region=inference_per_second_per_region,
|
340
|
+
query_global=query_global,
|
341
|
+
query_per_code_global=query_per_code_global,
|
342
|
+
query_per_region=query_per_region,
|
343
|
+
query_per_region_per_code=query_per_region_per_code,
|
149
344
|
query_per_second_global=query_per_second_global,
|
150
345
|
query_per_second_per_code_global=query_per_second_per_code_global,
|
151
346
|
query_per_second_per_region=query_per_second_per_region,
|
@@ -0,0 +1,75 @@
|
|
1
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar, Union
|
2
|
+
|
3
|
+
from attrs import define as _attrs_define
|
4
|
+
from attrs import field as _attrs_field
|
5
|
+
|
6
|
+
from ..types import UNSET, Unset
|
7
|
+
|
8
|
+
if TYPE_CHECKING:
|
9
|
+
from ..models.metric import Metric
|
10
|
+
|
11
|
+
|
12
|
+
T = TypeVar("T", bound="ResourceDeploymentMetricsInferencePerRegionType0")
|
13
|
+
|
14
|
+
|
15
|
+
@_attrs_define
|
16
|
+
class ResourceDeploymentMetricsInferencePerRegionType0:
|
17
|
+
"""Historical requests (in last 24 hours) per location, for the model deployment
|
18
|
+
|
19
|
+
Attributes:
|
20
|
+
region (Union[Unset, List['Metric']]): Array of metrics
|
21
|
+
"""
|
22
|
+
|
23
|
+
region: Union[Unset, List["Metric"]] = UNSET
|
24
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
25
|
+
|
26
|
+
def to_dict(self) -> dict[str, Any]:
|
27
|
+
region: Union[Unset, List[Dict[str, Any]]] = UNSET
|
28
|
+
if not isinstance(self.region, Unset):
|
29
|
+
region = []
|
30
|
+
for componentsschemas_array_metric_item_data in self.region:
|
31
|
+
componentsschemas_array_metric_item = componentsschemas_array_metric_item_data.to_dict()
|
32
|
+
region.append(componentsschemas_array_metric_item)
|
33
|
+
|
34
|
+
field_dict: dict[str, Any] = {}
|
35
|
+
field_dict.update(self.additional_properties)
|
36
|
+
field_dict.update({})
|
37
|
+
if region is not UNSET:
|
38
|
+
field_dict["region"] = region
|
39
|
+
|
40
|
+
return field_dict
|
41
|
+
|
42
|
+
@classmethod
|
43
|
+
def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
|
44
|
+
from ..models.metric import Metric
|
45
|
+
|
46
|
+
d = src_dict.copy()
|
47
|
+
region = []
|
48
|
+
_region = d.pop("region", UNSET)
|
49
|
+
for componentsschemas_array_metric_item_data in _region or []:
|
50
|
+
componentsschemas_array_metric_item = Metric.from_dict(componentsschemas_array_metric_item_data)
|
51
|
+
|
52
|
+
region.append(componentsschemas_array_metric_item)
|
53
|
+
|
54
|
+
resource_deployment_metrics_inference_per_region_type_0 = cls(
|
55
|
+
region=region,
|
56
|
+
)
|
57
|
+
|
58
|
+
resource_deployment_metrics_inference_per_region_type_0.additional_properties = d
|
59
|
+
return resource_deployment_metrics_inference_per_region_type_0
|
60
|
+
|
61
|
+
@property
|
62
|
+
def additional_keys(self) -> list[str]:
|
63
|
+
return list(self.additional_properties.keys())
|
64
|
+
|
65
|
+
def __getitem__(self, key: str) -> Any:
|
66
|
+
return self.additional_properties[key]
|
67
|
+
|
68
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
69
|
+
self.additional_properties[key] = value
|
70
|
+
|
71
|
+
def __delitem__(self, key: str) -> None:
|
72
|
+
del self.additional_properties[key]
|
73
|
+
|
74
|
+
def __contains__(self, key: str) -> bool:
|
75
|
+
return key in self.additional_properties
|
@@ -9,11 +9,11 @@ if TYPE_CHECKING:
|
|
9
9
|
from ..models.metric import Metric
|
10
10
|
|
11
11
|
|
12
|
-
T = TypeVar("T", bound="
|
12
|
+
T = TypeVar("T", bound="ResourceDeploymentMetricsInferencePerSecondPerRegionType0")
|
13
13
|
|
14
14
|
|
15
15
|
@_attrs_define
|
16
|
-
class
|
16
|
+
class ResourceDeploymentMetricsInferencePerSecondPerRegionType0:
|
17
17
|
"""Historical requests per second (RPS) per location, for the model deployment
|
18
18
|
|
19
19
|
Attributes:
|
@@ -51,12 +51,12 @@ class ResourceDeploymentMetricsInferencePerSecondPerRegion:
|
|
51
51
|
|
52
52
|
region.append(componentsschemas_array_metric_item)
|
53
53
|
|
54
|
-
|
54
|
+
resource_deployment_metrics_inference_per_second_per_region_type_0 = cls(
|
55
55
|
region=region,
|
56
56
|
)
|
57
57
|
|
58
|
-
|
59
|
-
return
|
58
|
+
resource_deployment_metrics_inference_per_second_per_region_type_0.additional_properties = d
|
59
|
+
return resource_deployment_metrics_inference_per_second_per_region_type_0
|
60
60
|
|
61
61
|
@property
|
62
62
|
def additional_keys(self) -> list[str]:
|
@@ -0,0 +1,73 @@
|
|
1
|
+
from typing import TYPE_CHECKING, Any, Dict, Type, TypeVar, Union
|
2
|
+
|
3
|
+
from attrs import define as _attrs_define
|
4
|
+
from attrs import field as _attrs_field
|
5
|
+
|
6
|
+
from ..types import UNSET, Unset
|
7
|
+
|
8
|
+
if TYPE_CHECKING:
|
9
|
+
from ..models.qps import QPS
|
10
|
+
|
11
|
+
|
12
|
+
T = TypeVar("T", bound="ResourceDeploymentMetricsQueryPerRegionPerCodeType0")
|
13
|
+
|
14
|
+
|
15
|
+
@_attrs_define
|
16
|
+
class ResourceDeploymentMetricsQueryPerRegionPerCodeType0:
|
17
|
+
"""Number of requests done on the resource for the model deployment
|
18
|
+
|
19
|
+
Attributes:
|
20
|
+
region (Union[Unset, QPS]): Query per second per element, can be per response status code (e.g. 200, 400) or per
|
21
|
+
location
|
22
|
+
"""
|
23
|
+
|
24
|
+
region: Union[Unset, "QPS"] = UNSET
|
25
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
26
|
+
|
27
|
+
def to_dict(self) -> dict[str, Any]:
|
28
|
+
region: Union[Unset, Dict[str, Any]] = UNSET
|
29
|
+
if not isinstance(self.region, Unset):
|
30
|
+
region = self.region.to_dict()
|
31
|
+
|
32
|
+
field_dict: dict[str, Any] = {}
|
33
|
+
field_dict.update(self.additional_properties)
|
34
|
+
field_dict.update({})
|
35
|
+
if region is not UNSET:
|
36
|
+
field_dict["region"] = region
|
37
|
+
|
38
|
+
return field_dict
|
39
|
+
|
40
|
+
@classmethod
|
41
|
+
def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
|
42
|
+
from ..models.qps import QPS
|
43
|
+
|
44
|
+
d = src_dict.copy()
|
45
|
+
_region = d.pop("region", UNSET)
|
46
|
+
region: Union[Unset, QPS]
|
47
|
+
if isinstance(_region, Unset):
|
48
|
+
region = UNSET
|
49
|
+
else:
|
50
|
+
region = QPS.from_dict(_region)
|
51
|
+
|
52
|
+
resource_deployment_metrics_query_per_region_per_code_type_0 = cls(
|
53
|
+
region=region,
|
54
|
+
)
|
55
|
+
|
56
|
+
resource_deployment_metrics_query_per_region_per_code_type_0.additional_properties = d
|
57
|
+
return resource_deployment_metrics_query_per_region_per_code_type_0
|
58
|
+
|
59
|
+
@property
|
60
|
+
def additional_keys(self) -> list[str]:
|
61
|
+
return list(self.additional_properties.keys())
|
62
|
+
|
63
|
+
def __getitem__(self, key: str) -> Any:
|
64
|
+
return self.additional_properties[key]
|
65
|
+
|
66
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
67
|
+
self.additional_properties[key] = value
|
68
|
+
|
69
|
+
def __delitem__(self, key: str) -> None:
|
70
|
+
del self.additional_properties[key]
|
71
|
+
|
72
|
+
def __contains__(self, key: str) -> bool:
|
73
|
+
return key in self.additional_properties
|
@@ -9,11 +9,11 @@ if TYPE_CHECKING:
|
|
9
9
|
from ..models.qps import QPS
|
10
10
|
|
11
11
|
|
12
|
-
T = TypeVar("T", bound="
|
12
|
+
T = TypeVar("T", bound="ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0")
|
13
13
|
|
14
14
|
|
15
15
|
@_attrs_define
|
16
|
-
class
|
16
|
+
class ResourceDeploymentMetricsQueryPerSecondPerRegionPerCodeType0:
|
17
17
|
"""RPS value (in last 24 hours) per response status code per location, for the model deployment
|
18
18
|
|
19
19
|
Attributes:
|
@@ -49,12 +49,12 @@ class ResourceDeploymentMetricsQueryPerSecondPerRegionPerCode:
|
|
49
49
|
else:
|
50
50
|
region = QPS.from_dict(_region)
|
51
51
|
|
52
|
-
|
52
|
+
resource_deployment_metrics_query_per_second_per_region_per_code_type_0 = cls(
|
53
53
|
region=region,
|
54
54
|
)
|
55
55
|
|
56
|
-
|
57
|
-
return
|
56
|
+
resource_deployment_metrics_query_per_second_per_region_per_code_type_0.additional_properties = d
|
57
|
+
return resource_deployment_metrics_query_per_second_per_region_per_code_type_0
|
58
58
|
|
59
59
|
@property
|
60
60
|
def additional_keys(self) -> list[str]:
|
@@ -18,16 +18,28 @@ class ResourceMetrics:
|
|
18
18
|
"""Metrics for a single resource (eg. model, function)
|
19
19
|
|
20
20
|
Attributes:
|
21
|
+
inference_global (Union[Unset, List['Metric']]): Array of metrics
|
21
22
|
inference_per_second_global (Union[Unset, List['Metric']]): Array of metrics
|
23
|
+
query_per_region (Union[Unset, QPS]): Query per second per element, can be per response status code (e.g. 200,
|
24
|
+
400) or per location
|
22
25
|
query_per_second_per_region (Union[Unset, QPS]): Query per second per element, can be per response status code
|
23
26
|
(e.g. 200, 400) or per location
|
24
27
|
"""
|
25
28
|
|
29
|
+
inference_global: Union[Unset, List["Metric"]] = UNSET
|
26
30
|
inference_per_second_global: Union[Unset, List["Metric"]] = UNSET
|
31
|
+
query_per_region: Union[Unset, "QPS"] = UNSET
|
27
32
|
query_per_second_per_region: Union[Unset, "QPS"] = UNSET
|
28
33
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
29
34
|
|
30
35
|
def to_dict(self) -> dict[str, Any]:
|
36
|
+
inference_global: Union[Unset, List[Dict[str, Any]]] = UNSET
|
37
|
+
if not isinstance(self.inference_global, Unset):
|
38
|
+
inference_global = []
|
39
|
+
for componentsschemas_array_metric_item_data in self.inference_global:
|
40
|
+
componentsschemas_array_metric_item = componentsschemas_array_metric_item_data.to_dict()
|
41
|
+
inference_global.append(componentsschemas_array_metric_item)
|
42
|
+
|
31
43
|
inference_per_second_global: Union[Unset, List[Dict[str, Any]]] = UNSET
|
32
44
|
if not isinstance(self.inference_per_second_global, Unset):
|
33
45
|
inference_per_second_global = []
|
@@ -35,6 +47,10 @@ class ResourceMetrics:
|
|
35
47
|
componentsschemas_array_metric_item = componentsschemas_array_metric_item_data.to_dict()
|
36
48
|
inference_per_second_global.append(componentsschemas_array_metric_item)
|
37
49
|
|
50
|
+
query_per_region: Union[Unset, Dict[str, Any]] = UNSET
|
51
|
+
if not isinstance(self.query_per_region, Unset):
|
52
|
+
query_per_region = self.query_per_region.to_dict()
|
53
|
+
|
38
54
|
query_per_second_per_region: Union[Unset, Dict[str, Any]] = UNSET
|
39
55
|
if not isinstance(self.query_per_second_per_region, Unset):
|
40
56
|
query_per_second_per_region = self.query_per_second_per_region.to_dict()
|
@@ -42,8 +58,12 @@ class ResourceMetrics:
|
|
42
58
|
field_dict: dict[str, Any] = {}
|
43
59
|
field_dict.update(self.additional_properties)
|
44
60
|
field_dict.update({})
|
61
|
+
if inference_global is not UNSET:
|
62
|
+
field_dict["inference_global"] = inference_global
|
45
63
|
if inference_per_second_global is not UNSET:
|
46
64
|
field_dict["inference_per_second_global"] = inference_per_second_global
|
65
|
+
if query_per_region is not UNSET:
|
66
|
+
field_dict["query_per_region"] = query_per_region
|
47
67
|
if query_per_second_per_region is not UNSET:
|
48
68
|
field_dict["query_per_second_per_region"] = query_per_second_per_region
|
49
69
|
|
@@ -55,6 +75,13 @@ class ResourceMetrics:
|
|
55
75
|
from ..models.qps import QPS
|
56
76
|
|
57
77
|
d = src_dict.copy()
|
78
|
+
inference_global = []
|
79
|
+
_inference_global = d.pop("inference_global", UNSET)
|
80
|
+
for componentsschemas_array_metric_item_data in _inference_global or []:
|
81
|
+
componentsschemas_array_metric_item = Metric.from_dict(componentsschemas_array_metric_item_data)
|
82
|
+
|
83
|
+
inference_global.append(componentsschemas_array_metric_item)
|
84
|
+
|
58
85
|
inference_per_second_global = []
|
59
86
|
_inference_per_second_global = d.pop("inference_per_second_global", UNSET)
|
60
87
|
for componentsschemas_array_metric_item_data in _inference_per_second_global or []:
|
@@ -62,6 +89,13 @@ class ResourceMetrics:
|
|
62
89
|
|
63
90
|
inference_per_second_global.append(componentsschemas_array_metric_item)
|
64
91
|
|
92
|
+
_query_per_region = d.pop("query_per_region", UNSET)
|
93
|
+
query_per_region: Union[Unset, QPS]
|
94
|
+
if isinstance(_query_per_region, Unset):
|
95
|
+
query_per_region = UNSET
|
96
|
+
else:
|
97
|
+
query_per_region = QPS.from_dict(_query_per_region)
|
98
|
+
|
65
99
|
_query_per_second_per_region = d.pop("query_per_second_per_region", UNSET)
|
66
100
|
query_per_second_per_region: Union[Unset, QPS]
|
67
101
|
if isinstance(_query_per_second_per_region, Unset):
|
@@ -70,7 +104,9 @@ class ResourceMetrics:
|
|
70
104
|
query_per_second_per_region = QPS.from_dict(_query_per_second_per_region)
|
71
105
|
|
72
106
|
resource_metrics = cls(
|
107
|
+
inference_global=inference_global,
|
73
108
|
inference_per_second_global=inference_per_second_global,
|
109
|
+
query_per_region=query_per_region,
|
74
110
|
query_per_second_per_region=query_per_second_per_region,
|
75
111
|
)
|
76
112
|
|