beamlit 0.0.27__py3-none-any.whl → 0.0.28__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- beamlit/api/agents/get_agent_trace_ids.py +106 -0
- beamlit/api/default/__init__.py +0 -0
- beamlit/api/default/get_trace.py +150 -0
- beamlit/api/default/get_trace_ids.py +233 -0
- beamlit/api/default/get_trace_logs.py +186 -0
- beamlit/api/functions/get_function_trace_ids.py +106 -0
- beamlit/api/models/get_model_trace_ids.py +106 -0
- beamlit/authentication/authentication.py +8 -2
- beamlit/client.py +13 -2
- beamlit/common/settings.py +12 -4
- beamlit/models/__init__.py +6 -0
- beamlit/models/get_trace_ids_response_200.py +45 -0
- beamlit/models/get_trace_logs_response_200.py +45 -0
- beamlit/models/get_trace_response_200.py +45 -0
- {beamlit-0.0.27.dist-info → beamlit-0.0.28.dist-info}/METADATA +1 -1
- {beamlit-0.0.27.dist-info → beamlit-0.0.28.dist-info}/RECORD +17 -7
- {beamlit-0.0.27.dist-info → beamlit-0.0.28.dist-info}/WHEEL +0 -0
@@ -0,0 +1,106 @@
|
|
1
|
+
from http import HTTPStatus
|
2
|
+
from typing import Any, Optional, Union
|
3
|
+
|
4
|
+
import httpx
|
5
|
+
|
6
|
+
from ... import errors
|
7
|
+
from ...client import AuthenticatedClient, Client
|
8
|
+
from ...types import UNSET, Response, Unset
|
9
|
+
|
10
|
+
|
11
|
+
def _get_kwargs(
|
12
|
+
agent_name: str,
|
13
|
+
*,
|
14
|
+
environment: Union[Unset, str] = UNSET,
|
15
|
+
) -> dict[str, Any]:
|
16
|
+
params: dict[str, Any] = {}
|
17
|
+
|
18
|
+
params["environment"] = environment
|
19
|
+
|
20
|
+
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
21
|
+
|
22
|
+
_kwargs: dict[str, Any] = {
|
23
|
+
"method": "get",
|
24
|
+
"url": f"/agents/{agent_name}/traces",
|
25
|
+
"params": params,
|
26
|
+
}
|
27
|
+
|
28
|
+
return _kwargs
|
29
|
+
|
30
|
+
|
31
|
+
def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Optional[Any]:
|
32
|
+
if client.raise_on_unexpected_status:
|
33
|
+
raise errors.UnexpectedStatus(response.status_code, response.content)
|
34
|
+
else:
|
35
|
+
return None
|
36
|
+
|
37
|
+
|
38
|
+
def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Any]:
|
39
|
+
return Response(
|
40
|
+
status_code=HTTPStatus(response.status_code),
|
41
|
+
content=response.content,
|
42
|
+
headers=response.headers,
|
43
|
+
parsed=_parse_response(client=client, response=response),
|
44
|
+
)
|
45
|
+
|
46
|
+
|
47
|
+
def sync_detailed(
|
48
|
+
agent_name: str,
|
49
|
+
*,
|
50
|
+
client: AuthenticatedClient,
|
51
|
+
environment: Union[Unset, str] = UNSET,
|
52
|
+
) -> Response[Any]:
|
53
|
+
"""Get agent trace IDs
|
54
|
+
|
55
|
+
Args:
|
56
|
+
agent_name (str):
|
57
|
+
environment (Union[Unset, str]):
|
58
|
+
|
59
|
+
Raises:
|
60
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
61
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
62
|
+
|
63
|
+
Returns:
|
64
|
+
Response[Any]
|
65
|
+
"""
|
66
|
+
|
67
|
+
kwargs = _get_kwargs(
|
68
|
+
agent_name=agent_name,
|
69
|
+
environment=environment,
|
70
|
+
)
|
71
|
+
|
72
|
+
response = client.get_httpx_client().request(
|
73
|
+
**kwargs,
|
74
|
+
)
|
75
|
+
|
76
|
+
return _build_response(client=client, response=response)
|
77
|
+
|
78
|
+
|
79
|
+
async def asyncio_detailed(
|
80
|
+
agent_name: str,
|
81
|
+
*,
|
82
|
+
client: AuthenticatedClient,
|
83
|
+
environment: Union[Unset, str] = UNSET,
|
84
|
+
) -> Response[Any]:
|
85
|
+
"""Get agent trace IDs
|
86
|
+
|
87
|
+
Args:
|
88
|
+
agent_name (str):
|
89
|
+
environment (Union[Unset, str]):
|
90
|
+
|
91
|
+
Raises:
|
92
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
93
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
94
|
+
|
95
|
+
Returns:
|
96
|
+
Response[Any]
|
97
|
+
"""
|
98
|
+
|
99
|
+
kwargs = _get_kwargs(
|
100
|
+
agent_name=agent_name,
|
101
|
+
environment=environment,
|
102
|
+
)
|
103
|
+
|
104
|
+
response = await client.get_async_httpx_client().request(**kwargs)
|
105
|
+
|
106
|
+
return _build_response(client=client, response=response)
|
File without changes
|
@@ -0,0 +1,150 @@
|
|
1
|
+
from http import HTTPStatus
|
2
|
+
from typing import Any, Optional, Union
|
3
|
+
|
4
|
+
import httpx
|
5
|
+
|
6
|
+
from ... import errors
|
7
|
+
from ...client import AuthenticatedClient, Client
|
8
|
+
from ...models.get_trace_response_200 import GetTraceResponse200
|
9
|
+
from ...types import Response
|
10
|
+
|
11
|
+
|
12
|
+
def _get_kwargs(
|
13
|
+
trace_id: str,
|
14
|
+
) -> dict[str, Any]:
|
15
|
+
_kwargs: dict[str, Any] = {
|
16
|
+
"method": "get",
|
17
|
+
"url": f"/traces/{trace_id}",
|
18
|
+
}
|
19
|
+
|
20
|
+
return _kwargs
|
21
|
+
|
22
|
+
|
23
|
+
def _parse_response(
|
24
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
25
|
+
) -> Optional[GetTraceResponse200]:
|
26
|
+
if response.status_code == 200:
|
27
|
+
response_200 = GetTraceResponse200.from_dict(response.json())
|
28
|
+
|
29
|
+
return response_200
|
30
|
+
if client.raise_on_unexpected_status:
|
31
|
+
raise errors.UnexpectedStatus(response.status_code, response.content)
|
32
|
+
else:
|
33
|
+
return None
|
34
|
+
|
35
|
+
|
36
|
+
def _build_response(
|
37
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
38
|
+
) -> Response[GetTraceResponse200]:
|
39
|
+
return Response(
|
40
|
+
status_code=HTTPStatus(response.status_code),
|
41
|
+
content=response.content,
|
42
|
+
headers=response.headers,
|
43
|
+
parsed=_parse_response(client=client, response=response),
|
44
|
+
)
|
45
|
+
|
46
|
+
|
47
|
+
def sync_detailed(
|
48
|
+
trace_id: str,
|
49
|
+
*,
|
50
|
+
client: AuthenticatedClient,
|
51
|
+
) -> Response[GetTraceResponse200]:
|
52
|
+
"""Get trace by ID
|
53
|
+
|
54
|
+
Args:
|
55
|
+
trace_id (str):
|
56
|
+
|
57
|
+
Raises:
|
58
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
59
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
60
|
+
|
61
|
+
Returns:
|
62
|
+
Response[GetTraceResponse200]
|
63
|
+
"""
|
64
|
+
|
65
|
+
kwargs = _get_kwargs(
|
66
|
+
trace_id=trace_id,
|
67
|
+
)
|
68
|
+
|
69
|
+
response = client.get_httpx_client().request(
|
70
|
+
**kwargs,
|
71
|
+
)
|
72
|
+
|
73
|
+
return _build_response(client=client, response=response)
|
74
|
+
|
75
|
+
|
76
|
+
def sync(
|
77
|
+
trace_id: str,
|
78
|
+
*,
|
79
|
+
client: AuthenticatedClient,
|
80
|
+
) -> Optional[GetTraceResponse200]:
|
81
|
+
"""Get trace by ID
|
82
|
+
|
83
|
+
Args:
|
84
|
+
trace_id (str):
|
85
|
+
|
86
|
+
Raises:
|
87
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
88
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
89
|
+
|
90
|
+
Returns:
|
91
|
+
GetTraceResponse200
|
92
|
+
"""
|
93
|
+
|
94
|
+
return sync_detailed(
|
95
|
+
trace_id=trace_id,
|
96
|
+
client=client,
|
97
|
+
).parsed
|
98
|
+
|
99
|
+
|
100
|
+
async def asyncio_detailed(
|
101
|
+
trace_id: str,
|
102
|
+
*,
|
103
|
+
client: AuthenticatedClient,
|
104
|
+
) -> Response[GetTraceResponse200]:
|
105
|
+
"""Get trace by ID
|
106
|
+
|
107
|
+
Args:
|
108
|
+
trace_id (str):
|
109
|
+
|
110
|
+
Raises:
|
111
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
112
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
113
|
+
|
114
|
+
Returns:
|
115
|
+
Response[GetTraceResponse200]
|
116
|
+
"""
|
117
|
+
|
118
|
+
kwargs = _get_kwargs(
|
119
|
+
trace_id=trace_id,
|
120
|
+
)
|
121
|
+
|
122
|
+
response = await client.get_async_httpx_client().request(**kwargs)
|
123
|
+
|
124
|
+
return _build_response(client=client, response=response)
|
125
|
+
|
126
|
+
|
127
|
+
async def asyncio(
|
128
|
+
trace_id: str,
|
129
|
+
*,
|
130
|
+
client: AuthenticatedClient,
|
131
|
+
) -> Optional[GetTraceResponse200]:
|
132
|
+
"""Get trace by ID
|
133
|
+
|
134
|
+
Args:
|
135
|
+
trace_id (str):
|
136
|
+
|
137
|
+
Raises:
|
138
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
139
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
140
|
+
|
141
|
+
Returns:
|
142
|
+
GetTraceResponse200
|
143
|
+
"""
|
144
|
+
|
145
|
+
return (
|
146
|
+
await asyncio_detailed(
|
147
|
+
trace_id=trace_id,
|
148
|
+
client=client,
|
149
|
+
)
|
150
|
+
).parsed
|
@@ -0,0 +1,233 @@
|
|
1
|
+
from http import HTTPStatus
|
2
|
+
from typing import Any, Optional, Union
|
3
|
+
|
4
|
+
import httpx
|
5
|
+
|
6
|
+
from ... import errors
|
7
|
+
from ...client import AuthenticatedClient, Client
|
8
|
+
from ...models.get_trace_ids_response_200 import GetTraceIdsResponse200
|
9
|
+
from ...types import UNSET, Response, Unset
|
10
|
+
|
11
|
+
|
12
|
+
def _get_kwargs(
|
13
|
+
*,
|
14
|
+
workload_id: Union[Unset, str] = UNSET,
|
15
|
+
workload_type: Union[Unset, str] = UNSET,
|
16
|
+
environment: Union[Unset, str] = UNSET,
|
17
|
+
limit: Union[Unset, str] = UNSET,
|
18
|
+
start_time: Union[Unset, str] = UNSET,
|
19
|
+
end_time: Union[Unset, str] = UNSET,
|
20
|
+
) -> dict[str, Any]:
|
21
|
+
params: dict[str, Any] = {}
|
22
|
+
|
23
|
+
params["workloadId"] = workload_id
|
24
|
+
|
25
|
+
params["workloadType"] = workload_type
|
26
|
+
|
27
|
+
params["environment"] = environment
|
28
|
+
|
29
|
+
params["limit"] = limit
|
30
|
+
|
31
|
+
params["startTime"] = start_time
|
32
|
+
|
33
|
+
params["endTime"] = end_time
|
34
|
+
|
35
|
+
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
36
|
+
|
37
|
+
_kwargs: dict[str, Any] = {
|
38
|
+
"method": "get",
|
39
|
+
"url": "/traces",
|
40
|
+
"params": params,
|
41
|
+
}
|
42
|
+
|
43
|
+
return _kwargs
|
44
|
+
|
45
|
+
|
46
|
+
def _parse_response(
|
47
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
48
|
+
) -> Optional[GetTraceIdsResponse200]:
|
49
|
+
if response.status_code == 200:
|
50
|
+
response_200 = GetTraceIdsResponse200.from_dict(response.json())
|
51
|
+
|
52
|
+
return response_200
|
53
|
+
if client.raise_on_unexpected_status:
|
54
|
+
raise errors.UnexpectedStatus(response.status_code, response.content)
|
55
|
+
else:
|
56
|
+
return None
|
57
|
+
|
58
|
+
|
59
|
+
def _build_response(
|
60
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
61
|
+
) -> Response[GetTraceIdsResponse200]:
|
62
|
+
return Response(
|
63
|
+
status_code=HTTPStatus(response.status_code),
|
64
|
+
content=response.content,
|
65
|
+
headers=response.headers,
|
66
|
+
parsed=_parse_response(client=client, response=response),
|
67
|
+
)
|
68
|
+
|
69
|
+
|
70
|
+
def sync_detailed(
|
71
|
+
*,
|
72
|
+
client: AuthenticatedClient,
|
73
|
+
workload_id: Union[Unset, str] = UNSET,
|
74
|
+
workload_type: Union[Unset, str] = UNSET,
|
75
|
+
environment: Union[Unset, str] = UNSET,
|
76
|
+
limit: Union[Unset, str] = UNSET,
|
77
|
+
start_time: Union[Unset, str] = UNSET,
|
78
|
+
end_time: Union[Unset, str] = UNSET,
|
79
|
+
) -> Response[GetTraceIdsResponse200]:
|
80
|
+
"""Get trace IDs
|
81
|
+
|
82
|
+
Args:
|
83
|
+
workload_id (Union[Unset, str]):
|
84
|
+
workload_type (Union[Unset, str]):
|
85
|
+
environment (Union[Unset, str]):
|
86
|
+
limit (Union[Unset, str]):
|
87
|
+
start_time (Union[Unset, str]):
|
88
|
+
end_time (Union[Unset, str]):
|
89
|
+
|
90
|
+
Raises:
|
91
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
92
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
93
|
+
|
94
|
+
Returns:
|
95
|
+
Response[GetTraceIdsResponse200]
|
96
|
+
"""
|
97
|
+
|
98
|
+
kwargs = _get_kwargs(
|
99
|
+
workload_id=workload_id,
|
100
|
+
workload_type=workload_type,
|
101
|
+
environment=environment,
|
102
|
+
limit=limit,
|
103
|
+
start_time=start_time,
|
104
|
+
end_time=end_time,
|
105
|
+
)
|
106
|
+
|
107
|
+
response = client.get_httpx_client().request(
|
108
|
+
**kwargs,
|
109
|
+
)
|
110
|
+
|
111
|
+
return _build_response(client=client, response=response)
|
112
|
+
|
113
|
+
|
114
|
+
def sync(
|
115
|
+
*,
|
116
|
+
client: AuthenticatedClient,
|
117
|
+
workload_id: Union[Unset, str] = UNSET,
|
118
|
+
workload_type: Union[Unset, str] = UNSET,
|
119
|
+
environment: Union[Unset, str] = UNSET,
|
120
|
+
limit: Union[Unset, str] = UNSET,
|
121
|
+
start_time: Union[Unset, str] = UNSET,
|
122
|
+
end_time: Union[Unset, str] = UNSET,
|
123
|
+
) -> Optional[GetTraceIdsResponse200]:
|
124
|
+
"""Get trace IDs
|
125
|
+
|
126
|
+
Args:
|
127
|
+
workload_id (Union[Unset, str]):
|
128
|
+
workload_type (Union[Unset, str]):
|
129
|
+
environment (Union[Unset, str]):
|
130
|
+
limit (Union[Unset, str]):
|
131
|
+
start_time (Union[Unset, str]):
|
132
|
+
end_time (Union[Unset, str]):
|
133
|
+
|
134
|
+
Raises:
|
135
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
136
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
137
|
+
|
138
|
+
Returns:
|
139
|
+
GetTraceIdsResponse200
|
140
|
+
"""
|
141
|
+
|
142
|
+
return sync_detailed(
|
143
|
+
client=client,
|
144
|
+
workload_id=workload_id,
|
145
|
+
workload_type=workload_type,
|
146
|
+
environment=environment,
|
147
|
+
limit=limit,
|
148
|
+
start_time=start_time,
|
149
|
+
end_time=end_time,
|
150
|
+
).parsed
|
151
|
+
|
152
|
+
|
153
|
+
async def asyncio_detailed(
|
154
|
+
*,
|
155
|
+
client: AuthenticatedClient,
|
156
|
+
workload_id: Union[Unset, str] = UNSET,
|
157
|
+
workload_type: Union[Unset, str] = UNSET,
|
158
|
+
environment: Union[Unset, str] = UNSET,
|
159
|
+
limit: Union[Unset, str] = UNSET,
|
160
|
+
start_time: Union[Unset, str] = UNSET,
|
161
|
+
end_time: Union[Unset, str] = UNSET,
|
162
|
+
) -> Response[GetTraceIdsResponse200]:
|
163
|
+
"""Get trace IDs
|
164
|
+
|
165
|
+
Args:
|
166
|
+
workload_id (Union[Unset, str]):
|
167
|
+
workload_type (Union[Unset, str]):
|
168
|
+
environment (Union[Unset, str]):
|
169
|
+
limit (Union[Unset, str]):
|
170
|
+
start_time (Union[Unset, str]):
|
171
|
+
end_time (Union[Unset, str]):
|
172
|
+
|
173
|
+
Raises:
|
174
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
175
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
176
|
+
|
177
|
+
Returns:
|
178
|
+
Response[GetTraceIdsResponse200]
|
179
|
+
"""
|
180
|
+
|
181
|
+
kwargs = _get_kwargs(
|
182
|
+
workload_id=workload_id,
|
183
|
+
workload_type=workload_type,
|
184
|
+
environment=environment,
|
185
|
+
limit=limit,
|
186
|
+
start_time=start_time,
|
187
|
+
end_time=end_time,
|
188
|
+
)
|
189
|
+
|
190
|
+
response = await client.get_async_httpx_client().request(**kwargs)
|
191
|
+
|
192
|
+
return _build_response(client=client, response=response)
|
193
|
+
|
194
|
+
|
195
|
+
async def asyncio(
|
196
|
+
*,
|
197
|
+
client: AuthenticatedClient,
|
198
|
+
workload_id: Union[Unset, str] = UNSET,
|
199
|
+
workload_type: Union[Unset, str] = UNSET,
|
200
|
+
environment: Union[Unset, str] = UNSET,
|
201
|
+
limit: Union[Unset, str] = UNSET,
|
202
|
+
start_time: Union[Unset, str] = UNSET,
|
203
|
+
end_time: Union[Unset, str] = UNSET,
|
204
|
+
) -> Optional[GetTraceIdsResponse200]:
|
205
|
+
"""Get trace IDs
|
206
|
+
|
207
|
+
Args:
|
208
|
+
workload_id (Union[Unset, str]):
|
209
|
+
workload_type (Union[Unset, str]):
|
210
|
+
environment (Union[Unset, str]):
|
211
|
+
limit (Union[Unset, str]):
|
212
|
+
start_time (Union[Unset, str]):
|
213
|
+
end_time (Union[Unset, str]):
|
214
|
+
|
215
|
+
Raises:
|
216
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
217
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
218
|
+
|
219
|
+
Returns:
|
220
|
+
GetTraceIdsResponse200
|
221
|
+
"""
|
222
|
+
|
223
|
+
return (
|
224
|
+
await asyncio_detailed(
|
225
|
+
client=client,
|
226
|
+
workload_id=workload_id,
|
227
|
+
workload_type=workload_type,
|
228
|
+
environment=environment,
|
229
|
+
limit=limit,
|
230
|
+
start_time=start_time,
|
231
|
+
end_time=end_time,
|
232
|
+
)
|
233
|
+
).parsed
|
@@ -0,0 +1,186 @@
|
|
1
|
+
from http import HTTPStatus
|
2
|
+
from typing import Any, Optional, Union
|
3
|
+
|
4
|
+
import httpx
|
5
|
+
|
6
|
+
from ... import errors
|
7
|
+
from ...client import AuthenticatedClient, Client
|
8
|
+
from ...models.get_trace_logs_response_200 import GetTraceLogsResponse200
|
9
|
+
from ...types import UNSET, Response, Unset
|
10
|
+
|
11
|
+
|
12
|
+
def _get_kwargs(
|
13
|
+
trace_id: str,
|
14
|
+
*,
|
15
|
+
span_id: Union[Unset, str] = UNSET,
|
16
|
+
limit: Union[Unset, str] = UNSET,
|
17
|
+
) -> dict[str, Any]:
|
18
|
+
params: dict[str, Any] = {}
|
19
|
+
|
20
|
+
params["spanId"] = span_id
|
21
|
+
|
22
|
+
params["limit"] = limit
|
23
|
+
|
24
|
+
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
25
|
+
|
26
|
+
_kwargs: dict[str, Any] = {
|
27
|
+
"method": "get",
|
28
|
+
"url": f"/traces/{trace_id}/logs",
|
29
|
+
"params": params,
|
30
|
+
}
|
31
|
+
|
32
|
+
return _kwargs
|
33
|
+
|
34
|
+
|
35
|
+
def _parse_response(
|
36
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
37
|
+
) -> Optional[GetTraceLogsResponse200]:
|
38
|
+
if response.status_code == 200:
|
39
|
+
response_200 = GetTraceLogsResponse200.from_dict(response.json())
|
40
|
+
|
41
|
+
return response_200
|
42
|
+
if client.raise_on_unexpected_status:
|
43
|
+
raise errors.UnexpectedStatus(response.status_code, response.content)
|
44
|
+
else:
|
45
|
+
return None
|
46
|
+
|
47
|
+
|
48
|
+
def _build_response(
|
49
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
50
|
+
) -> Response[GetTraceLogsResponse200]:
|
51
|
+
return Response(
|
52
|
+
status_code=HTTPStatus(response.status_code),
|
53
|
+
content=response.content,
|
54
|
+
headers=response.headers,
|
55
|
+
parsed=_parse_response(client=client, response=response),
|
56
|
+
)
|
57
|
+
|
58
|
+
|
59
|
+
def sync_detailed(
|
60
|
+
trace_id: str,
|
61
|
+
*,
|
62
|
+
client: AuthenticatedClient,
|
63
|
+
span_id: Union[Unset, str] = UNSET,
|
64
|
+
limit: Union[Unset, str] = UNSET,
|
65
|
+
) -> Response[GetTraceLogsResponse200]:
|
66
|
+
"""Get trace logs
|
67
|
+
|
68
|
+
Args:
|
69
|
+
trace_id (str):
|
70
|
+
span_id (Union[Unset, str]):
|
71
|
+
limit (Union[Unset, str]):
|
72
|
+
|
73
|
+
Raises:
|
74
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
75
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
76
|
+
|
77
|
+
Returns:
|
78
|
+
Response[GetTraceLogsResponse200]
|
79
|
+
"""
|
80
|
+
|
81
|
+
kwargs = _get_kwargs(
|
82
|
+
trace_id=trace_id,
|
83
|
+
span_id=span_id,
|
84
|
+
limit=limit,
|
85
|
+
)
|
86
|
+
|
87
|
+
response = client.get_httpx_client().request(
|
88
|
+
**kwargs,
|
89
|
+
)
|
90
|
+
|
91
|
+
return _build_response(client=client, response=response)
|
92
|
+
|
93
|
+
|
94
|
+
def sync(
|
95
|
+
trace_id: str,
|
96
|
+
*,
|
97
|
+
client: AuthenticatedClient,
|
98
|
+
span_id: Union[Unset, str] = UNSET,
|
99
|
+
limit: Union[Unset, str] = UNSET,
|
100
|
+
) -> Optional[GetTraceLogsResponse200]:
|
101
|
+
"""Get trace logs
|
102
|
+
|
103
|
+
Args:
|
104
|
+
trace_id (str):
|
105
|
+
span_id (Union[Unset, str]):
|
106
|
+
limit (Union[Unset, str]):
|
107
|
+
|
108
|
+
Raises:
|
109
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
110
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
111
|
+
|
112
|
+
Returns:
|
113
|
+
GetTraceLogsResponse200
|
114
|
+
"""
|
115
|
+
|
116
|
+
return sync_detailed(
|
117
|
+
trace_id=trace_id,
|
118
|
+
client=client,
|
119
|
+
span_id=span_id,
|
120
|
+
limit=limit,
|
121
|
+
).parsed
|
122
|
+
|
123
|
+
|
124
|
+
async def asyncio_detailed(
|
125
|
+
trace_id: str,
|
126
|
+
*,
|
127
|
+
client: AuthenticatedClient,
|
128
|
+
span_id: Union[Unset, str] = UNSET,
|
129
|
+
limit: Union[Unset, str] = UNSET,
|
130
|
+
) -> Response[GetTraceLogsResponse200]:
|
131
|
+
"""Get trace logs
|
132
|
+
|
133
|
+
Args:
|
134
|
+
trace_id (str):
|
135
|
+
span_id (Union[Unset, str]):
|
136
|
+
limit (Union[Unset, str]):
|
137
|
+
|
138
|
+
Raises:
|
139
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
140
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
141
|
+
|
142
|
+
Returns:
|
143
|
+
Response[GetTraceLogsResponse200]
|
144
|
+
"""
|
145
|
+
|
146
|
+
kwargs = _get_kwargs(
|
147
|
+
trace_id=trace_id,
|
148
|
+
span_id=span_id,
|
149
|
+
limit=limit,
|
150
|
+
)
|
151
|
+
|
152
|
+
response = await client.get_async_httpx_client().request(**kwargs)
|
153
|
+
|
154
|
+
return _build_response(client=client, response=response)
|
155
|
+
|
156
|
+
|
157
|
+
async def asyncio(
|
158
|
+
trace_id: str,
|
159
|
+
*,
|
160
|
+
client: AuthenticatedClient,
|
161
|
+
span_id: Union[Unset, str] = UNSET,
|
162
|
+
limit: Union[Unset, str] = UNSET,
|
163
|
+
) -> Optional[GetTraceLogsResponse200]:
|
164
|
+
"""Get trace logs
|
165
|
+
|
166
|
+
Args:
|
167
|
+
trace_id (str):
|
168
|
+
span_id (Union[Unset, str]):
|
169
|
+
limit (Union[Unset, str]):
|
170
|
+
|
171
|
+
Raises:
|
172
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
173
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
174
|
+
|
175
|
+
Returns:
|
176
|
+
GetTraceLogsResponse200
|
177
|
+
"""
|
178
|
+
|
179
|
+
return (
|
180
|
+
await asyncio_detailed(
|
181
|
+
trace_id=trace_id,
|
182
|
+
client=client,
|
183
|
+
span_id=span_id,
|
184
|
+
limit=limit,
|
185
|
+
)
|
186
|
+
).parsed
|
@@ -0,0 +1,106 @@
|
|
1
|
+
from http import HTTPStatus
|
2
|
+
from typing import Any, Optional, Union
|
3
|
+
|
4
|
+
import httpx
|
5
|
+
|
6
|
+
from ... import errors
|
7
|
+
from ...client import AuthenticatedClient, Client
|
8
|
+
from ...types import UNSET, Response, Unset
|
9
|
+
|
10
|
+
|
11
|
+
def _get_kwargs(
|
12
|
+
function_name: str,
|
13
|
+
*,
|
14
|
+
environment: Union[Unset, str] = UNSET,
|
15
|
+
) -> dict[str, Any]:
|
16
|
+
params: dict[str, Any] = {}
|
17
|
+
|
18
|
+
params["environment"] = environment
|
19
|
+
|
20
|
+
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
21
|
+
|
22
|
+
_kwargs: dict[str, Any] = {
|
23
|
+
"method": "get",
|
24
|
+
"url": f"/functions/{function_name}/traces",
|
25
|
+
"params": params,
|
26
|
+
}
|
27
|
+
|
28
|
+
return _kwargs
|
29
|
+
|
30
|
+
|
31
|
+
def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Optional[Any]:
|
32
|
+
if client.raise_on_unexpected_status:
|
33
|
+
raise errors.UnexpectedStatus(response.status_code, response.content)
|
34
|
+
else:
|
35
|
+
return None
|
36
|
+
|
37
|
+
|
38
|
+
def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Any]:
|
39
|
+
return Response(
|
40
|
+
status_code=HTTPStatus(response.status_code),
|
41
|
+
content=response.content,
|
42
|
+
headers=response.headers,
|
43
|
+
parsed=_parse_response(client=client, response=response),
|
44
|
+
)
|
45
|
+
|
46
|
+
|
47
|
+
def sync_detailed(
|
48
|
+
function_name: str,
|
49
|
+
*,
|
50
|
+
client: AuthenticatedClient,
|
51
|
+
environment: Union[Unset, str] = UNSET,
|
52
|
+
) -> Response[Any]:
|
53
|
+
"""Get function trace IDs
|
54
|
+
|
55
|
+
Args:
|
56
|
+
function_name (str):
|
57
|
+
environment (Union[Unset, str]):
|
58
|
+
|
59
|
+
Raises:
|
60
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
61
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
62
|
+
|
63
|
+
Returns:
|
64
|
+
Response[Any]
|
65
|
+
"""
|
66
|
+
|
67
|
+
kwargs = _get_kwargs(
|
68
|
+
function_name=function_name,
|
69
|
+
environment=environment,
|
70
|
+
)
|
71
|
+
|
72
|
+
response = client.get_httpx_client().request(
|
73
|
+
**kwargs,
|
74
|
+
)
|
75
|
+
|
76
|
+
return _build_response(client=client, response=response)
|
77
|
+
|
78
|
+
|
79
|
+
async def asyncio_detailed(
|
80
|
+
function_name: str,
|
81
|
+
*,
|
82
|
+
client: AuthenticatedClient,
|
83
|
+
environment: Union[Unset, str] = UNSET,
|
84
|
+
) -> Response[Any]:
|
85
|
+
"""Get function trace IDs
|
86
|
+
|
87
|
+
Args:
|
88
|
+
function_name (str):
|
89
|
+
environment (Union[Unset, str]):
|
90
|
+
|
91
|
+
Raises:
|
92
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
93
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
94
|
+
|
95
|
+
Returns:
|
96
|
+
Response[Any]
|
97
|
+
"""
|
98
|
+
|
99
|
+
kwargs = _get_kwargs(
|
100
|
+
function_name=function_name,
|
101
|
+
environment=environment,
|
102
|
+
)
|
103
|
+
|
104
|
+
response = await client.get_async_httpx_client().request(**kwargs)
|
105
|
+
|
106
|
+
return _build_response(client=client, response=response)
|
@@ -0,0 +1,106 @@
|
|
1
|
+
from http import HTTPStatus
|
2
|
+
from typing import Any, Optional, Union
|
3
|
+
|
4
|
+
import httpx
|
5
|
+
|
6
|
+
from ... import errors
|
7
|
+
from ...client import AuthenticatedClient, Client
|
8
|
+
from ...types import UNSET, Response, Unset
|
9
|
+
|
10
|
+
|
11
|
+
def _get_kwargs(
|
12
|
+
model_name: str,
|
13
|
+
*,
|
14
|
+
environment: Union[Unset, str] = UNSET,
|
15
|
+
) -> dict[str, Any]:
|
16
|
+
params: dict[str, Any] = {}
|
17
|
+
|
18
|
+
params["environment"] = environment
|
19
|
+
|
20
|
+
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
21
|
+
|
22
|
+
_kwargs: dict[str, Any] = {
|
23
|
+
"method": "get",
|
24
|
+
"url": f"/models/{model_name}/traces",
|
25
|
+
"params": params,
|
26
|
+
}
|
27
|
+
|
28
|
+
return _kwargs
|
29
|
+
|
30
|
+
|
31
|
+
def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Optional[Any]:
|
32
|
+
if client.raise_on_unexpected_status:
|
33
|
+
raise errors.UnexpectedStatus(response.status_code, response.content)
|
34
|
+
else:
|
35
|
+
return None
|
36
|
+
|
37
|
+
|
38
|
+
def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Any]:
|
39
|
+
return Response(
|
40
|
+
status_code=HTTPStatus(response.status_code),
|
41
|
+
content=response.content,
|
42
|
+
headers=response.headers,
|
43
|
+
parsed=_parse_response(client=client, response=response),
|
44
|
+
)
|
45
|
+
|
46
|
+
|
47
|
+
def sync_detailed(
|
48
|
+
model_name: str,
|
49
|
+
*,
|
50
|
+
client: AuthenticatedClient,
|
51
|
+
environment: Union[Unset, str] = UNSET,
|
52
|
+
) -> Response[Any]:
|
53
|
+
"""Get model trace IDs
|
54
|
+
|
55
|
+
Args:
|
56
|
+
model_name (str):
|
57
|
+
environment (Union[Unset, str]):
|
58
|
+
|
59
|
+
Raises:
|
60
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
61
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
62
|
+
|
63
|
+
Returns:
|
64
|
+
Response[Any]
|
65
|
+
"""
|
66
|
+
|
67
|
+
kwargs = _get_kwargs(
|
68
|
+
model_name=model_name,
|
69
|
+
environment=environment,
|
70
|
+
)
|
71
|
+
|
72
|
+
response = client.get_httpx_client().request(
|
73
|
+
**kwargs,
|
74
|
+
)
|
75
|
+
|
76
|
+
return _build_response(client=client, response=response)
|
77
|
+
|
78
|
+
|
79
|
+
async def asyncio_detailed(
|
80
|
+
model_name: str,
|
81
|
+
*,
|
82
|
+
client: AuthenticatedClient,
|
83
|
+
environment: Union[Unset, str] = UNSET,
|
84
|
+
) -> Response[Any]:
|
85
|
+
"""Get model trace IDs
|
86
|
+
|
87
|
+
Args:
|
88
|
+
model_name (str):
|
89
|
+
environment (Union[Unset, str]):
|
90
|
+
|
91
|
+
Raises:
|
92
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
93
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
94
|
+
|
95
|
+
Returns:
|
96
|
+
Response[Any]
|
97
|
+
"""
|
98
|
+
|
99
|
+
kwargs = _get_kwargs(
|
100
|
+
model_name=model_name,
|
101
|
+
environment=environment,
|
102
|
+
)
|
103
|
+
|
104
|
+
response = await client.get_async_httpx_client().request(**kwargs)
|
105
|
+
|
106
|
+
return _build_response(client=client, response=response)
|
@@ -1,5 +1,6 @@
|
|
1
1
|
from dataclasses import dataclass
|
2
2
|
from typing import Dict, Generator
|
3
|
+
import os
|
3
4
|
|
4
5
|
from httpx import Auth, Request, Response
|
5
6
|
|
@@ -26,8 +27,13 @@ class PublicProvider(Auth):
|
|
26
27
|
class RunClientWithCredentials:
|
27
28
|
credentials: Credentials
|
28
29
|
workspace: str
|
29
|
-
api_url: str = "https://api.beamlit.
|
30
|
-
run_url: str = "https://run.beamlit.
|
30
|
+
api_url: str = "https://api.beamlit.com/v0"
|
31
|
+
run_url: str = "https://run.beamlit.com/v0"
|
32
|
+
|
33
|
+
def __post_init__(self):
|
34
|
+
if os.getenv('BL_ENV') == 'dev':
|
35
|
+
self.api_url = "https://api.beamlit.dev/v0"
|
36
|
+
self.run_url = "https://run.beamlit.dev/v0"
|
31
37
|
|
32
38
|
|
33
39
|
def new_client_from_settings(settings: Settings):
|
beamlit/client.py
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
import os
|
1
2
|
import ssl
|
2
3
|
from typing import Any, Optional, Union
|
3
4
|
|
@@ -37,8 +38,13 @@ class Client:
|
|
37
38
|
|
38
39
|
"""
|
39
40
|
|
41
|
+
# Determine the base URL based on the environment
|
42
|
+
default_base_url = "https://api.beamlit.com/v0"
|
43
|
+
if os.getenv("BL_ENV") == "dev":
|
44
|
+
default_base_url = "https://api.beamlit.dev/v0"
|
45
|
+
|
40
46
|
raise_on_unexpected_status: bool = field(default=True, kw_only=True)
|
41
|
-
_base_url: str = field(alias="base_url", default=
|
47
|
+
_base_url: str = field(alias="base_url", default=default_base_url)
|
42
48
|
_cookies: dict[str, str] = field(factory=dict, kw_only=True, alias="cookies")
|
43
49
|
_headers: dict[str, str] = field(factory=dict, kw_only=True, alias="headers")
|
44
50
|
_provider: httpx.Auth = field(default=None, alias="provider")
|
@@ -169,8 +175,13 @@ class AuthenticatedClient:
|
|
169
175
|
provider: AuthProvider to use for authentication
|
170
176
|
"""
|
171
177
|
|
178
|
+
# Determine the base URL based on the environment
|
179
|
+
default_base_url = "https://api.beamlit.com/v0"
|
180
|
+
if os.getenv("BL_ENV") == "dev":
|
181
|
+
default_base_url = "https://api.beamlit.dev/v0"
|
182
|
+
|
172
183
|
raise_on_unexpected_status: bool = field(default=True, kw_only=True)
|
173
|
-
_base_url: str = field(alias="base_url", default=
|
184
|
+
_base_url: str = field(alias="base_url", default=default_base_url)
|
174
185
|
_cookies: dict[str, str] = field(factory=dict, kw_only=True, alias="cookies")
|
175
186
|
_headers: dict[str, str] = field(factory=dict, kw_only=True, alias="headers")
|
176
187
|
_provider: httpx.Auth = field(default=None, alias="provider")
|
beamlit/common/settings.py
CHANGED
@@ -62,15 +62,23 @@ class Settings(BaseSettings):
|
|
62
62
|
remote: bool = Field(default=False)
|
63
63
|
type: str = Field(default="agent")
|
64
64
|
name: str = Field(default="beamlit-agent")
|
65
|
-
base_url: str = Field(default="https://api.beamlit.
|
66
|
-
run_url: str = Field(default="https://run.beamlit.
|
67
|
-
mcp_hub_url: str = Field(default="https://mcp-hub-server.beamlit.workers.
|
68
|
-
registry_url: str = Field(default="https://serverless-registry-production.beamlit.workers.
|
65
|
+
base_url: str = Field(default="https://api.beamlit.com/v0")
|
66
|
+
run_url: str = Field(default="https://run.beamlit.com")
|
67
|
+
mcp_hub_url: str = Field(default="https://mcp-hub-server.beamlit.workers.com")
|
68
|
+
registry_url: str = Field(default="https://serverless-registry-production.beamlit.workers.com")
|
69
69
|
log_level: str = Field(default="INFO")
|
70
70
|
agent: SettingsAgent = SettingsAgent()
|
71
71
|
server: SettingsServer = SettingsServer()
|
72
72
|
authentication: SettingsAuthentication = SettingsAuthentication()
|
73
73
|
|
74
|
+
def __init__(self, **data):
|
75
|
+
super().__init__(**data)
|
76
|
+
if os.getenv('BL_ENV') == 'dev':
|
77
|
+
self.base_url = "https://api.beamlit.dev/v0"
|
78
|
+
self.run_url = "https://run.beamlit.dev"
|
79
|
+
self.mcp_hub_url = "https://mcp-hub-server.beamlit.workers.dev"
|
80
|
+
self.registry_url = "https://serverless-registry-production.beamlit.workers.dev"
|
81
|
+
|
74
82
|
@classmethod
|
75
83
|
def settings_customise_sources(
|
76
84
|
cls,
|
beamlit/models/__init__.py
CHANGED
@@ -29,6 +29,9 @@ from .function_kit import FunctionKit
|
|
29
29
|
from .function_metadata import FunctionMetadata
|
30
30
|
from .function_release import FunctionRelease
|
31
31
|
from .function_spec import FunctionSpec
|
32
|
+
from .get_trace_ids_response_200 import GetTraceIdsResponse200
|
33
|
+
from .get_trace_logs_response_200 import GetTraceLogsResponse200
|
34
|
+
from .get_trace_response_200 import GetTraceResponse200
|
32
35
|
from .get_workspace_service_accounts_response_200_item import GetWorkspaceServiceAccountsResponse200Item
|
33
36
|
from .increase_and_rate_metric import IncreaseAndRateMetric
|
34
37
|
from .integration_config import IntegrationConfig
|
@@ -128,6 +131,9 @@ __all__ = (
|
|
128
131
|
"FunctionMetadata",
|
129
132
|
"FunctionRelease",
|
130
133
|
"FunctionSpec",
|
134
|
+
"GetTraceIdsResponse200",
|
135
|
+
"GetTraceLogsResponse200",
|
136
|
+
"GetTraceResponse200",
|
131
137
|
"GetWorkspaceServiceAccountsResponse200Item",
|
132
138
|
"IncreaseAndRateMetric",
|
133
139
|
"IntegrationConfig",
|
@@ -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="GetTraceIdsResponse200")
|
7
|
+
|
8
|
+
|
9
|
+
@_attrs_define
|
10
|
+
class GetTraceIdsResponse200:
|
11
|
+
""" """
|
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
|
+
get_trace_ids_response_200 = cls()
|
27
|
+
|
28
|
+
get_trace_ids_response_200.additional_properties = d
|
29
|
+
return get_trace_ids_response_200
|
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
|
@@ -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="GetTraceLogsResponse200")
|
7
|
+
|
8
|
+
|
9
|
+
@_attrs_define
|
10
|
+
class GetTraceLogsResponse200:
|
11
|
+
""" """
|
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
|
+
get_trace_logs_response_200 = cls()
|
27
|
+
|
28
|
+
get_trace_logs_response_200.additional_properties = d
|
29
|
+
return get_trace_logs_response_200
|
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
|
@@ -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="GetTraceResponse200")
|
7
|
+
|
8
|
+
|
9
|
+
@_attrs_define
|
10
|
+
class GetTraceResponse200:
|
11
|
+
""" """
|
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
|
+
get_trace_response_200 = cls()
|
27
|
+
|
28
|
+
get_trace_response_200.additional_properties = d
|
29
|
+
return get_trace_response_200
|
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
|
@@ -1,5 +1,5 @@
|
|
1
1
|
beamlit/__init__.py,sha256=545gFC-wLLwUktWcOAjUWe_Glha40tBetRTOYSfHnbI,164
|
2
|
-
beamlit/client.py,sha256=
|
2
|
+
beamlit/client.py,sha256=SmJ46egRqKwRrLXCHmwrik0D_dD6s46-87YeVhBgxSU,12817
|
3
3
|
beamlit/errors.py,sha256=gO8GBmKqmSNgAg-E5oT-oOyxztvp7V_6XG7OUTT15q0,546
|
4
4
|
beamlit/py.typed,sha256=8ZJUsxZiuOy1oJeVhsTWQhTG_6pTVHVXk5hJL79ebTk,25
|
5
5
|
beamlit/run.py,sha256=RLwMv5f_S8lw7Wq7O6DvEcOl0nGYh769qjGl_SmR9Z0,1338
|
@@ -17,12 +17,17 @@ beamlit/api/agents/get_agent.py,sha256=IBMiNb36CyNKKyW-RvMSakmOaGrP2hSm3HRa_Gm_c
|
|
17
17
|
beamlit/api/agents/get_agent_environment_logs.py,sha256=Fdd_mvlJXO17BQHbnl0YpUbXcX-1BsuZI2WKz6cgacA,3759
|
18
18
|
beamlit/api/agents/get_agent_history.py,sha256=sDKZQhul8wrSbuRY8WNI6jRNYgFcYtCnaU2fgR1owM8,3846
|
19
19
|
beamlit/api/agents/get_agent_metrics.py,sha256=IRdex5XAekCHSep6T7KQHB9T1J1f9egDx-MaiNynRVU,4344
|
20
|
+
beamlit/api/agents/get_agent_trace_ids.py,sha256=5VXdgE7wveS-K-kcJpk2_SzKPh5vcs9kOkYLO74Nx6M,2729
|
20
21
|
beamlit/api/agents/list_agent_history.py,sha256=ZMTG5PSSkfd4OLmVHDIvDZy13bElrhQivF7QtBDLK9w,3775
|
21
22
|
beamlit/api/agents/list_agents.py,sha256=d6j_LM-8--2nfTHFjueRkoimHf02RRMAOWTpt8anJGg,4101
|
22
23
|
beamlit/api/agents/put_agent_history.py,sha256=lt1_9yFW_vEgeS_jlh-4EumgbTZCdcZYy9GbA91gewU,4590
|
23
24
|
beamlit/api/agents/update_agent.py,sha256=No9iJkjUFJBCHDth1_vpuDfl2Ev3us1OWHXrrRzzE4E,3937
|
24
25
|
beamlit/api/configurations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
25
26
|
beamlit/api/configurations/get_configuration.py,sha256=BtazLwvVe1OGjt0dJ-NVVipqAqZt1HwemWTGK2iuN9w,3197
|
27
|
+
beamlit/api/default/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
28
|
+
beamlit/api/default/get_trace.py,sha256=2x-qpeu8jpfbq_c4-aAHgliwBQfagLEWEgM77eB_ZiY,3621
|
29
|
+
beamlit/api/default/get_trace_ids.py,sha256=qxT085F7pt4GI0Ir7fpFA19IIR9_NFy47fYL9bPAtJo,6712
|
30
|
+
beamlit/api/default/get_trace_logs.py,sha256=R69_j9GFAwkujsNMp4VTxoZuzw8jFni56l0bRxACT4w,4770
|
26
31
|
beamlit/api/environments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
27
32
|
beamlit/api/environments/create_environment.py,sha256=ocD_8MlOivWlo9ICeSRkHuZfndLHCrROfiJvCynsADU,4321
|
28
33
|
beamlit/api/environments/delete_environment.py,sha256=bkDsO1akkb1To4TDz1XvKiB4XI34phBOJLj72KXMW6M,3819
|
@@ -37,6 +42,7 @@ beamlit/api/functions/delete_function.py,sha256=dzCBAL50Yg18bDUpcC1COjwFstnfBpqt
|
|
37
42
|
beamlit/api/functions/get_function.py,sha256=U4dXy47eKQh7spED7hyyHOepj6bU2U6QFJ0a2RS2y_8,4301
|
38
43
|
beamlit/api/functions/get_function_environment_logs.py,sha256=Ia7bDcx8k7qCBhxsm8jdDSbYGKwdTDYhkAcgv25Zz-o,3816
|
39
44
|
beamlit/api/functions/get_function_metrics.py,sha256=8FC7OCyj2QTXKRHyY7BPKfF2EAzXw0rg-r8yM19fQSc,4413
|
45
|
+
beamlit/api/functions/get_function_trace_ids.py,sha256=MaTT6TGTJZTNkBn6Li9KfMrhpTaIM_GnTBbg-Bp_jiw,2768
|
40
46
|
beamlit/api/functions/list_functions.py,sha256=Z9PaBzpRCv4cfEMSiBaVLnKzRoWCBys4jOXXBWOzEU8,4167
|
41
47
|
beamlit/api/functions/update_function.py,sha256=sH-Oy2epz-X-59_eDnazzeeUsZMVNqG5J8VPe6nYJkg,4084
|
42
48
|
beamlit/api/history/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -71,6 +77,7 @@ beamlit/api/models/delete_model.py,sha256=4uENeuBKoIooCfniM1uZFjScqgHzlEDxl7aLjA
|
|
71
77
|
beamlit/api/models/get_model.py,sha256=sTE7fGpJ91svBMSKy7PGySqSOVy5g1YH3oHjhWbMr9s,4285
|
72
78
|
beamlit/api/models/get_model_environment_logs.py,sha256=Xi4c3I0y7y_JbqUDeZEH64oLom9DZ1Uk735j47QvDT0,3939
|
73
79
|
beamlit/api/models/get_model_metrics.py,sha256=06BcFFYS1Ml0tifIbDos9EqH6gSgGnwssKq75vhO5eU,4516
|
80
|
+
beamlit/api/models/get_model_trace_ids.py,sha256=7LuYPCmmt98BwrMGVZBK5E4izXA7iGZ21pHmx03-YG4,2729
|
74
81
|
beamlit/api/models/list_models.py,sha256=Keqg_qyTTGB-aJNA6JiMGnLdNwUSLIkzr08sdhhXxo4,4297
|
75
82
|
beamlit/api/models/release_model.py,sha256=ik1HHjOUVnaVJEvbbSS1ByQ2TMzkkUbNiGUXmlTiwBo,3893
|
76
83
|
beamlit/api/models/update_model.py,sha256=odMblGfUK6EAJHpu5mWUtpSNjFB8NvyTgqDp0JUygDA,4521
|
@@ -116,7 +123,7 @@ beamlit/api/workspaces/update_workspace.py,sha256=qa5DV2UJSUYuB_ibALb4E9ghKpT1Ha
|
|
116
123
|
beamlit/api/workspaces/update_workspace_user_role.py,sha256=Yn9iuJ4tKtauzBiJyU4-wYUMS9g98X2Om8zs7UkzrY8,4917
|
117
124
|
beamlit/authentication/__init__.py,sha256=wiXqRbc7E-ulrH_ueA9duOGFvXeo7-RvhSD1XbFogMo,1020
|
118
125
|
beamlit/authentication/apikey.py,sha256=KNBTgdi0VBzBAAmSwU2X1QoB58vRbg8wkXb8-GTZCQo,657
|
119
|
-
beamlit/authentication/authentication.py,sha256=
|
126
|
+
beamlit/authentication/authentication.py,sha256=a29-iD92T8_q8Kpx25VXEyyASlCaFsSg0s8y-SWPtns,3311
|
120
127
|
beamlit/authentication/clientcredentials.py,sha256=6kbfTjwUkXUArJX8XZLe9ZzbEicQc19tSXBvsTpiXMk,3954
|
121
128
|
beamlit/authentication/credentials.py,sha256=p_1xenabCbQuRz7BiFk7oTK4uCxAt_zoyku5o-jcKGE,5343
|
122
129
|
beamlit/authentication/device_mode.py,sha256=tmr22gllKOZwBRub_QjF5pYa425x-nE8tQNpZ_EGR6g,3644
|
@@ -125,7 +132,7 @@ beamlit/common/generate.py,sha256=LtdCju_QayRS4lZrrb_0VHqWWvTcv4Mbf-iV1TB_Qko,75
|
|
125
132
|
beamlit/common/instrumentation.py,sha256=MsBDfFcMYqGDiHHj4j5hLHE4EWxZExkhmCeFS3SKzJY,3181
|
126
133
|
beamlit/common/logger.py,sha256=VFRbaZh93n8ZGugeeYKe88IP2nI3g2JNa7XN4j8wVJE,1116
|
127
134
|
beamlit/common/secrets.py,sha256=sid81bOe3LflkMKDHwBsBs9nIju8bp5-v9qU9gkyNMc,212
|
128
|
-
beamlit/common/settings.py,sha256=
|
135
|
+
beamlit/common/settings.py,sha256=Z-UBDQKp_pAusWgwmoIwK5nl_z9xfOYYEeCCuYafr0M,5821
|
129
136
|
beamlit/common/utils.py,sha256=jouz5igBvT37Xn_e94-foCHyQczVim-UzVcoIF6RWJ4,657
|
130
137
|
beamlit/deploy/__init__.py,sha256=GS7l7Jtm2yKs7iNLKcfjYO-rAhUzggQ3xiYSf3oxLBY,91
|
131
138
|
beamlit/deploy/deploy.py,sha256=rXpiAqlO36Ul1eadBEiwiil-6R2DkbaYHzw-qcqZ0g4,9183
|
@@ -143,7 +150,7 @@ beamlit/functions/mcp/mcp.py,sha256=uGqNOwEgIKdvtVPmCf9Nf_YI_k7zioLvc6jVOpszrg4,
|
|
143
150
|
beamlit/functions/remote/remote.py,sha256=W60VNSNfBcVed8HVifOjcWN20StmhDjSV06AT35STaY,3276
|
144
151
|
beamlit/functions/search/__init__.py,sha256=5NAthQ9PBwrkNg1FpLRx4flauvv0HyWuwaVS589c1Pw,49
|
145
152
|
beamlit/functions/search/search.py,sha256=8s9ECltq7YE17j6rTxb12uY2EQY4_eTLHmwlIMThI0w,515
|
146
|
-
beamlit/models/__init__.py,sha256=
|
153
|
+
beamlit/models/__init__.py,sha256=O16oX1-oBJqB5LZEHAfu_hZZZh6_PX2LqZpVl4fNQRs,7730
|
147
154
|
beamlit/models/acl.py,sha256=tH67gsl_BMaviSbTaaIkO1g9cWZgJ6VgAnYVjQSzGZY,3952
|
148
155
|
beamlit/models/agent.py,sha256=oGZBwd2Hy-i6q_up4WQ0IvOmxqouR5I1Gk8vXvfLKvc,3384
|
149
156
|
beamlit/models/agent_chain.py,sha256=8PN8wVSayS-LoBN2nahZsOmr6r3t62H_LPDK_8fnkM8,2255
|
@@ -173,6 +180,9 @@ beamlit/models/function_kit.py,sha256=VrwV4EOrEqs8QgyaI7MyevRCCt2fhsTkOzfQVWXojt
|
|
173
180
|
beamlit/models/function_metadata.py,sha256=7OKXazGomwAupuMTrROFD67o4D-JCBB33gznzLUj0HI,4608
|
174
181
|
beamlit/models/function_release.py,sha256=T8SuLZBBdgGDvUg3sVluocvrKTvNxzZ6Wq3kjK4lYk4,1955
|
175
182
|
beamlit/models/function_spec.py,sha256=8nTfXLCGqEwCdOHjhF3UH0gwu_CGQZperdhljkxcs-U,10452
|
183
|
+
beamlit/models/get_trace_ids_response_200.py,sha256=m2uE11a9wE5c7xPTDVd4CuubQc2cPYJNaYpbcj-V1rU,1275
|
184
|
+
beamlit/models/get_trace_logs_response_200.py,sha256=NIFtg8qcE26_oJxoRYkt1KSV2JSYUxdUu45Gxs0Qli0,1280
|
185
|
+
beamlit/models/get_trace_response_200.py,sha256=1QePQMknfEP7DjPXb3ulf6v17430R_MJ4SPovdYK0NI,1257
|
176
186
|
beamlit/models/get_workspace_service_accounts_response_200_item.py,sha256=ATEojS0VhRmL6a9JPWT3-fl3plosONbIWa5Jpoe4Pag,2981
|
177
187
|
beamlit/models/increase_and_rate_metric.py,sha256=bRQ05Qi9TMYhYjtN90PeJaMEkNOdgC0A_7aQQBrWCDs,2071
|
178
188
|
beamlit/models/integration_config.py,sha256=lq8yZR1th2qrJmGAk5aEcuvuPy4zAI9XyNol5YjeGVY,1258
|
@@ -243,6 +253,6 @@ beamlit/serve/app.py,sha256=OpwPjRdyHZK6J-ziPwhiRDGGa2mvCrFVcBFE6alJVOM,3071
|
|
243
253
|
beamlit/serve/middlewares/__init__.py,sha256=1dVmnOmhAQWvWktqHkKSIX-YoF6fmMU8xkUQuhg_rJU,148
|
244
254
|
beamlit/serve/middlewares/accesslog.py,sha256=Mu4T4_9OvHybjA0ApzZFpgi2C8f3X1NbUk-76v634XM,631
|
245
255
|
beamlit/serve/middlewares/processtime.py,sha256=lDAaIasZ4bwvN-HKHvZpaD9r-yrkVNZYx4abvbjbrCg,411
|
246
|
-
beamlit-0.0.
|
247
|
-
beamlit-0.0.
|
248
|
-
beamlit-0.0.
|
256
|
+
beamlit-0.0.28.dist-info/METADATA,sha256=3SqDJjs2GCjatxPbgjFDr3YHDvSHb2KC0f1Jwg41rdo,2401
|
257
|
+
beamlit-0.0.28.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
258
|
+
beamlit-0.0.28.dist-info/RECORD,,
|
File without changes
|