beamlit 0.0.18__py3-none-any.whl → 0.0.20rc1__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. beamlit/api/agents/create_agent.py +14 -9
  2. beamlit/api/agents/get_agent_deployment.py +22 -1
  3. beamlit/api/agents/update_agent.py +14 -9
  4. beamlit/api/functions/create_function.py +14 -9
  5. beamlit/api/functions/update_function.py +14 -9
  6. beamlit/api/{authentication_providers/list_organizations_for_authentication_provider.py → integrations/create_integration_connection.py} +45 -41
  7. beamlit/api/integrations/delete_integration_connection.py +158 -0
  8. beamlit/api/integrations/get_integration.py +97 -0
  9. beamlit/api/integrations/get_integration_connection.py +154 -0
  10. beamlit/api/integrations/get_integration_connection_model.py +97 -0
  11. beamlit/api/integrations/get_integration_model.py +97 -0
  12. beamlit/api/integrations/list_integration_connection_models.py +97 -0
  13. beamlit/api/{authentication_providers/list_models_for_authentication_provider.py → integrations/list_integration_connections.py} +24 -48
  14. beamlit/api/integrations/list_integration_models.py +97 -0
  15. beamlit/api/integrations/update_integration_connection.py +180 -0
  16. beamlit/authentication/__init__.py +2 -1
  17. beamlit/authentication/authentication.py +3 -0
  18. beamlit/authentication/clientcredentials.py +99 -0
  19. beamlit/authentication/credentials.py +7 -1
  20. beamlit/authentication/device_mode.py +0 -2
  21. beamlit/common/generate.py +166 -0
  22. beamlit/common/logger.py +30 -0
  23. beamlit/common/settings.py +112 -0
  24. beamlit/common/utils.py +13 -0
  25. beamlit/models/__init__.py +50 -24
  26. beamlit/models/agent_deployment.py +117 -49
  27. beamlit/models/{agent_deployment_configuration.py → agent_deployment_configuration_type_0.py} +5 -5
  28. beamlit/models/agent_deployment_history.py +46 -13
  29. beamlit/models/agent_deployment_history_event.py +78 -22
  30. beamlit/models/{function_deployment_pod_template.py → agent_deployment_pod_template_type_0.py} +5 -5
  31. beamlit/models/agent_with_deployments.py +174 -0
  32. beamlit/models/deployment_configurations.py +19 -6
  33. beamlit/models/deployment_serverless_config_type_0.py +218 -0
  34. beamlit/models/environment_metrics.py +19 -0
  35. beamlit/models/function_deployment.py +110 -42
  36. beamlit/models/{function_deployment_configuration.py → function_deployment_configuration_type_0.py} +5 -5
  37. beamlit/models/{agent_deployment_pod_template.py → function_deployment_pod_template_type_0.py} +5 -5
  38. beamlit/models/function_with_deployments.py +174 -0
  39. beamlit/models/increase_and_rate_metric.py +102 -0
  40. beamlit/models/integration.py +196 -0
  41. beamlit/models/integration_config.py +43 -0
  42. beamlit/models/integration_connection.py +196 -0
  43. beamlit/models/integration_connection_config.py +43 -0
  44. beamlit/models/integration_connection_secret.py +59 -0
  45. beamlit/models/integration_model.py +142 -0
  46. beamlit/models/integration_secret.py +59 -0
  47. beamlit/models/metrics.py +61 -20
  48. beamlit/models/model_deployment.py +96 -64
  49. beamlit/models/{model_deployment_pod_template.py → model_deployment_pod_template_type_0.py} +5 -5
  50. beamlit/models/policy.py +8 -34
  51. beamlit/models/provider_config.py +0 -9
  52. beamlit/models/resource_deployment_metrics.py +231 -36
  53. beamlit/models/resource_deployment_metrics_inference_per_region_type_0.py +75 -0
  54. beamlit/models/{resource_deployment_metrics_inference_per_second_per_region.py → resource_deployment_metrics_inference_per_second_per_region_type_0.py} +5 -5
  55. beamlit/models/resource_deployment_metrics_query_per_region_per_code_type_0.py +73 -0
  56. 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
  57. beamlit/models/resource_metrics.py +36 -0
  58. beamlit/models/runtime.py +29 -12
  59. beamlit/models/{runtime_readiness_probe.py → runtime_readiness_probe_type_0.py} +5 -5
  60. beamlit/models/store_agent.py +29 -13
  61. beamlit/models/{store_agent_labels.py → store_agent_labels_type_0.py} +5 -5
  62. beamlit/models/store_configuration.py +15 -4
  63. beamlit/models/store_configuration_option.py +18 -5
  64. beamlit/models/store_function.py +29 -13
  65. beamlit/models/{store_function_labels.py → store_function_labels_type_0.py} +5 -5
  66. beamlit/run.py +49 -0
  67. {beamlit-0.0.18.dist-info → beamlit-0.0.20rc1.dist-info}/METADATA +5 -2
  68. {beamlit-0.0.18.dist-info → beamlit-0.0.20rc1.dist-info}/RECORD +70 -46
  69. beamlit/api/authentication_providers/get_model_with_repo_for_authentication_provider.py +0 -184
  70. beamlit/models/deployment_serverless_config.py +0 -129
  71. beamlit/models/labels.py +0 -43
  72. /beamlit/api/{authentication_providers → integrations}/__init__.py +0 -0
  73. {beamlit-0.0.18.dist-info → beamlit-0.0.20rc1.dist-info}/WHEEL +0 -0
@@ -7,9 +7,9 @@ from ..types import UNSET, Unset
7
7
 
8
8
  if TYPE_CHECKING:
9
9
  from ..models.agent_chain import AgentChain
10
- from ..models.agent_deployment_configuration import AgentDeploymentConfiguration
11
- from ..models.agent_deployment_pod_template import AgentDeploymentPodTemplate
12
- from ..models.deployment_serverless_config import DeploymentServerlessConfig
10
+ from ..models.agent_deployment_configuration_type_0 import AgentDeploymentConfigurationType0
11
+ from ..models.agent_deployment_pod_template_type_0 import AgentDeploymentPodTemplateType0
12
+ from ..models.deployment_serverless_config_type_0 import DeploymentServerlessConfigType0
13
13
  from ..models.flavor import Flavor
14
14
  from ..models.labels_type_0 import LabelsType0
15
15
  from ..models.runtime import Runtime
@@ -29,22 +29,24 @@ class AgentDeployment:
29
29
  updated_by (Union[Unset, str]): The user or service account who updated the resource
30
30
  agent (Union[Unset, str]): The name of the agent
31
31
  agent_chain (Union[Unset, List['AgentChain']]): Agent chaining configuration
32
- configuration (Union[Unset, AgentDeploymentConfiguration]): Agent configuration, this is a key value storage. In
33
- your agent you can retrieve the value with config[key]
32
+ configuration (Union['AgentDeploymentConfigurationType0', None, Unset]): Agent configuration, this is a key
33
+ value storage. In your agent you can retrieve the value with config[key]
34
34
  description (Union[Unset, str]): Agent description, very important to have a clear description for your agent if
35
35
  you want to make it work with agent chaining
36
- enabled (Union[Unset, bool]): Whether the agent deployment is enabled
36
+ enabled (Union[None, Unset, bool]): Whether the agent deployment is enabled
37
37
  environment (Union[Unset, str]): The name of the environment
38
38
  flavors (Union[Unset, List['Flavor']]): Types of hardware available for deployments
39
39
  functions (Union[Unset, List[str]]): Functions used by the agent, those functions needs to be created before
40
40
  setting it here
41
+ integration_connections (Union[Unset, List[str]]):
41
42
  labels (Union['LabelsType0', None, Unset]): Labels
42
- llm (Union[Unset, str]): LLM to use for agent, it should be compatible with function calling
43
- pod_template (Union[Unset, AgentDeploymentPodTemplate]): The pod template, should be a valid Kubernetes pod
44
- template
43
+ model (Union[Unset, str]): Model beamlit to use for agent, it should be compatible with function calling
44
+ pod_template (Union['AgentDeploymentPodTemplateType0', None, Unset]): The pod template, should be a valid
45
+ Kubernetes pod template
45
46
  policies (Union[Unset, List[str]]):
46
47
  runtime (Union[Unset, Runtime]): Set of configurations for a deployment
47
- serverless_config (Union[Unset, DeploymentServerlessConfig]): Configuration for a serverless deployment
48
+ serverless_config (Union['DeploymentServerlessConfigType0', None, Unset]): Configuration for a serverless
49
+ deployment
48
50
  store_id (Union[Unset, str]): Create from a store registered function
49
51
  workspace (Union[Unset, str]): The workspace the agent deployment belongs to
50
52
  """
@@ -55,23 +57,27 @@ class AgentDeployment:
55
57
  updated_by: Union[Unset, str] = UNSET
56
58
  agent: Union[Unset, str] = UNSET
57
59
  agent_chain: Union[Unset, List["AgentChain"]] = UNSET
58
- configuration: Union[Unset, "AgentDeploymentConfiguration"] = UNSET
60
+ configuration: Union["AgentDeploymentConfigurationType0", None, Unset] = UNSET
59
61
  description: Union[Unset, str] = UNSET
60
- enabled: Union[Unset, bool] = UNSET
62
+ enabled: Union[None, Unset, bool] = UNSET
61
63
  environment: Union[Unset, str] = UNSET
62
64
  flavors: Union[Unset, List["Flavor"]] = UNSET
63
65
  functions: Union[Unset, List[str]] = UNSET
66
+ integration_connections: Union[Unset, List[str]] = UNSET
64
67
  labels: Union["LabelsType0", None, Unset] = UNSET
65
- llm: Union[Unset, str] = UNSET
66
- pod_template: Union[Unset, "AgentDeploymentPodTemplate"] = UNSET
68
+ model: Union[Unset, str] = UNSET
69
+ pod_template: Union["AgentDeploymentPodTemplateType0", None, Unset] = UNSET
67
70
  policies: Union[Unset, List[str]] = UNSET
68
71
  runtime: Union[Unset, "Runtime"] = UNSET
69
- serverless_config: Union[Unset, "DeploymentServerlessConfig"] = UNSET
72
+ serverless_config: Union["DeploymentServerlessConfigType0", None, Unset] = UNSET
70
73
  store_id: Union[Unset, str] = UNSET
71
74
  workspace: Union[Unset, str] = UNSET
72
75
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
73
76
 
74
77
  def to_dict(self) -> dict[str, Any]:
78
+ from ..models.agent_deployment_configuration_type_0 import AgentDeploymentConfigurationType0
79
+ from ..models.agent_deployment_pod_template_type_0 import AgentDeploymentPodTemplateType0
80
+ from ..models.deployment_serverless_config_type_0 import DeploymentServerlessConfigType0
75
81
  from ..models.labels_type_0 import LabelsType0
76
82
 
77
83
  created_at = self.created_at
@@ -91,13 +97,21 @@ class AgentDeployment:
91
97
  agent_chain_item = agent_chain_item_data.to_dict()
92
98
  agent_chain.append(agent_chain_item)
93
99
 
94
- configuration: Union[Unset, Dict[str, Any]] = UNSET
95
- if not isinstance(self.configuration, Unset):
100
+ configuration: Union[Dict[str, Any], None, Unset]
101
+ if isinstance(self.configuration, Unset):
102
+ configuration = UNSET
103
+ elif isinstance(self.configuration, AgentDeploymentConfigurationType0):
96
104
  configuration = self.configuration.to_dict()
105
+ else:
106
+ configuration = self.configuration
97
107
 
98
108
  description = self.description
99
109
 
100
- enabled = self.enabled
110
+ enabled: Union[None, Unset, bool]
111
+ if isinstance(self.enabled, Unset):
112
+ enabled = UNSET
113
+ else:
114
+ enabled = self.enabled
101
115
 
102
116
  environment = self.environment
103
117
 
@@ -112,6 +126,10 @@ class AgentDeployment:
112
126
  if not isinstance(self.functions, Unset):
113
127
  functions = self.functions
114
128
 
129
+ integration_connections: Union[Unset, List[str]] = UNSET
130
+ if not isinstance(self.integration_connections, Unset):
131
+ integration_connections = self.integration_connections
132
+
115
133
  labels: Union[Dict[str, Any], None, Unset]
116
134
  if isinstance(self.labels, Unset):
117
135
  labels = UNSET
@@ -120,11 +138,15 @@ class AgentDeployment:
120
138
  else:
121
139
  labels = self.labels
122
140
 
123
- llm = self.llm
141
+ model = self.model
124
142
 
125
- pod_template: Union[Unset, Dict[str, Any]] = UNSET
126
- if not isinstance(self.pod_template, Unset):
143
+ pod_template: Union[Dict[str, Any], None, Unset]
144
+ if isinstance(self.pod_template, Unset):
145
+ pod_template = UNSET
146
+ elif isinstance(self.pod_template, AgentDeploymentPodTemplateType0):
127
147
  pod_template = self.pod_template.to_dict()
148
+ else:
149
+ pod_template = self.pod_template
128
150
 
129
151
  policies: Union[Unset, List[str]] = UNSET
130
152
  if not isinstance(self.policies, Unset):
@@ -134,9 +156,13 @@ class AgentDeployment:
134
156
  if not isinstance(self.runtime, Unset):
135
157
  runtime = self.runtime.to_dict()
136
158
 
137
- serverless_config: Union[Unset, Dict[str, Any]] = UNSET
138
- if not isinstance(self.serverless_config, Unset):
159
+ serverless_config: Union[Dict[str, Any], None, Unset]
160
+ if isinstance(self.serverless_config, Unset):
161
+ serverless_config = UNSET
162
+ elif isinstance(self.serverless_config, DeploymentServerlessConfigType0):
139
163
  serverless_config = self.serverless_config.to_dict()
164
+ else:
165
+ serverless_config = self.serverless_config
140
166
 
141
167
  store_id = self.store_id
142
168
 
@@ -169,10 +195,12 @@ class AgentDeployment:
169
195
  field_dict["flavors"] = flavors
170
196
  if functions is not UNSET:
171
197
  field_dict["functions"] = functions
198
+ if integration_connections is not UNSET:
199
+ field_dict["integration_connections"] = integration_connections
172
200
  if labels is not UNSET:
173
201
  field_dict["labels"] = labels
174
- if llm is not UNSET:
175
- field_dict["llm"] = llm
202
+ if model is not UNSET:
203
+ field_dict["model"] = model
176
204
  if pod_template is not UNSET:
177
205
  field_dict["pod_template"] = pod_template
178
206
  if policies is not UNSET:
@@ -191,9 +219,9 @@ class AgentDeployment:
191
219
  @classmethod
192
220
  def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
193
221
  from ..models.agent_chain import AgentChain
194
- from ..models.agent_deployment_configuration import AgentDeploymentConfiguration
195
- from ..models.agent_deployment_pod_template import AgentDeploymentPodTemplate
196
- from ..models.deployment_serverless_config import DeploymentServerlessConfig
222
+ from ..models.agent_deployment_configuration_type_0 import AgentDeploymentConfigurationType0
223
+ from ..models.agent_deployment_pod_template_type_0 import AgentDeploymentPodTemplateType0
224
+ from ..models.deployment_serverless_config_type_0 import DeploymentServerlessConfigType0
197
225
  from ..models.flavor import Flavor
198
226
  from ..models.labels_type_0 import LabelsType0
199
227
  from ..models.runtime import Runtime
@@ -216,16 +244,33 @@ class AgentDeployment:
216
244
 
217
245
  agent_chain.append(agent_chain_item)
218
246
 
219
- _configuration = d.pop("configuration", UNSET)
220
- configuration: Union[Unset, AgentDeploymentConfiguration]
221
- if isinstance(_configuration, Unset):
222
- configuration = UNSET
223
- else:
224
- configuration = AgentDeploymentConfiguration.from_dict(_configuration)
247
+ def _parse_configuration(data: object) -> Union["AgentDeploymentConfigurationType0", None, Unset]:
248
+ if data is None:
249
+ return data
250
+ if isinstance(data, Unset):
251
+ return data
252
+ try:
253
+ if not isinstance(data, dict):
254
+ raise TypeError()
255
+ configuration_type_0 = AgentDeploymentConfigurationType0.from_dict(data)
256
+
257
+ return configuration_type_0
258
+ except: # noqa: E722
259
+ pass
260
+ return cast(Union["AgentDeploymentConfigurationType0", None, Unset], data)
261
+
262
+ configuration = _parse_configuration(d.pop("configuration", UNSET))
225
263
 
226
264
  description = d.pop("description", UNSET)
227
265
 
228
- enabled = d.pop("enabled", UNSET)
266
+ def _parse_enabled(data: object) -> Union[None, Unset, bool]:
267
+ if data is None:
268
+ return data
269
+ if isinstance(data, Unset):
270
+ return data
271
+ return cast(Union[None, Unset, bool], data)
272
+
273
+ enabled = _parse_enabled(d.pop("enabled", UNSET))
229
274
 
230
275
  environment = d.pop("environment", UNSET)
231
276
 
@@ -238,6 +283,8 @@ class AgentDeployment:
238
283
 
239
284
  functions = cast(List[str], d.pop("functions", UNSET))
240
285
 
286
+ integration_connections = cast(List[str], d.pop("integration_connections", UNSET))
287
+
241
288
  def _parse_labels(data: object) -> Union["LabelsType0", None, Unset]:
242
289
  if data is None:
243
290
  return data
@@ -255,14 +302,24 @@ class AgentDeployment:
255
302
 
256
303
  labels = _parse_labels(d.pop("labels", UNSET))
257
304
 
258
- llm = d.pop("llm", UNSET)
305
+ model = d.pop("model", UNSET)
259
306
 
260
- _pod_template = d.pop("pod_template", UNSET)
261
- pod_template: Union[Unset, AgentDeploymentPodTemplate]
262
- if isinstance(_pod_template, Unset):
263
- pod_template = UNSET
264
- else:
265
- pod_template = AgentDeploymentPodTemplate.from_dict(_pod_template)
307
+ def _parse_pod_template(data: object) -> Union["AgentDeploymentPodTemplateType0", None, Unset]:
308
+ if data is None:
309
+ return data
310
+ if isinstance(data, Unset):
311
+ return data
312
+ try:
313
+ if not isinstance(data, dict):
314
+ raise TypeError()
315
+ pod_template_type_0 = AgentDeploymentPodTemplateType0.from_dict(data)
316
+
317
+ return pod_template_type_0
318
+ except: # noqa: E722
319
+ pass
320
+ return cast(Union["AgentDeploymentPodTemplateType0", None, Unset], data)
321
+
322
+ pod_template = _parse_pod_template(d.pop("pod_template", UNSET))
266
323
 
267
324
  policies = cast(List[str], d.pop("policies", UNSET))
268
325
 
@@ -273,12 +330,22 @@ class AgentDeployment:
273
330
  else:
274
331
  runtime = Runtime.from_dict(_runtime)
275
332
 
276
- _serverless_config = d.pop("serverless_config", UNSET)
277
- serverless_config: Union[Unset, DeploymentServerlessConfig]
278
- if isinstance(_serverless_config, Unset):
279
- serverless_config = UNSET
280
- else:
281
- serverless_config = DeploymentServerlessConfig.from_dict(_serverless_config)
333
+ def _parse_serverless_config(data: object) -> Union["DeploymentServerlessConfigType0", None, Unset]:
334
+ if data is None:
335
+ return data
336
+ if isinstance(data, Unset):
337
+ return data
338
+ try:
339
+ if not isinstance(data, dict):
340
+ raise TypeError()
341
+ componentsschemas_deployment_serverless_config_type_0 = DeploymentServerlessConfigType0.from_dict(data)
342
+
343
+ return componentsschemas_deployment_serverless_config_type_0
344
+ except: # noqa: E722
345
+ pass
346
+ return cast(Union["DeploymentServerlessConfigType0", None, Unset], data)
347
+
348
+ serverless_config = _parse_serverless_config(d.pop("serverless_config", UNSET))
282
349
 
283
350
  store_id = d.pop("store_id", UNSET)
284
351
 
@@ -297,8 +364,9 @@ class AgentDeployment:
297
364
  environment=environment,
298
365
  flavors=flavors,
299
366
  functions=functions,
367
+ integration_connections=integration_connections,
300
368
  labels=labels,
301
- llm=llm,
369
+ model=model,
302
370
  pod_template=pod_template,
303
371
  policies=policies,
304
372
  runtime=runtime,
@@ -3,11 +3,11 @@ from typing import Any, Type, TypeVar
3
3
  from attrs import define as _attrs_define
4
4
  from attrs import field as _attrs_field
5
5
 
6
- T = TypeVar("T", bound="AgentDeploymentConfiguration")
6
+ T = TypeVar("T", bound="AgentDeploymentConfigurationType0")
7
7
 
8
8
 
9
9
  @_attrs_define
10
- class AgentDeploymentConfiguration:
10
+ class AgentDeploymentConfigurationType0:
11
11
  """Agent configuration, this is a key value storage. In your agent you can retrieve the value with config[key]"""
12
12
 
13
13
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
@@ -21,10 +21,10 @@ class AgentDeploymentConfiguration:
21
21
  @classmethod
22
22
  def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
23
23
  d = src_dict.copy()
24
- agent_deployment_configuration = cls()
24
+ agent_deployment_configuration_type_0 = cls()
25
25
 
26
- agent_deployment_configuration.additional_properties = d
27
- return agent_deployment_configuration
26
+ agent_deployment_configuration_type_0.additional_properties = d
27
+ return agent_deployment_configuration_type_0
28
28
 
29
29
  @property
30
30
  def additional_keys(self) -> list[str]:
@@ -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
@@ -22,13 +22,13 @@ class AgentDeploymentHistory:
22
22
  updated_at (Union[Unset, str]): The date and time when the resource was updated
23
23
  updated_by (Union[Unset, str]): The user or service account who updated the resource
24
24
  agent (Union[Unset, str]): Agent name
25
- end (Union[Unset, str]): End time
25
+ end (Union[None, Unset, str]): End time
26
26
  environment (Union[Unset, str]): Environment name
27
27
  events (Union[Unset, List['AgentDeploymentHistoryEvent']]): Events
28
28
  request_id (Union[Unset, str]): Request ID
29
- start (Union[Unset, str]): Start time
29
+ start (Union[None, Unset, str]): Start time
30
30
  status (Union[Unset, str]): Status, eg: running, success, failed
31
- took (Union[Unset, int]): Number of milliseconds it took to complete the event
31
+ took (Union[None, Unset, int]): Number of milliseconds it took to complete the event
32
32
  workspace (Union[Unset, str]): The workspace the agent deployment belongs to
33
33
  """
34
34
 
@@ -37,13 +37,13 @@ class AgentDeploymentHistory:
37
37
  updated_at: Union[Unset, str] = UNSET
38
38
  updated_by: Union[Unset, str] = UNSET
39
39
  agent: Union[Unset, str] = UNSET
40
- end: Union[Unset, str] = UNSET
40
+ end: Union[None, Unset, str] = UNSET
41
41
  environment: Union[Unset, str] = UNSET
42
42
  events: Union[Unset, List["AgentDeploymentHistoryEvent"]] = UNSET
43
43
  request_id: Union[Unset, str] = UNSET
44
- start: Union[Unset, str] = UNSET
44
+ start: Union[None, Unset, str] = UNSET
45
45
  status: Union[Unset, str] = UNSET
46
- took: Union[Unset, int] = UNSET
46
+ took: Union[None, Unset, int] = UNSET
47
47
  workspace: Union[Unset, str] = UNSET
48
48
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
49
49
 
@@ -58,7 +58,11 @@ class AgentDeploymentHistory:
58
58
 
59
59
  agent = self.agent
60
60
 
61
- end = self.end
61
+ end: Union[None, Unset, str]
62
+ if isinstance(self.end, Unset):
63
+ end = UNSET
64
+ else:
65
+ end = self.end
62
66
 
63
67
  environment = self.environment
64
68
 
@@ -71,11 +75,19 @@ class AgentDeploymentHistory:
71
75
 
72
76
  request_id = self.request_id
73
77
 
74
- start = self.start
78
+ start: Union[None, Unset, str]
79
+ if isinstance(self.start, Unset):
80
+ start = UNSET
81
+ else:
82
+ start = self.start
75
83
 
76
84
  status = self.status
77
85
 
78
- took = self.took
86
+ took: Union[None, Unset, int]
87
+ if isinstance(self.took, Unset):
88
+ took = UNSET
89
+ else:
90
+ took = self.took
79
91
 
80
92
  workspace = self.workspace
81
93
 
@@ -126,7 +138,14 @@ class AgentDeploymentHistory:
126
138
 
127
139
  agent = d.pop("agent", UNSET)
128
140
 
129
- end = d.pop("end", UNSET)
141
+ def _parse_end(data: object) -> Union[None, Unset, str]:
142
+ if data is None:
143
+ return data
144
+ if isinstance(data, Unset):
145
+ return data
146
+ return cast(Union[None, Unset, str], data)
147
+
148
+ end = _parse_end(d.pop("end", UNSET))
130
149
 
131
150
  environment = d.pop("environment", UNSET)
132
151
 
@@ -139,11 +158,25 @@ class AgentDeploymentHistory:
139
158
 
140
159
  request_id = d.pop("request_id", UNSET)
141
160
 
142
- start = d.pop("start", UNSET)
161
+ def _parse_start(data: object) -> Union[None, Unset, str]:
162
+ if data is None:
163
+ return data
164
+ if isinstance(data, Unset):
165
+ return data
166
+ return cast(Union[None, Unset, str], data)
167
+
168
+ start = _parse_start(d.pop("start", UNSET))
143
169
 
144
170
  status = d.pop("status", UNSET)
145
171
 
146
- took = d.pop("took", UNSET)
172
+ def _parse_took(data: object) -> Union[None, Unset, int]:
173
+ if data is None:
174
+ return data
175
+ if isinstance(data, Unset):
176
+ return data
177
+ return cast(Union[None, Unset, int], data)
178
+
179
+ took = _parse_took(d.pop("took", UNSET))
147
180
 
148
181
  workspace = d.pop("workspace", UNSET)
149
182
 
@@ -1,4 +1,4 @@
1
- from typing import Any, Type, TypeVar, Union
1
+ from typing import Any, Type, TypeVar, Union, cast
2
2
 
3
3
  from attrs import define as _attrs_define
4
4
  from attrs import field as _attrs_field
@@ -13,44 +13,64 @@ class AgentDeploymentHistoryEvent:
13
13
  """Agent deployment history event
14
14
 
15
15
  Attributes:
16
- end (Union[Unset, str]): End time
17
- error (Union[Unset, str]): Error message
16
+ end (Union[None, Unset, str]): End time
17
+ error (Union[None, Unset, str]): Error message
18
18
  name (Union[Unset, str]): Name of the function or agent
19
19
  parameters (Union[Unset, str]): Parameters
20
- start (Union[Unset, str]): Start time
20
+ start (Union[None, Unset, str]): Start time
21
21
  status (Union[Unset, str]): Status, eg: running, success, failed
22
- sub_function (Union[Unset, str]): Function used in kit if a kit was used
23
- took (Union[Unset, int]): Number of milliseconds it took to complete the event
22
+ sub_function (Union[None, Unset, str]): Function used in kit if a kit was used
23
+ took (Union[None, Unset, int]): Number of milliseconds it took to complete the event
24
24
  type (Union[Unset, str]): Type, one of function or agent
25
25
  """
26
26
 
27
- end: Union[Unset, str] = UNSET
28
- error: Union[Unset, str] = UNSET
27
+ end: Union[None, Unset, str] = UNSET
28
+ error: Union[None, Unset, str] = UNSET
29
29
  name: Union[Unset, str] = UNSET
30
30
  parameters: Union[Unset, str] = UNSET
31
- start: Union[Unset, str] = UNSET
31
+ start: Union[None, Unset, str] = UNSET
32
32
  status: Union[Unset, str] = UNSET
33
- sub_function: Union[Unset, str] = UNSET
34
- took: Union[Unset, int] = UNSET
33
+ sub_function: Union[None, Unset, str] = UNSET
34
+ took: Union[None, Unset, int] = UNSET
35
35
  type: Union[Unset, str] = UNSET
36
36
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
37
37
 
38
38
  def to_dict(self) -> dict[str, Any]:
39
- end = self.end
40
-
41
- error = self.error
39
+ end: Union[None, Unset, str]
40
+ if isinstance(self.end, Unset):
41
+ end = UNSET
42
+ else:
43
+ end = self.end
44
+
45
+ error: Union[None, Unset, str]
46
+ if isinstance(self.error, Unset):
47
+ error = UNSET
48
+ else:
49
+ error = self.error
42
50
 
43
51
  name = self.name
44
52
 
45
53
  parameters = self.parameters
46
54
 
47
- start = self.start
55
+ start: Union[None, Unset, str]
56
+ if isinstance(self.start, Unset):
57
+ start = UNSET
58
+ else:
59
+ start = self.start
48
60
 
49
61
  status = self.status
50
62
 
51
- sub_function = self.sub_function
63
+ sub_function: Union[None, Unset, str]
64
+ if isinstance(self.sub_function, Unset):
65
+ sub_function = UNSET
66
+ else:
67
+ sub_function = self.sub_function
52
68
 
53
- took = self.took
69
+ took: Union[None, Unset, int]
70
+ if isinstance(self.took, Unset):
71
+ took = UNSET
72
+ else:
73
+ took = self.took
54
74
 
55
75
  type = self.type
56
76
 
@@ -81,21 +101,57 @@ class AgentDeploymentHistoryEvent:
81
101
  @classmethod
82
102
  def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
83
103
  d = src_dict.copy()
84
- end = d.pop("end", UNSET)
85
104
 
86
- error = d.pop("error", UNSET)
105
+ def _parse_end(data: object) -> Union[None, Unset, str]:
106
+ if data is None:
107
+ return data
108
+ if isinstance(data, Unset):
109
+ return data
110
+ return cast(Union[None, Unset, str], data)
111
+
112
+ end = _parse_end(d.pop("end", UNSET))
113
+
114
+ def _parse_error(data: object) -> Union[None, Unset, str]:
115
+ if data is None:
116
+ return data
117
+ if isinstance(data, Unset):
118
+ return data
119
+ return cast(Union[None, Unset, str], data)
120
+
121
+ error = _parse_error(d.pop("error", UNSET))
87
122
 
88
123
  name = d.pop("name", UNSET)
89
124
 
90
125
  parameters = d.pop("parameters", UNSET)
91
126
 
92
- start = d.pop("start", UNSET)
127
+ def _parse_start(data: object) -> Union[None, Unset, str]:
128
+ if data is None:
129
+ return data
130
+ if isinstance(data, Unset):
131
+ return data
132
+ return cast(Union[None, Unset, str], data)
133
+
134
+ start = _parse_start(d.pop("start", UNSET))
93
135
 
94
136
  status = d.pop("status", UNSET)
95
137
 
96
- sub_function = d.pop("sub_function", UNSET)
138
+ def _parse_sub_function(data: object) -> Union[None, Unset, str]:
139
+ if data is None:
140
+ return data
141
+ if isinstance(data, Unset):
142
+ return data
143
+ return cast(Union[None, Unset, str], data)
144
+
145
+ sub_function = _parse_sub_function(d.pop("sub_function", UNSET))
146
+
147
+ def _parse_took(data: object) -> Union[None, Unset, int]:
148
+ if data is None:
149
+ return data
150
+ if isinstance(data, Unset):
151
+ return data
152
+ return cast(Union[None, Unset, int], data)
97
153
 
98
- took = d.pop("took", UNSET)
154
+ took = _parse_took(d.pop("took", UNSET))
99
155
 
100
156
  type = d.pop("type", UNSET)
101
157
 
@@ -3,11 +3,11 @@ from typing import Any, Type, TypeVar
3
3
  from attrs import define as _attrs_define
4
4
  from attrs import field as _attrs_field
5
5
 
6
- T = TypeVar("T", bound="FunctionDeploymentPodTemplate")
6
+ T = TypeVar("T", bound="AgentDeploymentPodTemplateType0")
7
7
 
8
8
 
9
9
  @_attrs_define
10
- class FunctionDeploymentPodTemplate:
10
+ class AgentDeploymentPodTemplateType0:
11
11
  """The pod template, should be a valid Kubernetes pod template"""
12
12
 
13
13
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
@@ -21,10 +21,10 @@ class FunctionDeploymentPodTemplate:
21
21
  @classmethod
22
22
  def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
23
23
  d = src_dict.copy()
24
- function_deployment_pod_template = cls()
24
+ agent_deployment_pod_template_type_0 = cls()
25
25
 
26
- function_deployment_pod_template.additional_properties = d
27
- return function_deployment_pod_template
26
+ agent_deployment_pod_template_type_0.additional_properties = d
27
+ return agent_deployment_pod_template_type_0
28
28
 
29
29
  @property
30
30
  def additional_keys(self) -> list[str]: