beamlit 0.0.34rc57__py3-none-any.whl → 0.0.34rc59__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.
@@ -0,0 +1,45 @@
1
+ from typing import Any, TypeVar
2
+
3
+ from attrs import define as _attrs_define
4
+ from attrs import field as _attrs_field
5
+
6
+ T = TypeVar("T", bound="LatencyMetric")
7
+
8
+
9
+ @_attrs_define
10
+ class LatencyMetric:
11
+ """Latency metrics"""
12
+
13
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
14
+
15
+ def to_dict(self) -> dict[str, Any]:
16
+ field_dict: dict[str, Any] = {}
17
+ field_dict.update(self.additional_properties)
18
+
19
+ return field_dict
20
+
21
+ @classmethod
22
+ def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T:
23
+ if not src_dict:
24
+ return None
25
+ d = src_dict.copy()
26
+ latency_metric = cls()
27
+
28
+ latency_metric.additional_properties = d
29
+ return latency_metric
30
+
31
+ @property
32
+ def additional_keys(self) -> list[str]:
33
+ return list(self.additional_properties.keys())
34
+
35
+ def __getitem__(self, key: str) -> Any:
36
+ return self.additional_properties[key]
37
+
38
+ def __setitem__(self, key: str, value: Any) -> None:
39
+ self.additional_properties[key] = value
40
+
41
+ def __delitem__(self, key: str) -> None:
42
+ del self.additional_properties[key]
43
+
44
+ def __contains__(self, key: str) -> bool:
45
+ return key in self.additional_properties
beamlit/models/metric.py CHANGED
@@ -13,26 +13,32 @@ class Metric:
13
13
  """Metric
14
14
 
15
15
  Attributes:
16
+ rate (Union[Unset, str]): Metric value
17
+ request_total (Union[Unset, str]): Metric value
16
18
  timestamp (Union[Unset, str]): Metric timestamp
17
- value (Union[Unset, str]): Metric value
18
19
  """
19
20
 
21
+ rate: Union[Unset, str] = UNSET
22
+ request_total: Union[Unset, str] = UNSET
20
23
  timestamp: Union[Unset, str] = UNSET
21
- value: Union[Unset, str] = UNSET
22
24
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
23
25
 
24
26
  def to_dict(self) -> dict[str, Any]:
25
- timestamp = self.timestamp
27
+ rate = self.rate
28
+
29
+ request_total = self.request_total
26
30
 
27
- value = self.value
31
+ timestamp = self.timestamp
28
32
 
29
33
  field_dict: dict[str, Any] = {}
30
34
  field_dict.update(self.additional_properties)
31
35
  field_dict.update({})
36
+ if rate is not UNSET:
37
+ field_dict["rate"] = rate
38
+ if request_total is not UNSET:
39
+ field_dict["requestTotal"] = request_total
32
40
  if timestamp is not UNSET:
33
41
  field_dict["timestamp"] = timestamp
34
- if value is not UNSET:
35
- field_dict["value"] = value
36
42
 
37
43
  return field_dict
38
44
 
@@ -41,13 +47,16 @@ class Metric:
41
47
  if not src_dict:
42
48
  return None
43
49
  d = src_dict.copy()
44
- timestamp = d.pop("timestamp", UNSET)
50
+ rate = d.pop("rate", UNSET)
51
+
52
+ request_total = d.pop("requestTotal", UNSET)
45
53
 
46
- value = d.pop("value", UNSET)
54
+ timestamp = d.pop("timestamp", UNSET)
47
55
 
48
56
  metric = cls(
57
+ rate=rate,
58
+ request_total=request_total,
49
59
  timestamp=timestamp,
50
- value=value,
51
60
  )
52
61
 
53
62
  metric.additional_properties = d
beamlit/models/metrics.py CHANGED
@@ -1,14 +1,10 @@
1
- from typing import TYPE_CHECKING, Any, TypeVar, Union
1
+ from typing import Any, TypeVar, Union
2
2
 
3
3
  from attrs import define as _attrs_define
4
4
  from attrs import field as _attrs_field
5
5
 
6
6
  from ..types import UNSET, Unset
7
7
 
8
- if TYPE_CHECKING:
9
- from ..models.increase_and_rate_metric import IncreaseAndRateMetric
10
-
11
-
12
8
  T = TypeVar("T", bound="Metrics")
13
9
 
14
10
 
@@ -17,91 +13,95 @@ class Metrics:
17
13
  """Metrics for resources
18
14
 
19
15
  Attributes:
16
+ agents (Union[Unset, Any]): Metrics for agents
17
+ functions (Union[Unset, Any]): Metrics for functions
20
18
  inference_global (Union[Unset, Any]): Historical requests for all resources globally
21
- query (Union[Unset, Any]): Number of requests for all resources globally
22
- agents (Union[Unset, IncreaseAndRateMetric]): Metrics for resources
23
- functions (Union[Unset, IncreaseAndRateMetric]): Metrics for resources
24
- models (Union[Unset, IncreaseAndRateMetric]): Metrics for resources
19
+ models (Union[Unset, Any]): Metrics for models
20
+ request_total (Union[Unset, Any]): Number of requests for all resources globally
21
+ request_total_per_code (Union[Unset, Any]): Number of requests for all resources globally per code
22
+ rps (Union[Unset, Any]): Number of requests per second for all resources globally
23
+ rps_per_code (Union[Unset, Any]): Number of requests per second for all resources globally per code
25
24
  """
26
25
 
26
+ agents: Union[Unset, Any] = UNSET
27
+ functions: Union[Unset, Any] = UNSET
27
28
  inference_global: Union[Unset, Any] = UNSET
28
- query: Union[Unset, Any] = UNSET
29
- agents: Union[Unset, "IncreaseAndRateMetric"] = UNSET
30
- functions: Union[Unset, "IncreaseAndRateMetric"] = UNSET
31
- models: Union[Unset, "IncreaseAndRateMetric"] = UNSET
29
+ models: Union[Unset, Any] = UNSET
30
+ request_total: Union[Unset, Any] = UNSET
31
+ request_total_per_code: Union[Unset, Any] = UNSET
32
+ rps: Union[Unset, Any] = UNSET
33
+ rps_per_code: Union[Unset, Any] = UNSET
32
34
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
33
35
 
34
36
  def to_dict(self) -> dict[str, Any]:
37
+ agents = self.agents
38
+
39
+ functions = self.functions
40
+
35
41
  inference_global = self.inference_global
36
42
 
37
- query = self.query
43
+ models = self.models
44
+
45
+ request_total = self.request_total
38
46
 
39
- agents: Union[Unset, dict[str, Any]] = UNSET
40
- if not isinstance(self.agents, Unset):
41
- agents = self.agents.to_dict()
47
+ request_total_per_code = self.request_total_per_code
42
48
 
43
- functions: Union[Unset, dict[str, Any]] = UNSET
44
- if not isinstance(self.functions, Unset):
45
- functions = self.functions.to_dict()
49
+ rps = self.rps
46
50
 
47
- models: Union[Unset, dict[str, Any]] = UNSET
48
- if not isinstance(self.models, Unset):
49
- models = self.models.to_dict()
51
+ rps_per_code = self.rps_per_code
50
52
 
51
53
  field_dict: dict[str, Any] = {}
52
54
  field_dict.update(self.additional_properties)
53
55
  field_dict.update({})
54
- if inference_global is not UNSET:
55
- field_dict["inferenceGlobal"] = inference_global
56
- if query is not UNSET:
57
- field_dict["query"] = query
58
56
  if agents is not UNSET:
59
57
  field_dict["agents"] = agents
60
58
  if functions is not UNSET:
61
59
  field_dict["functions"] = functions
60
+ if inference_global is not UNSET:
61
+ field_dict["inferenceGlobal"] = inference_global
62
62
  if models is not UNSET:
63
63
  field_dict["models"] = models
64
+ if request_total is not UNSET:
65
+ field_dict["requestTotal"] = request_total
66
+ if request_total_per_code is not UNSET:
67
+ field_dict["requestTotalPerCode"] = request_total_per_code
68
+ if rps is not UNSET:
69
+ field_dict["rps"] = rps
70
+ if rps_per_code is not UNSET:
71
+ field_dict["rpsPerCode"] = rps_per_code
64
72
 
65
73
  return field_dict
66
74
 
67
75
  @classmethod
68
76
  def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T:
69
- from ..models.increase_and_rate_metric import IncreaseAndRateMetric
70
-
71
77
  if not src_dict:
72
78
  return None
73
79
  d = src_dict.copy()
80
+ agents = d.pop("agents", UNSET)
81
+
82
+ functions = d.pop("functions", UNSET)
83
+
74
84
  inference_global = d.pop("inferenceGlobal", UNSET)
75
85
 
76
- query = d.pop("query", UNSET)
77
-
78
- _agents = d.pop("agents", UNSET)
79
- agents: Union[Unset, IncreaseAndRateMetric]
80
- if isinstance(_agents, Unset):
81
- agents = UNSET
82
- else:
83
- agents = IncreaseAndRateMetric.from_dict(_agents)
84
-
85
- _functions = d.pop("functions", UNSET)
86
- functions: Union[Unset, IncreaseAndRateMetric]
87
- if isinstance(_functions, Unset):
88
- functions = UNSET
89
- else:
90
- functions = IncreaseAndRateMetric.from_dict(_functions)
91
-
92
- _models = d.pop("models", UNSET)
93
- models: Union[Unset, IncreaseAndRateMetric]
94
- if isinstance(_models, Unset):
95
- models = UNSET
96
- else:
97
- models = IncreaseAndRateMetric.from_dict(_models)
86
+ models = d.pop("models", UNSET)
87
+
88
+ request_total = d.pop("requestTotal", UNSET)
89
+
90
+ request_total_per_code = d.pop("requestTotalPerCode", UNSET)
91
+
92
+ rps = d.pop("rps", UNSET)
93
+
94
+ rps_per_code = d.pop("rpsPerCode", UNSET)
98
95
 
99
96
  metrics = cls(
100
- inference_global=inference_global,
101
- query=query,
102
97
  agents=agents,
103
98
  functions=functions,
99
+ inference_global=inference_global,
104
100
  models=models,
101
+ request_total=request_total,
102
+ request_total_per_code=request_total_per_code,
103
+ rps=rps,
104
+ rps_per_code=rps_per_code,
105
105
  )
106
106
 
107
107
  metrics.additional_properties = d
beamlit/models/model.py CHANGED
@@ -6,6 +6,7 @@ from attrs import field as _attrs_field
6
6
  from ..types import UNSET, Unset
7
7
 
8
8
  if TYPE_CHECKING:
9
+ from ..models.core_event import CoreEvent
9
10
  from ..models.core_status import CoreStatus
10
11
  from ..models.environment_metadata import EnvironmentMetadata
11
12
  from ..models.model_spec import ModelSpec
@@ -19,17 +20,26 @@ class Model:
19
20
  """Logical object representing a model, that can be instantiated in multiple environments as model deployments
20
21
 
21
22
  Attributes:
23
+ events (Union[Unset, list['CoreEvent']]): Core events
22
24
  metadata (Union[Unset, EnvironmentMetadata]): Environment metadata
23
25
  spec (Union[Unset, ModelSpec]): Model specification
24
26
  status (Union[Unset, CoreStatus]): Core status
25
27
  """
26
28
 
29
+ events: Union[Unset, list["CoreEvent"]] = UNSET
27
30
  metadata: Union[Unset, "EnvironmentMetadata"] = UNSET
28
31
  spec: Union[Unset, "ModelSpec"] = UNSET
29
32
  status: Union[Unset, "CoreStatus"] = UNSET
30
33
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
31
34
 
32
35
  def to_dict(self) -> dict[str, Any]:
36
+ events: Union[Unset, list[dict[str, Any]]] = UNSET
37
+ if not isinstance(self.events, Unset):
38
+ events = []
39
+ for componentsschemas_core_events_item_data in self.events:
40
+ componentsschemas_core_events_item = componentsschemas_core_events_item_data.to_dict()
41
+ events.append(componentsschemas_core_events_item)
42
+
33
43
  metadata: Union[Unset, dict[str, Any]] = UNSET
34
44
  if not isinstance(self.metadata, Unset):
35
45
  metadata = self.metadata.to_dict()
@@ -45,6 +55,8 @@ class Model:
45
55
  field_dict: dict[str, Any] = {}
46
56
  field_dict.update(self.additional_properties)
47
57
  field_dict.update({})
58
+ if events is not UNSET:
59
+ field_dict["events"] = events
48
60
  if metadata is not UNSET:
49
61
  field_dict["metadata"] = metadata
50
62
  if spec is not UNSET:
@@ -56,6 +68,7 @@ class Model:
56
68
 
57
69
  @classmethod
58
70
  def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T:
71
+ from ..models.core_event import CoreEvent
59
72
  from ..models.core_status import CoreStatus
60
73
  from ..models.environment_metadata import EnvironmentMetadata
61
74
  from ..models.model_spec import ModelSpec
@@ -63,6 +76,13 @@ class Model:
63
76
  if not src_dict:
64
77
  return None
65
78
  d = src_dict.copy()
79
+ events = []
80
+ _events = d.pop("events", UNSET)
81
+ for componentsschemas_core_events_item_data in _events or []:
82
+ componentsschemas_core_events_item = CoreEvent.from_dict(componentsschemas_core_events_item_data)
83
+
84
+ events.append(componentsschemas_core_events_item)
85
+
66
86
  _metadata = d.pop("metadata", UNSET)
67
87
  metadata: Union[Unset, EnvironmentMetadata]
68
88
  if isinstance(_metadata, Unset):
@@ -85,6 +105,7 @@ class Model:
85
105
  status = CoreStatus.from_dict(_status)
86
106
 
87
107
  model = cls(
108
+ events=events,
88
109
  metadata=metadata,
89
110
  spec=spec,
90
111
  status=status,
@@ -0,0 +1,70 @@
1
+ from typing import Any, 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
+ T = TypeVar("T", bound="Repository")
9
+
10
+
11
+ @_attrs_define
12
+ class Repository:
13
+ """Repository
14
+
15
+ Attributes:
16
+ type_ (Union[Unset, str]): Repository type
17
+ url (Union[Unset, str]): Repository URL
18
+ """
19
+
20
+ type_: Union[Unset, str] = UNSET
21
+ url: Union[Unset, str] = UNSET
22
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
23
+
24
+ def to_dict(self) -> dict[str, Any]:
25
+ type_ = self.type_
26
+
27
+ url = self.url
28
+
29
+ field_dict: dict[str, Any] = {}
30
+ field_dict.update(self.additional_properties)
31
+ field_dict.update({})
32
+ if type_ is not UNSET:
33
+ field_dict["type"] = type_
34
+ if url is not UNSET:
35
+ field_dict["url"] = url
36
+
37
+ return field_dict
38
+
39
+ @classmethod
40
+ def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T:
41
+ if not src_dict:
42
+ return None
43
+ d = src_dict.copy()
44
+ type_ = d.pop("type", UNSET)
45
+
46
+ url = d.pop("url", UNSET)
47
+
48
+ repository = cls(
49
+ type_=type_,
50
+ url=url,
51
+ )
52
+
53
+ repository.additional_properties = d
54
+ return repository
55
+
56
+ @property
57
+ def additional_keys(self) -> list[str]:
58
+ return list(self.additional_properties.keys())
59
+
60
+ def __getitem__(self, key: str) -> Any:
61
+ return self.additional_properties[key]
62
+
63
+ def __setitem__(self, key: str, value: Any) -> None:
64
+ self.additional_properties[key] = value
65
+
66
+ def __delitem__(self, key: str) -> None:
67
+ del self.additional_properties[key]
68
+
69
+ def __contains__(self, key: str) -> bool:
70
+ return key in self.additional_properties
@@ -0,0 +1,88 @@
1
+ from typing import Any, 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
+ T = TypeVar("T", bound="RequestTotalMetric")
9
+
10
+
11
+ @_attrs_define
12
+ class RequestTotalMetric:
13
+ """Metrics for request total
14
+
15
+ Attributes:
16
+ request_total (Union[Unset, Any]): Number of requests for all resources globally
17
+ request_total_per_code (Union[Unset, Any]): Number of requests for all resources globally
18
+ rps (Union[Unset, Any]): Number of requests for all resources globally
19
+ rps_per_code (Union[Unset, Any]): Number of requests for all resources globally
20
+ """
21
+
22
+ request_total: Union[Unset, Any] = UNSET
23
+ request_total_per_code: Union[Unset, Any] = UNSET
24
+ rps: Union[Unset, Any] = UNSET
25
+ rps_per_code: Union[Unset, Any] = UNSET
26
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
27
+
28
+ def to_dict(self) -> dict[str, Any]:
29
+ request_total = self.request_total
30
+
31
+ request_total_per_code = self.request_total_per_code
32
+
33
+ rps = self.rps
34
+
35
+ rps_per_code = self.rps_per_code
36
+
37
+ field_dict: dict[str, Any] = {}
38
+ field_dict.update(self.additional_properties)
39
+ field_dict.update({})
40
+ if request_total is not UNSET:
41
+ field_dict["requestTotal"] = request_total
42
+ if request_total_per_code is not UNSET:
43
+ field_dict["requestTotalPerCode"] = request_total_per_code
44
+ if rps is not UNSET:
45
+ field_dict["rps"] = rps
46
+ if rps_per_code is not UNSET:
47
+ field_dict["rpsPerCode"] = rps_per_code
48
+
49
+ return field_dict
50
+
51
+ @classmethod
52
+ def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T:
53
+ if not src_dict:
54
+ return None
55
+ d = src_dict.copy()
56
+ request_total = d.pop("requestTotal", UNSET)
57
+
58
+ request_total_per_code = d.pop("requestTotalPerCode", UNSET)
59
+
60
+ rps = d.pop("rps", UNSET)
61
+
62
+ rps_per_code = d.pop("rpsPerCode", UNSET)
63
+
64
+ request_total_metric = cls(
65
+ request_total=request_total,
66
+ request_total_per_code=request_total_per_code,
67
+ rps=rps,
68
+ rps_per_code=rps_per_code,
69
+ )
70
+
71
+ request_total_metric.additional_properties = d
72
+ return request_total_metric
73
+
74
+ @property
75
+ def additional_keys(self) -> list[str]:
76
+ return list(self.additional_properties.keys())
77
+
78
+ def __getitem__(self, key: str) -> Any:
79
+ return self.additional_properties[key]
80
+
81
+ def __setitem__(self, key: str, value: Any) -> None:
82
+ self.additional_properties[key] = value
83
+
84
+ def __delitem__(self, key: str) -> None:
85
+ del self.additional_properties[key]
86
+
87
+ def __contains__(self, key: str) -> bool:
88
+ return key in self.additional_properties