blaxel 0.1.9rc35__py3-none-any.whl → 0.1.9rc36__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. blaxel/agents/__init__.py +1 -1
  2. blaxel/authentication/__init__.py +3 -4
  3. blaxel/client/api/compute/__init__.py +0 -0
  4. blaxel/client/api/compute/create_sandbox.py +166 -0
  5. blaxel/client/api/compute/delete_sandbox.py +154 -0
  6. blaxel/client/api/compute/get_sandbox.py +154 -0
  7. blaxel/client/api/compute/list_sandboxes.py +135 -0
  8. blaxel/client/api/compute/start_sandbox.py +157 -0
  9. blaxel/client/api/compute/stop_sandbox.py +157 -0
  10. blaxel/client/api/compute/update_sandbox.py +179 -0
  11. blaxel/client/api/default/list_sandbox_hub_definitions.py +123 -0
  12. blaxel/client/api/functions/list_function_revisions.py +16 -11
  13. blaxel/client/api/knowledgebases/list_knowledgebase_revisions.py +16 -11
  14. blaxel/client/api/models/list_model_revisions.py +16 -11
  15. blaxel/client/api/templates/list_templates.py +16 -11
  16. blaxel/client/models/__init__.py +32 -2
  17. blaxel/client/models/agent_spec.py +25 -69
  18. blaxel/client/models/core_spec.py +1 -45
  19. blaxel/client/models/function_spec.py +1 -45
  20. blaxel/client/models/last_n_requests_metric.py +18 -0
  21. blaxel/client/models/metrics.py +20 -0
  22. blaxel/client/models/model_spec.py +1 -45
  23. blaxel/client/models/{agent_chain.py → port.py} +23 -32
  24. blaxel/client/models/request_total_metric.py +12 -1
  25. blaxel/client/models/request_total_response_data.py +97 -0
  26. blaxel/client/models/resource_log.py +9 -0
  27. blaxel/client/models/resource_metrics.py +144 -0
  28. blaxel/client/models/resource_metrics_request_total_per_code_previous.py +45 -0
  29. blaxel/client/models/resource_metrics_rps_per_code_previous.py +45 -0
  30. blaxel/client/models/runtime.py +83 -7
  31. blaxel/client/models/runtime_configuration.py +45 -0
  32. blaxel/client/models/sandbox.py +129 -0
  33. blaxel/client/models/sandbox_definition.py +181 -0
  34. blaxel/client/models/sandbox_spec.py +208 -0
  35. blaxel/client/models/sandboxes.py +129 -0
  36. blaxel/client/models/serverless_config.py +29 -1
  37. blaxel/client/models/serverless_config_configuration.py +45 -0
  38. blaxel/client/models/start_sandbox.py +94 -0
  39. blaxel/client/models/stop_sandbox.py +94 -0
  40. blaxel/client/models/trigger.py +98 -0
  41. blaxel/client/models/trigger_configuration.py +45 -0
  42. blaxel/client/models/workspace.py +20 -0
  43. blaxel/client/models/workspace_runtime.py +61 -0
  44. blaxel/common/autoload.py +0 -1
  45. blaxel/instrumentation/exporters.py +3 -6
  46. blaxel/instrumentation/manager.py +5 -3
  47. blaxel/mcp/client.py +1 -3
  48. blaxel/mcp/server.py +2 -3
  49. blaxel/models/__init__.py +2 -1
  50. blaxel/models/custom/langchain/gemini.py +41 -18
  51. blaxel/models/custom/llamaindex/cohere.py +25 -16
  52. blaxel/models/custom/pydantic/gemini.py +0 -1
  53. blaxel/models/livekit.py +1 -1
  54. blaxel/tools/__init__.py +1 -1
  55. blaxel/tools/langchain.py +1 -2
  56. {blaxel-0.1.9rc35.dist-info → blaxel-0.1.9rc36.dist-info}/METADATA +1 -4
  57. {blaxel-0.1.9rc35.dist-info → blaxel-0.1.9rc36.dist-info}/RECORD +59 -36
  58. {blaxel-0.1.9rc35.dist-info → blaxel-0.1.9rc36.dist-info}/WHEEL +0 -0
  59. {blaxel-0.1.9rc35.dist-info → blaxel-0.1.9rc36.dist-info}/licenses/LICENSE +0 -0
@@ -20,9 +20,14 @@ def _get_kwargs(
20
20
  return _kwargs
21
21
 
22
22
 
23
- def _parse_response(*, client: Client, response: httpx.Response) -> Optional[RevisionMetadata]:
23
+ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[list["RevisionMetadata"]]:
24
24
  if response.status_code == 200:
25
- response_200 = RevisionMetadata.from_dict(response.json())
25
+ response_200 = []
26
+ _response_200 = response.json()
27
+ for response_200_item_data in _response_200:
28
+ response_200_item = RevisionMetadata.from_dict(response_200_item_data)
29
+
30
+ response_200.append(response_200_item)
26
31
 
27
32
  return response_200
28
33
  if client.raise_on_unexpected_status:
@@ -31,7 +36,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Rev
31
36
  return None
32
37
 
33
38
 
34
- def _build_response(*, client: Client, response: httpx.Response) -> Response[RevisionMetadata]:
39
+ def _build_response(*, client: Client, response: httpx.Response) -> Response[list["RevisionMetadata"]]:
35
40
  return Response(
36
41
  status_code=HTTPStatus(response.status_code),
37
42
  content=response.content,
@@ -44,7 +49,7 @@ def sync_detailed(
44
49
  knowledgebase_name: str,
45
50
  *,
46
51
  client: Union[Client],
47
- ) -> Response[RevisionMetadata]:
52
+ ) -> Response[list["RevisionMetadata"]]:
48
53
  """List knowledgebase revisions
49
54
 
50
55
  Returns revisions for a knowledgebase by name.
@@ -57,7 +62,7 @@ def sync_detailed(
57
62
  httpx.TimeoutException: If the request takes longer than Client.timeout.
58
63
 
59
64
  Returns:
60
- Response[RevisionMetadata]
65
+ Response[list['RevisionMetadata']]
61
66
  """
62
67
 
63
68
  kwargs = _get_kwargs(
@@ -75,7 +80,7 @@ def sync(
75
80
  knowledgebase_name: str,
76
81
  *,
77
82
  client: Union[Client],
78
- ) -> Optional[RevisionMetadata]:
83
+ ) -> Optional[list["RevisionMetadata"]]:
79
84
  """List knowledgebase revisions
80
85
 
81
86
  Returns revisions for a knowledgebase by name.
@@ -88,7 +93,7 @@ def sync(
88
93
  httpx.TimeoutException: If the request takes longer than Client.timeout.
89
94
 
90
95
  Returns:
91
- RevisionMetadata
96
+ list['RevisionMetadata']
92
97
  """
93
98
 
94
99
  return sync_detailed(
@@ -101,7 +106,7 @@ async def asyncio_detailed(
101
106
  knowledgebase_name: str,
102
107
  *,
103
108
  client: Union[Client],
104
- ) -> Response[RevisionMetadata]:
109
+ ) -> Response[list["RevisionMetadata"]]:
105
110
  """List knowledgebase revisions
106
111
 
107
112
  Returns revisions for a knowledgebase by name.
@@ -114,7 +119,7 @@ async def asyncio_detailed(
114
119
  httpx.TimeoutException: If the request takes longer than Client.timeout.
115
120
 
116
121
  Returns:
117
- Response[RevisionMetadata]
122
+ Response[list['RevisionMetadata']]
118
123
  """
119
124
 
120
125
  kwargs = _get_kwargs(
@@ -130,7 +135,7 @@ async def asyncio(
130
135
  knowledgebase_name: str,
131
136
  *,
132
137
  client: Union[Client],
133
- ) -> Optional[RevisionMetadata]:
138
+ ) -> Optional[list["RevisionMetadata"]]:
134
139
  """List knowledgebase revisions
135
140
 
136
141
  Returns revisions for a knowledgebase by name.
@@ -143,7 +148,7 @@ async def asyncio(
143
148
  httpx.TimeoutException: If the request takes longer than Client.timeout.
144
149
 
145
150
  Returns:
146
- RevisionMetadata
151
+ list['RevisionMetadata']
147
152
  """
148
153
 
149
154
  return (
@@ -20,9 +20,14 @@ def _get_kwargs(
20
20
  return _kwargs
21
21
 
22
22
 
23
- def _parse_response(*, client: Client, response: httpx.Response) -> Optional[RevisionMetadata]:
23
+ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[list["RevisionMetadata"]]:
24
24
  if response.status_code == 200:
25
- response_200 = RevisionMetadata.from_dict(response.json())
25
+ response_200 = []
26
+ _response_200 = response.json()
27
+ for response_200_item_data in _response_200:
28
+ response_200_item = RevisionMetadata.from_dict(response_200_item_data)
29
+
30
+ response_200.append(response_200_item)
26
31
 
27
32
  return response_200
28
33
  if client.raise_on_unexpected_status:
@@ -31,7 +36,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Rev
31
36
  return None
32
37
 
33
38
 
34
- def _build_response(*, client: Client, response: httpx.Response) -> Response[RevisionMetadata]:
39
+ def _build_response(*, client: Client, response: httpx.Response) -> Response[list["RevisionMetadata"]]:
35
40
  return Response(
36
41
  status_code=HTTPStatus(response.status_code),
37
42
  content=response.content,
@@ -44,7 +49,7 @@ def sync_detailed(
44
49
  model_name: str,
45
50
  *,
46
51
  client: Union[Client],
47
- ) -> Response[RevisionMetadata]:
52
+ ) -> Response[list["RevisionMetadata"]]:
48
53
  """List model revisions
49
54
 
50
55
  Returns revisions for a model by name.
@@ -57,7 +62,7 @@ def sync_detailed(
57
62
  httpx.TimeoutException: If the request takes longer than Client.timeout.
58
63
 
59
64
  Returns:
60
- Response[RevisionMetadata]
65
+ Response[list['RevisionMetadata']]
61
66
  """
62
67
 
63
68
  kwargs = _get_kwargs(
@@ -75,7 +80,7 @@ def sync(
75
80
  model_name: str,
76
81
  *,
77
82
  client: Union[Client],
78
- ) -> Optional[RevisionMetadata]:
83
+ ) -> Optional[list["RevisionMetadata"]]:
79
84
  """List model revisions
80
85
 
81
86
  Returns revisions for a model by name.
@@ -88,7 +93,7 @@ def sync(
88
93
  httpx.TimeoutException: If the request takes longer than Client.timeout.
89
94
 
90
95
  Returns:
91
- RevisionMetadata
96
+ list['RevisionMetadata']
92
97
  """
93
98
 
94
99
  return sync_detailed(
@@ -101,7 +106,7 @@ async def asyncio_detailed(
101
106
  model_name: str,
102
107
  *,
103
108
  client: Union[Client],
104
- ) -> Response[RevisionMetadata]:
109
+ ) -> Response[list["RevisionMetadata"]]:
105
110
  """List model revisions
106
111
 
107
112
  Returns revisions for a model by name.
@@ -114,7 +119,7 @@ async def asyncio_detailed(
114
119
  httpx.TimeoutException: If the request takes longer than Client.timeout.
115
120
 
116
121
  Returns:
117
- Response[RevisionMetadata]
122
+ Response[list['RevisionMetadata']]
118
123
  """
119
124
 
120
125
  kwargs = _get_kwargs(
@@ -130,7 +135,7 @@ async def asyncio(
130
135
  model_name: str,
131
136
  *,
132
137
  client: Union[Client],
133
- ) -> Optional[RevisionMetadata]:
138
+ ) -> Optional[list["RevisionMetadata"]]:
134
139
  """List model revisions
135
140
 
136
141
  Returns revisions for a model by name.
@@ -143,7 +148,7 @@ async def asyncio(
143
148
  httpx.TimeoutException: If the request takes longer than Client.timeout.
144
149
 
145
150
  Returns:
146
- RevisionMetadata
151
+ list['RevisionMetadata']
147
152
  """
148
153
 
149
154
  return (
@@ -18,9 +18,14 @@ def _get_kwargs() -> dict[str, Any]:
18
18
  return _kwargs
19
19
 
20
20
 
21
- def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Template]:
21
+ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[list["Template"]]:
22
22
  if response.status_code == 200:
23
- response_200 = Template.from_dict(response.json())
23
+ response_200 = []
24
+ _response_200 = response.json()
25
+ for response_200_item_data in _response_200:
26
+ response_200_item = Template.from_dict(response_200_item_data)
27
+
28
+ response_200.append(response_200_item)
24
29
 
25
30
  return response_200
26
31
  if client.raise_on_unexpected_status:
@@ -29,7 +34,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Tem
29
34
  return None
30
35
 
31
36
 
32
- def _build_response(*, client: Client, response: httpx.Response) -> Response[Template]:
37
+ def _build_response(*, client: Client, response: httpx.Response) -> Response[list["Template"]]:
33
38
  return Response(
34
39
  status_code=HTTPStatus(response.status_code),
35
40
  content=response.content,
@@ -41,7 +46,7 @@ def _build_response(*, client: Client, response: httpx.Response) -> Response[Tem
41
46
  def sync_detailed(
42
47
  *,
43
48
  client: Union[Client],
44
- ) -> Response[Template]:
49
+ ) -> Response[list["Template"]]:
45
50
  """List templates
46
51
 
47
52
  Returns a list of all templates.
@@ -51,7 +56,7 @@ def sync_detailed(
51
56
  httpx.TimeoutException: If the request takes longer than Client.timeout.
52
57
 
53
58
  Returns:
54
- Response[Template]
59
+ Response[list['Template']]
55
60
  """
56
61
 
57
62
  kwargs = _get_kwargs()
@@ -66,7 +71,7 @@ def sync_detailed(
66
71
  def sync(
67
72
  *,
68
73
  client: Union[Client],
69
- ) -> Optional[Template]:
74
+ ) -> Optional[list["Template"]]:
70
75
  """List templates
71
76
 
72
77
  Returns a list of all templates.
@@ -76,7 +81,7 @@ def sync(
76
81
  httpx.TimeoutException: If the request takes longer than Client.timeout.
77
82
 
78
83
  Returns:
79
- Template
84
+ list['Template']
80
85
  """
81
86
 
82
87
  return sync_detailed(
@@ -87,7 +92,7 @@ def sync(
87
92
  async def asyncio_detailed(
88
93
  *,
89
94
  client: Union[Client],
90
- ) -> Response[Template]:
95
+ ) -> Response[list["Template"]]:
91
96
  """List templates
92
97
 
93
98
  Returns a list of all templates.
@@ -97,7 +102,7 @@ async def asyncio_detailed(
97
102
  httpx.TimeoutException: If the request takes longer than Client.timeout.
98
103
 
99
104
  Returns:
100
- Response[Template]
105
+ Response[list['Template']]
101
106
  """
102
107
 
103
108
  kwargs = _get_kwargs()
@@ -110,7 +115,7 @@ async def asyncio_detailed(
110
115
  async def asyncio(
111
116
  *,
112
117
  client: Union[Client],
113
- ) -> Optional[Template]:
118
+ ) -> Optional[list["Template"]]:
114
119
  """List templates
115
120
 
116
121
  Returns a list of all templates.
@@ -120,7 +125,7 @@ async def asyncio(
120
125
  httpx.TimeoutException: If the request takes longer than Client.timeout.
121
126
 
122
127
  Returns:
123
- Template
128
+ list['Template']
124
129
  """
125
130
 
126
131
  return (
@@ -2,7 +2,6 @@
2
2
 
3
3
  from .acl import ACL
4
4
  from .agent import Agent
5
- from .agent_chain import AgentChain
6
5
  from .agent_spec import AgentSpec
7
6
  from .api_key import ApiKey
8
7
  from .configuration import Configuration
@@ -74,6 +73,7 @@ from .policy import Policy
74
73
  from .policy_location import PolicyLocation
75
74
  from .policy_max_tokens import PolicyMaxTokens
76
75
  from .policy_spec import PolicySpec
76
+ from .port import Port
77
77
  from .private_cluster import PrivateCluster
78
78
  from .private_location import PrivateLocation
79
79
  from .repository import Repository
@@ -89,16 +89,29 @@ from .request_total_by_origin_metric_request_total_by_origin_and_code import (
89
89
  from .request_total_metric import RequestTotalMetric
90
90
  from .request_total_metric_request_total_per_code import RequestTotalMetricRequestTotalPerCode
91
91
  from .request_total_metric_rps_per_code import RequestTotalMetricRpsPerCode
92
+ from .request_total_response_data import RequestTotalResponseData
92
93
  from .resource_log import ResourceLog
93
94
  from .resource_metrics import ResourceMetrics
94
95
  from .resource_metrics_request_total_per_code import ResourceMetricsRequestTotalPerCode
96
+ from .resource_metrics_request_total_per_code_previous import (
97
+ ResourceMetricsRequestTotalPerCodePrevious,
98
+ )
95
99
  from .resource_metrics_rps_per_code import ResourceMetricsRpsPerCode
100
+ from .resource_metrics_rps_per_code_previous import ResourceMetricsRpsPerCodePrevious
96
101
  from .revision_configuration import RevisionConfiguration
97
102
  from .revision_metadata import RevisionMetadata
98
103
  from .runtime import Runtime
104
+ from .runtime_configuration import RuntimeConfiguration
99
105
  from .runtime_startup_probe import RuntimeStartupProbe
106
+ from .sandbox import Sandbox
107
+ from .sandbox_definition import SandboxDefinition
108
+ from .sandbox_spec import SandboxSpec
109
+ from .sandboxes import Sandboxes
100
110
  from .serverless_config import ServerlessConfig
111
+ from .serverless_config_configuration import ServerlessConfigConfiguration
101
112
  from .spec_configuration import SpecConfiguration
113
+ from .start_sandbox import StartSandbox
114
+ from .stop_sandbox import StopSandbox
102
115
  from .store_agent import StoreAgent
103
116
  from .store_agent_labels import StoreAgentLabels
104
117
  from .store_configuration import StoreConfiguration
@@ -111,18 +124,20 @@ from .token_rate_metric import TokenRateMetric
111
124
  from .token_rate_metrics import TokenRateMetrics
112
125
  from .token_total_metric import TokenTotalMetric
113
126
  from .trace_ids_response import TraceIdsResponse
127
+ from .trigger import Trigger
128
+ from .trigger_configuration import TriggerConfiguration
114
129
  from .update_workspace_service_account_body import UpdateWorkspaceServiceAccountBody
115
130
  from .update_workspace_service_account_response_200 import UpdateWorkspaceServiceAccountResponse200
116
131
  from .update_workspace_user_role_body import UpdateWorkspaceUserRoleBody
117
132
  from .websocket_channel import WebsocketChannel
118
133
  from .workspace import Workspace
119
134
  from .workspace_labels import WorkspaceLabels
135
+ from .workspace_runtime import WorkspaceRuntime
120
136
  from .workspace_user import WorkspaceUser
121
137
 
122
138
  __all__ = (
123
139
  "ACL",
124
140
  "Agent",
125
- "AgentChain",
126
141
  "AgentSpec",
127
142
  "ApiKey",
128
143
  "Configuration",
@@ -192,6 +207,7 @@ __all__ = (
192
207
  "PolicyLocation",
193
208
  "PolicyMaxTokens",
194
209
  "PolicySpec",
210
+ "Port",
195
211
  "PrivateCluster",
196
212
  "PrivateLocation",
197
213
  "Repository",
@@ -203,16 +219,27 @@ __all__ = (
203
219
  "RequestTotalMetric",
204
220
  "RequestTotalMetricRequestTotalPerCode",
205
221
  "RequestTotalMetricRpsPerCode",
222
+ "RequestTotalResponseData",
206
223
  "ResourceLog",
207
224
  "ResourceMetrics",
208
225
  "ResourceMetricsRequestTotalPerCode",
226
+ "ResourceMetricsRequestTotalPerCodePrevious",
209
227
  "ResourceMetricsRpsPerCode",
228
+ "ResourceMetricsRpsPerCodePrevious",
210
229
  "RevisionConfiguration",
211
230
  "RevisionMetadata",
212
231
  "Runtime",
232
+ "RuntimeConfiguration",
213
233
  "RuntimeStartupProbe",
234
+ "Sandbox",
235
+ "SandboxDefinition",
236
+ "Sandboxes",
237
+ "SandboxSpec",
214
238
  "ServerlessConfig",
239
+ "ServerlessConfigConfiguration",
215
240
  "SpecConfiguration",
241
+ "StartSandbox",
242
+ "StopSandbox",
216
243
  "StoreAgent",
217
244
  "StoreAgentLabels",
218
245
  "StoreConfiguration",
@@ -225,11 +252,14 @@ __all__ = (
225
252
  "TokenRateMetrics",
226
253
  "TokenTotalMetric",
227
254
  "TraceIdsResponse",
255
+ "Trigger",
256
+ "TriggerConfiguration",
228
257
  "UpdateWorkspaceServiceAccountBody",
229
258
  "UpdateWorkspaceServiceAccountResponse200",
230
259
  "UpdateWorkspaceUserRoleBody",
231
260
  "WebsocketChannel",
232
261
  "Workspace",
233
262
  "WorkspaceLabels",
263
+ "WorkspaceRuntime",
234
264
  "WorkspaceUser",
235
265
  )
@@ -6,15 +6,13 @@ from attrs import field as _attrs_field
6
6
  from ..types import UNSET, Unset
7
7
 
8
8
  if TYPE_CHECKING:
9
- from ..models.agent_chain import AgentChain
10
9
  from ..models.core_spec_configurations import CoreSpecConfigurations
11
10
  from ..models.flavor import Flavor
12
11
  from ..models.model_private_cluster import ModelPrivateCluster
13
- from ..models.pod_template_spec import PodTemplateSpec
14
12
  from ..models.repository import Repository
15
13
  from ..models.revision_configuration import RevisionConfiguration
16
14
  from ..models.runtime import Runtime
17
- from ..models.serverless_config import ServerlessConfig
15
+ from ..models.trigger import Trigger
18
16
 
19
17
 
20
18
  T = TypeVar("T", bound="AgentSpec")
@@ -26,17 +24,14 @@ class AgentSpec:
26
24
 
27
25
  Attributes:
28
26
  configurations (Union[Unset, CoreSpecConfigurations]): Optional configurations for the object
29
- enabled (Union[Unset, bool]): Enable or disable the agent
27
+ enabled (Union[Unset, bool]): Enable or disable the resource
30
28
  flavors (Union[Unset, list['Flavor']]): Types of hardware available for deployments
31
29
  integration_connections (Union[Unset, list[str]]):
32
- pod_template (Union[Unset, PodTemplateSpec]): Pod template specification
33
30
  policies (Union[Unset, list[str]]):
34
31
  private_clusters (Union[Unset, ModelPrivateCluster]): Private cluster where the model deployment is deployed
35
32
  revision (Union[Unset, RevisionConfiguration]): Revision configuration
36
33
  runtime (Union[Unset, Runtime]): Set of configurations for a deployment
37
34
  sandbox (Union[Unset, bool]): Sandbox mode
38
- serverless_config (Union[Unset, ServerlessConfig]): Configuration for a serverless deployment
39
- agent_chain (Union[Unset, list['AgentChain']]): Agent chain
40
35
  description (Union[Unset, str]): Description, small description computed from the prompt
41
36
  functions (Union[Unset, list[str]]):
42
37
  knowledgebase (Union[Unset, str]): Knowledgebase Name
@@ -44,20 +39,18 @@ class AgentSpec:
44
39
  prompt (Union[Unset, str]): Prompt, describe what your agent does
45
40
  repository (Union[Unset, Repository]): Repository
46
41
  store_id (Union[Unset, str]): Store id
42
+ triggers (Union[Unset, list['Trigger']]): Triggers to use your agent
47
43
  """
48
44
 
49
45
  configurations: Union[Unset, "CoreSpecConfigurations"] = UNSET
50
46
  enabled: Union[Unset, bool] = UNSET
51
47
  flavors: Union[Unset, list["Flavor"]] = UNSET
52
48
  integration_connections: Union[Unset, list[str]] = UNSET
53
- pod_template: Union[Unset, "PodTemplateSpec"] = UNSET
54
49
  policies: Union[Unset, list[str]] = UNSET
55
50
  private_clusters: Union[Unset, "ModelPrivateCluster"] = UNSET
56
51
  revision: Union[Unset, "RevisionConfiguration"] = UNSET
57
52
  runtime: Union[Unset, "Runtime"] = UNSET
58
53
  sandbox: Union[Unset, bool] = UNSET
59
- serverless_config: Union[Unset, "ServerlessConfig"] = UNSET
60
- agent_chain: Union[Unset, list["AgentChain"]] = UNSET
61
54
  description: Union[Unset, str] = UNSET
62
55
  functions: Union[Unset, list[str]] = UNSET
63
56
  knowledgebase: Union[Unset, str] = UNSET
@@ -65,6 +58,7 @@ class AgentSpec:
65
58
  prompt: Union[Unset, str] = UNSET
66
59
  repository: Union[Unset, "Repository"] = UNSET
67
60
  store_id: Union[Unset, str] = UNSET
61
+ triggers: Union[Unset, list["Trigger"]] = UNSET
68
62
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
69
63
 
70
64
  def to_dict(self) -> dict[str, Any]:
@@ -94,12 +88,6 @@ class AgentSpec:
94
88
  if not isinstance(self.integration_connections, Unset):
95
89
  integration_connections = self.integration_connections
96
90
 
97
- pod_template: Union[Unset, dict[str, Any]] = UNSET
98
- if self.pod_template and not isinstance(self.pod_template, Unset) and not isinstance(self.pod_template, dict):
99
- pod_template = self.pod_template.to_dict()
100
- elif self.pod_template and isinstance(self.pod_template, dict):
101
- pod_template = self.pod_template
102
-
103
91
  policies: Union[Unset, list[str]] = UNSET
104
92
  if not isinstance(self.policies, Unset):
105
93
  policies = self.policies
@@ -128,26 +116,6 @@ class AgentSpec:
128
116
 
129
117
  sandbox = self.sandbox
130
118
 
131
- serverless_config: Union[Unset, dict[str, Any]] = UNSET
132
- if (
133
- self.serverless_config
134
- and not isinstance(self.serverless_config, Unset)
135
- and not isinstance(self.serverless_config, dict)
136
- ):
137
- serverless_config = self.serverless_config.to_dict()
138
- elif self.serverless_config and isinstance(self.serverless_config, dict):
139
- serverless_config = self.serverless_config
140
-
141
- agent_chain: Union[Unset, list[dict[str, Any]]] = UNSET
142
- if not isinstance(self.agent_chain, Unset):
143
- agent_chain = []
144
- for componentsschemas_agent_chains_item_data in self.agent_chain:
145
- if type(componentsschemas_agent_chains_item_data) == dict:
146
- componentsschemas_agent_chains_item = componentsschemas_agent_chains_item_data
147
- else:
148
- componentsschemas_agent_chains_item = componentsschemas_agent_chains_item_data.to_dict()
149
- agent_chain.append(componentsschemas_agent_chains_item)
150
-
151
119
  description = self.description
152
120
 
153
121
  functions: Union[Unset, list[str]] = UNSET
@@ -168,6 +136,16 @@ class AgentSpec:
168
136
 
169
137
  store_id = self.store_id
170
138
 
139
+ triggers: Union[Unset, list[dict[str, Any]]] = UNSET
140
+ if not isinstance(self.triggers, Unset):
141
+ triggers = []
142
+ for componentsschemas_triggers_item_data in self.triggers:
143
+ if type(componentsschemas_triggers_item_data) == dict:
144
+ componentsschemas_triggers_item = componentsschemas_triggers_item_data
145
+ else:
146
+ componentsschemas_triggers_item = componentsschemas_triggers_item_data.to_dict()
147
+ triggers.append(componentsschemas_triggers_item)
148
+
171
149
  field_dict: dict[str, Any] = {}
172
150
  field_dict.update(self.additional_properties)
173
151
  field_dict.update({})
@@ -179,8 +157,6 @@ class AgentSpec:
179
157
  field_dict["flavors"] = flavors
180
158
  if integration_connections is not UNSET:
181
159
  field_dict["integrationConnections"] = integration_connections
182
- if pod_template is not UNSET:
183
- field_dict["podTemplate"] = pod_template
184
160
  if policies is not UNSET:
185
161
  field_dict["policies"] = policies
186
162
  if private_clusters is not UNSET:
@@ -191,10 +167,6 @@ class AgentSpec:
191
167
  field_dict["runtime"] = runtime
192
168
  if sandbox is not UNSET:
193
169
  field_dict["sandbox"] = sandbox
194
- if serverless_config is not UNSET:
195
- field_dict["serverlessConfig"] = serverless_config
196
- if agent_chain is not UNSET:
197
- field_dict["agentChain"] = agent_chain
198
170
  if description is not UNSET:
199
171
  field_dict["description"] = description
200
172
  if functions is not UNSET:
@@ -209,20 +181,20 @@ class AgentSpec:
209
181
  field_dict["repository"] = repository
210
182
  if store_id is not UNSET:
211
183
  field_dict["storeId"] = store_id
184
+ if triggers is not UNSET:
185
+ field_dict["triggers"] = triggers
212
186
 
213
187
  return field_dict
214
188
 
215
189
  @classmethod
216
190
  def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T:
217
- from ..models.agent_chain import AgentChain
218
191
  from ..models.core_spec_configurations import CoreSpecConfigurations
219
192
  from ..models.flavor import Flavor
220
193
  from ..models.model_private_cluster import ModelPrivateCluster
221
- from ..models.pod_template_spec import PodTemplateSpec
222
194
  from ..models.repository import Repository
223
195
  from ..models.revision_configuration import RevisionConfiguration
224
196
  from ..models.runtime import Runtime
225
- from ..models.serverless_config import ServerlessConfig
197
+ from ..models.trigger import Trigger
226
198
 
227
199
  if not src_dict:
228
200
  return None
@@ -245,13 +217,6 @@ class AgentSpec:
245
217
 
246
218
  integration_connections = cast(list[str], d.pop("integrationConnections", UNSET))
247
219
 
248
- _pod_template = d.pop("podTemplate", UNSET)
249
- pod_template: Union[Unset, PodTemplateSpec]
250
- if isinstance(_pod_template, Unset):
251
- pod_template = UNSET
252
- else:
253
- pod_template = PodTemplateSpec.from_dict(_pod_template)
254
-
255
220
  policies = cast(list[str], d.pop("policies", UNSET))
256
221
 
257
222
  _private_clusters = d.pop("privateClusters", UNSET)
@@ -277,20 +242,6 @@ class AgentSpec:
277
242
 
278
243
  sandbox = d.pop("sandbox", UNSET)
279
244
 
280
- _serverless_config = d.pop("serverlessConfig", UNSET)
281
- serverless_config: Union[Unset, ServerlessConfig]
282
- if isinstance(_serverless_config, Unset):
283
- serverless_config = UNSET
284
- else:
285
- serverless_config = ServerlessConfig.from_dict(_serverless_config)
286
-
287
- agent_chain = []
288
- _agent_chain = d.pop("agentChain", UNSET)
289
- for componentsschemas_agent_chains_item_data in _agent_chain or []:
290
- componentsschemas_agent_chains_item = AgentChain.from_dict(componentsschemas_agent_chains_item_data)
291
-
292
- agent_chain.append(componentsschemas_agent_chains_item)
293
-
294
245
  description = d.pop("description", UNSET)
295
246
 
296
247
  functions = cast(list[str], d.pop("functions", UNSET))
@@ -310,19 +261,23 @@ class AgentSpec:
310
261
 
311
262
  store_id = d.pop("storeId", UNSET)
312
263
 
264
+ triggers = []
265
+ _triggers = d.pop("triggers", UNSET)
266
+ for componentsschemas_triggers_item_data in _triggers or []:
267
+ componentsschemas_triggers_item = Trigger.from_dict(componentsschemas_triggers_item_data)
268
+
269
+ triggers.append(componentsschemas_triggers_item)
270
+
313
271
  agent_spec = cls(
314
272
  configurations=configurations,
315
273
  enabled=enabled,
316
274
  flavors=flavors,
317
275
  integration_connections=integration_connections,
318
- pod_template=pod_template,
319
276
  policies=policies,
320
277
  private_clusters=private_clusters,
321
278
  revision=revision,
322
279
  runtime=runtime,
323
280
  sandbox=sandbox,
324
- serverless_config=serverless_config,
325
- agent_chain=agent_chain,
326
281
  description=description,
327
282
  functions=functions,
328
283
  knowledgebase=knowledgebase,
@@ -330,6 +285,7 @@ class AgentSpec:
330
285
  prompt=prompt,
331
286
  repository=repository,
332
287
  store_id=store_id,
288
+ triggers=triggers,
333
289
  )
334
290
 
335
291
  agent_spec.additional_properties = d