agenta 0.27.7a1__py3-none-any.whl → 0.27.8a2__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.

Potentially problematic release.


This version of agenta might be problematic. Click here for more details.

Files changed (59) hide show
  1. agenta/client/backend/__init__.py +63 -0
  2. agenta/client/backend/client.py +22 -22
  3. agenta/client/backend/core/http_client.py +15 -7
  4. agenta/client/backend/evaluations/client.py +0 -11
  5. agenta/client/backend/observability/client.py +4 -4
  6. agenta/client/backend/observability_v_1/__init__.py +5 -0
  7. agenta/client/backend/observability_v_1/client.py +560 -0
  8. agenta/client/backend/observability_v_1/types/__init__.py +6 -0
  9. agenta/client/backend/observability_v_1/types/format.py +5 -0
  10. agenta/client/backend/observability_v_1/types/query_traces_response.py +11 -0
  11. agenta/client/backend/testsets/client.py +8 -40
  12. agenta/client/backend/types/__init__.py +58 -0
  13. agenta/client/backend/types/agenta_node_dto.py +48 -0
  14. agenta/client/backend/types/agenta_node_dto_nodes_value.py +6 -0
  15. agenta/client/backend/types/agenta_nodes_response.py +30 -0
  16. agenta/client/backend/types/agenta_root_dto.py +30 -0
  17. agenta/client/backend/types/agenta_roots_response.py +30 -0
  18. agenta/client/backend/types/agenta_tree_dto.py +30 -0
  19. agenta/client/backend/types/agenta_trees_response.py +30 -0
  20. agenta/client/backend/types/collect_status_response.py +22 -0
  21. agenta/client/backend/types/exception_dto.py +26 -0
  22. agenta/client/backend/types/link_dto.py +24 -0
  23. agenta/client/backend/types/node_dto.py +24 -0
  24. agenta/client/backend/types/node_type.py +19 -0
  25. agenta/client/backend/types/o_tel_context_dto.py +22 -0
  26. agenta/client/backend/types/o_tel_event_dto.py +23 -0
  27. agenta/client/backend/types/o_tel_extra_dto.py +26 -0
  28. agenta/client/backend/types/o_tel_link_dto.py +23 -0
  29. agenta/client/backend/types/o_tel_span_dto.py +37 -0
  30. agenta/client/backend/types/o_tel_span_kind.py +15 -0
  31. agenta/client/backend/types/o_tel_spans_response.py +24 -0
  32. agenta/client/backend/types/o_tel_status_code.py +8 -0
  33. agenta/client/backend/types/parent_dto.py +21 -0
  34. agenta/client/backend/types/root_dto.py +21 -0
  35. agenta/client/backend/types/span_dto.py +54 -0
  36. agenta/client/backend/types/span_dto_nodes_value.py +9 -0
  37. agenta/client/backend/types/status_code.py +5 -0
  38. agenta/client/backend/types/status_dto.py +23 -0
  39. agenta/client/backend/types/time_dto.py +23 -0
  40. agenta/client/backend/types/tree_dto.py +23 -0
  41. agenta/client/backend/types/tree_type.py +5 -0
  42. agenta/client/backend/variants/client.py +24 -16
  43. agenta/sdk/__init__.py +2 -0
  44. agenta/sdk/agenta_init.py +4 -9
  45. agenta/sdk/decorators/routing.py +23 -41
  46. agenta/sdk/litellm/litellm.py +30 -75
  47. agenta/sdk/middleware/auth.py +5 -5
  48. agenta/sdk/tracing/context.py +6 -6
  49. agenta/sdk/tracing/inline.py +41 -147
  50. agenta/sdk/tracing/processors.py +1 -3
  51. agenta/sdk/tracing/tracing.py +1 -5
  52. agenta/sdk/types.py +5 -2
  53. agenta/sdk/utils/exceptions.py +15 -9
  54. agenta/sdk/utils/logging.py +5 -1
  55. {agenta-0.27.7a1.dist-info → agenta-0.27.8a2.dist-info}/METADATA +1 -1
  56. {agenta-0.27.7a1.dist-info → agenta-0.27.8a2.dist-info}/RECORD +58 -25
  57. agenta/sdk/utils/debug.py +0 -68
  58. {agenta-0.27.7a1.dist-info → agenta-0.27.8a2.dist-info}/WHEEL +0 -0
  59. {agenta-0.27.7a1.dist-info → agenta-0.27.8a2.dist-info}/entry_points.txt +0 -0
@@ -28,7 +28,6 @@ class TestsetsClient:
28
28
  file: core.File,
29
29
  upload_type: typing.Optional[str] = OMIT,
30
30
  testset_name: typing.Optional[str] = OMIT,
31
- app_id: typing.Optional[str] = OMIT,
32
31
  request_options: typing.Optional[RequestOptions] = None,
33
32
  ) -> TestSetSimpleResponse:
34
33
  """
@@ -51,8 +50,6 @@ class TestsetsClient:
51
50
 
52
51
  testset_name : typing.Optional[str]
53
52
 
54
- app_id : typing.Optional[str]
55
-
56
53
  request_options : typing.Optional[RequestOptions]
57
54
  Request-specific configuration.
58
55
 
@@ -77,7 +74,6 @@ class TestsetsClient:
77
74
  data={
78
75
  "upload_type": upload_type,
79
76
  "testset_name": testset_name,
80
- "app_id": app_id,
81
77
  },
82
78
  files={
83
79
  "file": file,
@@ -173,18 +169,16 @@ class TestsetsClient:
173
169
 
174
170
  def create_testset(
175
171
  self,
176
- app_id: str,
177
172
  *,
178
173
  name: str,
179
174
  csvdata: typing.Sequence[typing.Dict[str, typing.Optional[typing.Any]]],
180
175
  request_options: typing.Optional[RequestOptions] = None,
181
176
  ) -> TestSetSimpleResponse:
182
177
  """
183
- Create a testset with given name and app_name, save the testset to MongoDB.
178
+ Create a testset with given name, save the testset to MongoDB.
184
179
 
185
180
  Args:
186
181
  name (str): name of the test set.
187
- app_name (str): name of the application.
188
182
  testset (Dict[str, str]): test set data.
189
183
 
190
184
  Returns:
@@ -192,8 +186,6 @@ class TestsetsClient:
192
186
 
193
187
  Parameters
194
188
  ----------
195
- app_id : str
196
-
197
189
  name : str
198
190
 
199
191
  csvdata : typing.Sequence[typing.Dict[str, typing.Optional[typing.Any]]]
@@ -215,13 +207,12 @@ class TestsetsClient:
215
207
  base_url="https://yourhost.com/path/to/api",
216
208
  )
217
209
  client.testsets.create_testset(
218
- app_id="app_id",
219
210
  name="name",
220
211
  csvdata=[{"key": "value"}],
221
212
  )
222
213
  """
223
214
  _response = self._client_wrapper.httpx_client.request(
224
- f"testsets/{jsonable_encoder(app_id)}",
215
+ "testsets",
225
216
  method="POST",
226
217
  json={
227
218
  "name": name,
@@ -405,7 +396,7 @@ class TestsetsClient:
405
396
  raise ApiError(status_code=_response.status_code, body=_response_json)
406
397
 
407
398
  def get_testsets(
408
- self, *, app_id: str, request_options: typing.Optional[RequestOptions] = None
399
+ self, *, request_options: typing.Optional[RequestOptions] = None
409
400
  ) -> typing.List[TestSetOutputResponse]:
410
401
  """
411
402
  Get all testsets.
@@ -420,8 +411,6 @@ class TestsetsClient:
420
411
 
421
412
  Parameters
422
413
  ----------
423
- app_id : str
424
-
425
414
  request_options : typing.Optional[RequestOptions]
426
415
  Request-specific configuration.
427
416
 
@@ -438,16 +427,11 @@ class TestsetsClient:
438
427
  api_key="YOUR_API_KEY",
439
428
  base_url="https://yourhost.com/path/to/api",
440
429
  )
441
- client.testsets.get_testsets(
442
- app_id="app_id",
443
- )
430
+ client.testsets.get_testsets()
444
431
  """
445
432
  _response = self._client_wrapper.httpx_client.request(
446
433
  "testsets",
447
434
  method="GET",
448
- params={
449
- "app_id": app_id,
450
- },
451
435
  request_options=request_options,
452
436
  )
453
437
  try:
@@ -557,7 +541,6 @@ class AsyncTestsetsClient:
557
541
  file: core.File,
558
542
  upload_type: typing.Optional[str] = OMIT,
559
543
  testset_name: typing.Optional[str] = OMIT,
560
- app_id: typing.Optional[str] = OMIT,
561
544
  request_options: typing.Optional[RequestOptions] = None,
562
545
  ) -> TestSetSimpleResponse:
563
546
  """
@@ -580,8 +563,6 @@ class AsyncTestsetsClient:
580
563
 
581
564
  testset_name : typing.Optional[str]
582
565
 
583
- app_id : typing.Optional[str]
584
-
585
566
  request_options : typing.Optional[RequestOptions]
586
567
  Request-specific configuration.
587
568
 
@@ -614,7 +595,6 @@ class AsyncTestsetsClient:
614
595
  data={
615
596
  "upload_type": upload_type,
616
597
  "testset_name": testset_name,
617
- "app_id": app_id,
618
598
  },
619
599
  files={
620
600
  "file": file,
@@ -718,18 +698,16 @@ class AsyncTestsetsClient:
718
698
 
719
699
  async def create_testset(
720
700
  self,
721
- app_id: str,
722
701
  *,
723
702
  name: str,
724
703
  csvdata: typing.Sequence[typing.Dict[str, typing.Optional[typing.Any]]],
725
704
  request_options: typing.Optional[RequestOptions] = None,
726
705
  ) -> TestSetSimpleResponse:
727
706
  """
728
- Create a testset with given name and app_name, save the testset to MongoDB.
707
+ Create a testset with given name, save the testset to MongoDB.
729
708
 
730
709
  Args:
731
710
  name (str): name of the test set.
732
- app_name (str): name of the application.
733
711
  testset (Dict[str, str]): test set data.
734
712
 
735
713
  Returns:
@@ -737,8 +715,6 @@ class AsyncTestsetsClient:
737
715
 
738
716
  Parameters
739
717
  ----------
740
- app_id : str
741
-
742
718
  name : str
743
719
 
744
720
  csvdata : typing.Sequence[typing.Dict[str, typing.Optional[typing.Any]]]
@@ -765,7 +741,6 @@ class AsyncTestsetsClient:
765
741
 
766
742
  async def main() -> None:
767
743
  await client.testsets.create_testset(
768
- app_id="app_id",
769
744
  name="name",
770
745
  csvdata=[{"key": "value"}],
771
746
  )
@@ -774,7 +749,7 @@ class AsyncTestsetsClient:
774
749
  asyncio.run(main())
775
750
  """
776
751
  _response = await self._client_wrapper.httpx_client.request(
777
- f"testsets/{jsonable_encoder(app_id)}",
752
+ "testsets",
778
753
  method="POST",
779
754
  json={
780
755
  "name": name,
@@ -974,7 +949,7 @@ class AsyncTestsetsClient:
974
949
  raise ApiError(status_code=_response.status_code, body=_response_json)
975
950
 
976
951
  async def get_testsets(
977
- self, *, app_id: str, request_options: typing.Optional[RequestOptions] = None
952
+ self, *, request_options: typing.Optional[RequestOptions] = None
978
953
  ) -> typing.List[TestSetOutputResponse]:
979
954
  """
980
955
  Get all testsets.
@@ -989,8 +964,6 @@ class AsyncTestsetsClient:
989
964
 
990
965
  Parameters
991
966
  ----------
992
- app_id : str
993
-
994
967
  request_options : typing.Optional[RequestOptions]
995
968
  Request-specific configuration.
996
969
 
@@ -1012,9 +985,7 @@ class AsyncTestsetsClient:
1012
985
 
1013
986
 
1014
987
  async def main() -> None:
1015
- await client.testsets.get_testsets(
1016
- app_id="app_id",
1017
- )
988
+ await client.testsets.get_testsets()
1018
989
 
1019
990
 
1020
991
  asyncio.run(main())
@@ -1022,9 +993,6 @@ class AsyncTestsetsClient:
1022
993
  _response = await self._client_wrapper.httpx_client.request(
1023
994
  "testsets",
1024
995
  method="GET",
1025
- params={
1026
- "app_id": app_id,
1027
- },
1028
996
  request_options=request_options,
1029
997
  )
1030
998
  try:
@@ -1,5 +1,12 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
+ from .agenta_node_dto import AgentaNodeDto
4
+ from .agenta_node_dto_nodes_value import AgentaNodeDtoNodesValue
5
+ from .agenta_nodes_response import AgentaNodesResponse
6
+ from .agenta_root_dto import AgentaRootDto
7
+ from .agenta_roots_response import AgentaRootsResponse
8
+ from .agenta_tree_dto import AgentaTreeDto
9
+ from .agenta_trees_response import AgentaTreesResponse
3
10
  from .aggregated_result import AggregatedResult
4
11
  from .aggregated_result_evaluator_config import AggregatedResultEvaluatorConfig
5
12
  from .app import App
@@ -7,6 +14,7 @@ from .app_variant_response import AppVariantResponse
7
14
  from .app_variant_revision import AppVariantRevision
8
15
  from .base_output import BaseOutput
9
16
  from .body_import_testset import BodyImportTestset
17
+ from .collect_status_response import CollectStatusResponse
10
18
  from .config_db import ConfigDb
11
19
  from .config_dto import ConfigDto
12
20
  from .config_response_model import ConfigResponseModel
@@ -31,6 +39,7 @@ from .evaluator import Evaluator
31
39
  from .evaluator_config import EvaluatorConfig
32
40
  from .evaluator_mapping_output_interface import EvaluatorMappingOutputInterface
33
41
  from .evaluator_output_interface import EvaluatorOutputInterface
42
+ from .exception_dto import ExceptionDto
34
43
  from .get_config_response import GetConfigResponse
35
44
  from .http_validation_error import HttpValidationError
36
45
  from .human_evaluation import HumanEvaluation
@@ -42,30 +51,50 @@ from .human_evaluation_update import HumanEvaluationUpdate
42
51
  from .image import Image
43
52
  from .invite_request import InviteRequest
44
53
  from .lifecycle_dto import LifecycleDto
54
+ from .link_dto import LinkDto
45
55
  from .list_api_keys_response import ListApiKeysResponse
46
56
  from .llm_run_rate_limit import LlmRunRateLimit
47
57
  from .llm_tokens import LlmTokens
48
58
  from .lm_providers_enum import LmProvidersEnum
49
59
  from .new_human_evaluation import NewHumanEvaluation
50
60
  from .new_testset import NewTestset
61
+ from .node_dto import NodeDto
62
+ from .node_type import NodeType
63
+ from .o_tel_context_dto import OTelContextDto
64
+ from .o_tel_event_dto import OTelEventDto
65
+ from .o_tel_extra_dto import OTelExtraDto
66
+ from .o_tel_link_dto import OTelLinkDto
67
+ from .o_tel_span_dto import OTelSpanDto
68
+ from .o_tel_span_kind import OTelSpanKind
69
+ from .o_tel_spans_response import OTelSpansResponse
70
+ from .o_tel_status_code import OTelStatusCode
51
71
  from .organization import Organization
52
72
  from .organization_output import OrganizationOutput
53
73
  from .outputs import Outputs
74
+ from .parent_dto import ParentDto
54
75
  from .permission import Permission
55
76
  from .reference_dto import ReferenceDto
56
77
  from .reference_request_model import ReferenceRequestModel
57
78
  from .result import Result
79
+ from .root_dto import RootDto
58
80
  from .score import Score
59
81
  from .simple_evaluation_output import SimpleEvaluationOutput
60
82
  from .span import Span
61
83
  from .span_detail import SpanDetail
84
+ from .span_dto import SpanDto
85
+ from .span_dto_nodes_value import SpanDtoNodesValue
62
86
  from .span_status_code import SpanStatusCode
63
87
  from .span_variant import SpanVariant
88
+ from .status_code import StatusCode
89
+ from .status_dto import StatusDto
64
90
  from .template import Template
65
91
  from .template_image_info import TemplateImageInfo
66
92
  from .test_set_output_response import TestSetOutputResponse
67
93
  from .test_set_simple_response import TestSetSimpleResponse
94
+ from .time_dto import TimeDto
68
95
  from .trace_detail import TraceDetail
96
+ from .tree_dto import TreeDto
97
+ from .tree_type import TreeType
69
98
  from .update_app_output import UpdateAppOutput
70
99
  from .uri import Uri
71
100
  from .validation_error import ValidationError
@@ -80,6 +109,13 @@ from .workspace_role import WorkspaceRole
80
109
  from .workspace_role_response import WorkspaceRoleResponse
81
110
 
82
111
  __all__ = [
112
+ "AgentaNodeDto",
113
+ "AgentaNodeDtoNodesValue",
114
+ "AgentaNodesResponse",
115
+ "AgentaRootDto",
116
+ "AgentaRootsResponse",
117
+ "AgentaTreeDto",
118
+ "AgentaTreesResponse",
83
119
  "AggregatedResult",
84
120
  "AggregatedResultEvaluatorConfig",
85
121
  "App",
@@ -87,6 +123,7 @@ __all__ = [
87
123
  "AppVariantRevision",
88
124
  "BaseOutput",
89
125
  "BodyImportTestset",
126
+ "CollectStatusResponse",
90
127
  "ConfigDb",
91
128
  "ConfigDto",
92
129
  "ConfigResponseModel",
@@ -111,6 +148,7 @@ __all__ = [
111
148
  "EvaluatorConfig",
112
149
  "EvaluatorMappingOutputInterface",
113
150
  "EvaluatorOutputInterface",
151
+ "ExceptionDto",
114
152
  "GetConfigResponse",
115
153
  "HttpValidationError",
116
154
  "HumanEvaluation",
@@ -122,30 +160,50 @@ __all__ = [
122
160
  "Image",
123
161
  "InviteRequest",
124
162
  "LifecycleDto",
163
+ "LinkDto",
125
164
  "ListApiKeysResponse",
126
165
  "LlmRunRateLimit",
127
166
  "LlmTokens",
128
167
  "LmProvidersEnum",
129
168
  "NewHumanEvaluation",
130
169
  "NewTestset",
170
+ "NodeDto",
171
+ "NodeType",
172
+ "OTelContextDto",
173
+ "OTelEventDto",
174
+ "OTelExtraDto",
175
+ "OTelLinkDto",
176
+ "OTelSpanDto",
177
+ "OTelSpanKind",
178
+ "OTelSpansResponse",
179
+ "OTelStatusCode",
131
180
  "Organization",
132
181
  "OrganizationOutput",
133
182
  "Outputs",
183
+ "ParentDto",
134
184
  "Permission",
135
185
  "ReferenceDto",
136
186
  "ReferenceRequestModel",
137
187
  "Result",
188
+ "RootDto",
138
189
  "Score",
139
190
  "SimpleEvaluationOutput",
140
191
  "Span",
141
192
  "SpanDetail",
193
+ "SpanDto",
194
+ "SpanDtoNodesValue",
142
195
  "SpanStatusCode",
143
196
  "SpanVariant",
197
+ "StatusCode",
198
+ "StatusDto",
144
199
  "Template",
145
200
  "TemplateImageInfo",
146
201
  "TestSetOutputResponse",
147
202
  "TestSetSimpleResponse",
203
+ "TimeDto",
148
204
  "TraceDetail",
205
+ "TreeDto",
206
+ "TreeType",
149
207
  "UpdateAppOutput",
150
208
  "Uri",
151
209
  "ValidationError",
@@ -0,0 +1,48 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from .lifecycle_dto import LifecycleDto
6
+ from .root_dto import RootDto
7
+ from .tree_dto import TreeDto
8
+ from .node_dto import NodeDto
9
+ from .parent_dto import ParentDto
10
+ from .time_dto import TimeDto
11
+ from .status_dto import StatusDto
12
+ from .exception_dto import ExceptionDto
13
+ from .link_dto import LinkDto
14
+ from .o_tel_extra_dto import OTelExtraDto
15
+ from .agenta_node_dto_nodes_value import AgentaNodeDtoNodesValue
16
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
17
+ import pydantic
18
+
19
+
20
+ class AgentaNodeDto(UniversalBaseModel):
21
+ lifecycle: typing.Optional[LifecycleDto] = None
22
+ root: RootDto
23
+ tree: TreeDto
24
+ node: NodeDto
25
+ parent: typing.Optional[ParentDto] = None
26
+ time: TimeDto
27
+ status: StatusDto
28
+ exception: typing.Optional[ExceptionDto] = None
29
+ data: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
30
+ metrics: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
31
+ meta: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
32
+ refs: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
33
+ links: typing.Optional[typing.List[LinkDto]] = None
34
+ otel: typing.Optional[OTelExtraDto] = None
35
+ nodes: typing.Optional[
36
+ typing.Dict[str, typing.Optional[AgentaNodeDtoNodesValue]]
37
+ ] = None
38
+
39
+ if IS_PYDANTIC_V2:
40
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
41
+ extra="allow", frozen=True
42
+ ) # type: ignore # Pydantic v2
43
+ else:
44
+
45
+ class Config:
46
+ frozen = True
47
+ smart_union = True
48
+ extra = pydantic.Extra.allow
@@ -0,0 +1,6 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+ from .span_dto import SpanDto
5
+
6
+ AgentaNodeDtoNodesValue = typing.Union[SpanDto, typing.List[SpanDto]]
@@ -0,0 +1,30 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from __future__ import annotations
4
+ from ..core.pydantic_utilities import UniversalBaseModel
5
+ from .span_dto import SpanDto
6
+ import typing
7
+ from .agenta_node_dto import AgentaNodeDto
8
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
9
+ import pydantic
10
+ from ..core.pydantic_utilities import update_forward_refs
11
+
12
+
13
+ class AgentaNodesResponse(UniversalBaseModel):
14
+ nodes: typing.List[AgentaNodeDto]
15
+ version: str
16
+ count: typing.Optional[int] = None
17
+
18
+ if IS_PYDANTIC_V2:
19
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
20
+ extra="allow", frozen=True
21
+ ) # type: ignore # Pydantic v2
22
+ else:
23
+
24
+ class Config:
25
+ frozen = True
26
+ smart_union = True
27
+ extra = pydantic.Extra.allow
28
+
29
+
30
+ update_forward_refs(SpanDto, AgentaNodesResponse=AgentaNodesResponse)
@@ -0,0 +1,30 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from __future__ import annotations
4
+ from ..core.pydantic_utilities import UniversalBaseModel
5
+ from .span_dto import SpanDto
6
+ from .root_dto import RootDto
7
+ import typing
8
+ from .agenta_tree_dto import AgentaTreeDto
9
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
10
+ import pydantic
11
+ from ..core.pydantic_utilities import update_forward_refs
12
+
13
+
14
+ class AgentaRootDto(UniversalBaseModel):
15
+ root: RootDto
16
+ trees: typing.List[AgentaTreeDto]
17
+
18
+ if IS_PYDANTIC_V2:
19
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
20
+ extra="allow", frozen=True
21
+ ) # type: ignore # Pydantic v2
22
+ else:
23
+
24
+ class Config:
25
+ frozen = True
26
+ smart_union = True
27
+ extra = pydantic.Extra.allow
28
+
29
+
30
+ update_forward_refs(SpanDto, AgentaRootDto=AgentaRootDto)
@@ -0,0 +1,30 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from __future__ import annotations
4
+ from ..core.pydantic_utilities import UniversalBaseModel
5
+ from .span_dto import SpanDto
6
+ import typing
7
+ from .agenta_root_dto import AgentaRootDto
8
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
9
+ import pydantic
10
+ from ..core.pydantic_utilities import update_forward_refs
11
+
12
+
13
+ class AgentaRootsResponse(UniversalBaseModel):
14
+ roots: typing.List[AgentaRootDto]
15
+ version: str
16
+ count: typing.Optional[int] = None
17
+
18
+ if IS_PYDANTIC_V2:
19
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
20
+ extra="allow", frozen=True
21
+ ) # type: ignore # Pydantic v2
22
+ else:
23
+
24
+ class Config:
25
+ frozen = True
26
+ smart_union = True
27
+ extra = pydantic.Extra.allow
28
+
29
+
30
+ update_forward_refs(SpanDto, AgentaRootsResponse=AgentaRootsResponse)
@@ -0,0 +1,30 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from __future__ import annotations
4
+ from ..core.pydantic_utilities import UniversalBaseModel
5
+ from .span_dto import SpanDto
6
+ from .tree_dto import TreeDto
7
+ import typing
8
+ from .agenta_node_dto import AgentaNodeDto
9
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
10
+ import pydantic
11
+ from ..core.pydantic_utilities import update_forward_refs
12
+
13
+
14
+ class AgentaTreeDto(UniversalBaseModel):
15
+ tree: TreeDto
16
+ nodes: typing.List[AgentaNodeDto]
17
+
18
+ if IS_PYDANTIC_V2:
19
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
20
+ extra="allow", frozen=True
21
+ ) # type: ignore # Pydantic v2
22
+ else:
23
+
24
+ class Config:
25
+ frozen = True
26
+ smart_union = True
27
+ extra = pydantic.Extra.allow
28
+
29
+
30
+ update_forward_refs(SpanDto, AgentaTreeDto=AgentaTreeDto)
@@ -0,0 +1,30 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from __future__ import annotations
4
+ from ..core.pydantic_utilities import UniversalBaseModel
5
+ from .span_dto import SpanDto
6
+ import typing
7
+ from .agenta_tree_dto import AgentaTreeDto
8
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
9
+ import pydantic
10
+ from ..core.pydantic_utilities import update_forward_refs
11
+
12
+
13
+ class AgentaTreesResponse(UniversalBaseModel):
14
+ trees: typing.List[AgentaTreeDto]
15
+ version: str
16
+ count: typing.Optional[int] = None
17
+
18
+ if IS_PYDANTIC_V2:
19
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
20
+ extra="allow", frozen=True
21
+ ) # type: ignore # Pydantic v2
22
+ else:
23
+
24
+ class Config:
25
+ frozen = True
26
+ smart_union = True
27
+ extra = pydantic.Extra.allow
28
+
29
+
30
+ update_forward_refs(SpanDto, AgentaTreesResponse=AgentaTreesResponse)
@@ -0,0 +1,22 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
5
+ import typing
6
+ import pydantic
7
+
8
+
9
+ class CollectStatusResponse(UniversalBaseModel):
10
+ version: str
11
+ status: str
12
+
13
+ if IS_PYDANTIC_V2:
14
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
15
+ extra="allow", frozen=True
16
+ ) # type: ignore # Pydantic v2
17
+ else:
18
+
19
+ class Config:
20
+ frozen = True
21
+ smart_union = True
22
+ extra = pydantic.Extra.allow
@@ -0,0 +1,26 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import datetime as dt
5
+ import typing
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ import pydantic
8
+
9
+
10
+ class ExceptionDto(UniversalBaseModel):
11
+ timestamp: dt.datetime
12
+ type: str
13
+ message: typing.Optional[str] = None
14
+ stacktrace: typing.Optional[str] = None
15
+ attributes: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
16
+
17
+ if IS_PYDANTIC_V2:
18
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
19
+ extra="allow", frozen=True
20
+ ) # type: ignore # Pydantic v2
21
+ else:
22
+
23
+ class Config:
24
+ frozen = True
25
+ smart_union = True
26
+ extra = pydantic.Extra.allow
@@ -0,0 +1,24 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ from .tree_type import TreeType
5
+ import typing
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ import pydantic
8
+
9
+
10
+ class LinkDto(UniversalBaseModel):
11
+ type: TreeType = "invocation"
12
+ id: str
13
+ tree_id: typing.Optional[str] = None
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
17
+ extra="allow", frozen=True
18
+ ) # type: ignore # Pydantic v2
19
+ else:
20
+
21
+ class Config:
22
+ frozen = True
23
+ smart_union = True
24
+ extra = pydantic.Extra.allow
@@ -0,0 +1,24 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ from ..core.pydantic_utilities import UniversalBaseModel
4
+ import typing
5
+ from .node_type import NodeType
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ import pydantic
8
+
9
+
10
+ class NodeDto(UniversalBaseModel):
11
+ id: str
12
+ name: str
13
+ type: typing.Optional[NodeType] = None
14
+
15
+ if IS_PYDANTIC_V2:
16
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
17
+ extra="allow", frozen=True
18
+ ) # type: ignore # Pydantic v2
19
+ else:
20
+
21
+ class Config:
22
+ frozen = True
23
+ smart_union = True
24
+ extra = pydantic.Extra.allow