eval-studio-client 1.2.0a1__py3-none-any.whl → 1.2.0a3__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.
- eval_studio_client/api/__init__.py +21 -0
- eval_studio_client/api/api/__init__.py +1 -0
- eval_studio_client/api/api/dashboard_service_api.py +1134 -73
- eval_studio_client/api/api/info_service_api.py +240 -0
- eval_studio_client/api/api/test_service_api.py +1233 -172
- eval_studio_client/api/api/workflow_result_service_api.py +1075 -0
- eval_studio_client/api/api/workflow_service_api.py +1420 -101
- eval_studio_client/api/docs/DashboardServiceApi.md +272 -0
- eval_studio_client/api/docs/InfoServiceApi.md +63 -0
- eval_studio_client/api/docs/PerturbationServiceCreatePerturbationRequest.md +1 -1
- eval_studio_client/api/docs/TestServiceApi.md +268 -0
- eval_studio_client/api/docs/TestServiceGrantTestAccessRequest.md +30 -0
- eval_studio_client/api/docs/TestServiceRevokeTestAccessRequest.md +30 -0
- eval_studio_client/api/docs/V1CreatePerturbationResponse.md +1 -1
- eval_studio_client/api/docs/V1FindWorkflowsByCollectionIDResponse.md +29 -0
- eval_studio_client/api/docs/V1GetStatsResponse.md +29 -0
- eval_studio_client/api/docs/V1GetWorkflowResultCorpusPatchResponse.md +29 -0
- eval_studio_client/api/docs/V1GetWorkflowResultReportResponse.md +30 -0
- eval_studio_client/api/docs/V1GetWorkflowResultSummaryResponse.md +32 -0
- eval_studio_client/api/docs/V1GetWorkflowResultSystemPromptPatchResponse.md +29 -0
- eval_studio_client/api/docs/V1Info.md +2 -0
- eval_studio_client/api/docs/V1ListDashboardAccessResponse.md +29 -0
- eval_studio_client/api/docs/V1ListDashboardsSharedWithMeResponse.md +29 -0
- eval_studio_client/api/docs/V1ListTestAccessResponse.md +29 -0
- eval_studio_client/api/docs/V1ListTestsSharedWithMeResponse.md +29 -0
- eval_studio_client/api/docs/V1ListWorkflowAccessResponse.md +29 -0
- eval_studio_client/api/docs/V1ListWorkflowsSharedWithMeResponse.md +29 -0
- eval_studio_client/api/docs/V1Role.md +12 -0
- eval_studio_client/api/docs/V1RoleBinding.md +32 -0
- eval_studio_client/api/docs/V1Stats.md +32 -0
- eval_studio_client/api/docs/V1WorkflowResultArtifactType.md +12 -0
- eval_studio_client/api/docs/V1WorkflowResultReportFormat.md +11 -0
- eval_studio_client/api/docs/WorkflowResultServiceApi.md +282 -0
- eval_studio_client/api/docs/WorkflowServiceApi.md +340 -0
- eval_studio_client/api/docs/WorkflowServiceRevokeWorkflowAccessRequest.md +30 -0
- eval_studio_client/api/models/__init__.py +20 -0
- eval_studio_client/api/models/perturbation_service_create_perturbation_request.py +1 -1
- eval_studio_client/api/models/test_service_grant_test_access_request.py +90 -0
- eval_studio_client/api/models/test_service_revoke_test_access_request.py +90 -0
- eval_studio_client/api/models/v1_create_perturbation_response.py +1 -1
- eval_studio_client/api/models/v1_find_workflows_by_collection_id_response.py +95 -0
- eval_studio_client/api/models/v1_get_stats_response.py +91 -0
- eval_studio_client/api/models/v1_get_workflow_result_corpus_patch_response.py +87 -0
- eval_studio_client/api/models/v1_get_workflow_result_report_response.py +89 -0
- eval_studio_client/api/models/v1_get_workflow_result_summary_response.py +94 -0
- eval_studio_client/api/models/v1_get_workflow_result_system_prompt_patch_response.py +87 -0
- eval_studio_client/api/models/v1_info.py +6 -2
- eval_studio_client/api/models/v1_list_dashboard_access_response.py +95 -0
- eval_studio_client/api/models/v1_list_dashboards_shared_with_me_response.py +95 -0
- eval_studio_client/api/models/v1_list_test_access_response.py +95 -0
- eval_studio_client/api/models/v1_list_tests_shared_with_me_response.py +95 -0
- eval_studio_client/api/models/v1_list_workflow_access_response.py +95 -0
- eval_studio_client/api/models/v1_list_workflows_shared_with_me_response.py +95 -0
- eval_studio_client/api/models/v1_role.py +38 -0
- eval_studio_client/api/models/v1_role_binding.py +92 -0
- eval_studio_client/api/models/v1_stats.py +106 -0
- eval_studio_client/api/models/v1_workflow_node_type.py +1 -0
- eval_studio_client/api/models/v1_workflow_result_artifact_type.py +40 -0
- eval_studio_client/api/models/v1_workflow_result_report_format.py +37 -0
- eval_studio_client/api/models/workflow_service_revoke_workflow_access_request.py +90 -0
- eval_studio_client/api/test/test_dashboard_service_api.py +28 -0
- eval_studio_client/api/test/test_info_service_api.py +6 -0
- eval_studio_client/api/test/test_test_service_api.py +24 -0
- eval_studio_client/api/test/test_test_service_grant_test_access_request.py +52 -0
- eval_studio_client/api/test/test_test_service_revoke_test_access_request.py +52 -0
- eval_studio_client/api/test/test_v1_find_workflows_by_collection_id_response.py +95 -0
- eval_studio_client/api/test/test_v1_get_info_response.py +3 -1
- eval_studio_client/api/test/test_v1_get_stats_response.py +54 -0
- eval_studio_client/api/test/test_v1_get_workflow_result_corpus_patch_response.py +51 -0
- eval_studio_client/api/test/test_v1_get_workflow_result_report_response.py +54 -0
- eval_studio_client/api/test/test_v1_get_workflow_result_summary_response.py +58 -0
- eval_studio_client/api/test/test_v1_get_workflow_result_system_prompt_patch_response.py +51 -0
- eval_studio_client/api/test/test_v1_info.py +3 -1
- eval_studio_client/api/test/test_v1_list_dashboard_access_response.py +56 -0
- eval_studio_client/api/test/test_v1_list_dashboards_shared_with_me_response.py +69 -0
- eval_studio_client/api/test/test_v1_list_test_access_response.py +56 -0
- eval_studio_client/api/test/test_v1_list_tests_shared_with_me_response.py +70 -0
- eval_studio_client/api/test/test_v1_list_workflow_access_response.py +56 -0
- eval_studio_client/api/test/test_v1_list_workflows_shared_with_me_response.py +95 -0
- eval_studio_client/api/test/test_v1_role.py +33 -0
- eval_studio_client/api/test/test_v1_role_binding.py +53 -0
- eval_studio_client/api/test/test_v1_stats.py +53 -0
- eval_studio_client/api/test/test_v1_workflow_result_artifact_type.py +33 -0
- eval_studio_client/api/test/test_v1_workflow_result_report_format.py +33 -0
- eval_studio_client/api/test/test_workflow_result_service_api.py +59 -0
- eval_studio_client/api/test/test_workflow_service_api.py +35 -0
- eval_studio_client/api/test/test_workflow_service_revoke_workflow_access_request.py +52 -0
- eval_studio_client/gen/openapiv2/eval_studio.swagger.json +940 -13
- eval_studio_client/tests.py +3 -3
- {eval_studio_client-1.2.0a1.dist-info → eval_studio_client-1.2.0a3.dist-info}/METADATA +2 -1
- {eval_studio_client-1.2.0a1.dist-info → eval_studio_client-1.2.0a3.dist-info}/RECORD +92 -29
- {eval_studio_client-1.2.0a1.dist-info → eval_studio_client-1.2.0a3.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ai/h2o/eval_studio/v1/insight.proto
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: version not set
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from eval_studio_client.api.models.v1_workflow import V1Workflow
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class V1ListWorkflowsSharedWithMeResponse(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
V1ListWorkflowsSharedWithMeResponse
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
workflows: Optional[List[V1Workflow]] = Field(default=None, description="The Workflows that match the request.")
|
|
31
|
+
__properties: ClassVar[List[str]] = ["workflows"]
|
|
32
|
+
|
|
33
|
+
model_config = ConfigDict(
|
|
34
|
+
populate_by_name=True,
|
|
35
|
+
validate_assignment=True,
|
|
36
|
+
protected_namespaces=(),
|
|
37
|
+
)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def to_str(self) -> str:
|
|
41
|
+
"""Returns the string representation of the model using alias"""
|
|
42
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
43
|
+
|
|
44
|
+
def to_json(self) -> str:
|
|
45
|
+
"""Returns the JSON representation of the model using alias"""
|
|
46
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
47
|
+
return json.dumps(self.to_dict())
|
|
48
|
+
|
|
49
|
+
@classmethod
|
|
50
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
51
|
+
"""Create an instance of V1ListWorkflowsSharedWithMeResponse from a JSON string"""
|
|
52
|
+
return cls.from_dict(json.loads(json_str))
|
|
53
|
+
|
|
54
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
55
|
+
"""Return the dictionary representation of the model using alias.
|
|
56
|
+
|
|
57
|
+
This has the following differences from calling pydantic's
|
|
58
|
+
`self.model_dump(by_alias=True)`:
|
|
59
|
+
|
|
60
|
+
* `None` is only added to the output dict for nullable fields that
|
|
61
|
+
were set at model initialization. Other fields with value `None`
|
|
62
|
+
are ignored.
|
|
63
|
+
"""
|
|
64
|
+
excluded_fields: Set[str] = set([
|
|
65
|
+
])
|
|
66
|
+
|
|
67
|
+
_dict = self.model_dump(
|
|
68
|
+
by_alias=True,
|
|
69
|
+
exclude=excluded_fields,
|
|
70
|
+
exclude_none=True,
|
|
71
|
+
)
|
|
72
|
+
# override the default output from pydantic by calling `to_dict()` of each item in workflows (list)
|
|
73
|
+
_items = []
|
|
74
|
+
if self.workflows:
|
|
75
|
+
for _item in self.workflows:
|
|
76
|
+
if _item:
|
|
77
|
+
_items.append(_item.to_dict())
|
|
78
|
+
_dict['workflows'] = _items
|
|
79
|
+
return _dict
|
|
80
|
+
|
|
81
|
+
@classmethod
|
|
82
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
83
|
+
"""Create an instance of V1ListWorkflowsSharedWithMeResponse from a dict"""
|
|
84
|
+
if obj is None:
|
|
85
|
+
return None
|
|
86
|
+
|
|
87
|
+
if not isinstance(obj, dict):
|
|
88
|
+
return cls.model_validate(obj)
|
|
89
|
+
|
|
90
|
+
_obj = cls.model_validate({
|
|
91
|
+
"workflows": [V1Workflow.from_dict(_item) for _item in obj["workflows"]] if obj.get("workflows") is not None else None
|
|
92
|
+
})
|
|
93
|
+
return _obj
|
|
94
|
+
|
|
95
|
+
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ai/h2o/eval_studio/v1/insight.proto
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: version not set
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import json
|
|
17
|
+
from enum import Enum
|
|
18
|
+
from typing_extensions import Self
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class V1Role(str, Enum):
|
|
22
|
+
"""
|
|
23
|
+
Roles are used to define the access level of a user to a specific resource. - ROLE_UNSPECIFIED: Unspecified role. This is used when the role is not set or not applicable. - ROLE_READER: Reader role. This role allows read-only access to the resource. - ROLE_WRITER: Writer role. This role allows read and write access to the resource. This does not allow to manage access to the resource or to delete it.
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
"""
|
|
27
|
+
allowed enum values
|
|
28
|
+
"""
|
|
29
|
+
ROLE_UNSPECIFIED = 'ROLE_UNSPECIFIED'
|
|
30
|
+
ROLE_READER = 'ROLE_READER'
|
|
31
|
+
ROLE_WRITER = 'ROLE_WRITER'
|
|
32
|
+
|
|
33
|
+
@classmethod
|
|
34
|
+
def from_json(cls, json_str: str) -> Self:
|
|
35
|
+
"""Create an instance of V1Role from a JSON string"""
|
|
36
|
+
return cls(json.loads(json_str))
|
|
37
|
+
|
|
38
|
+
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ai/h2o/eval_studio/v1/insight.proto
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: version not set
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from eval_studio_client.api.models.v1_role import V1Role
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class V1RoleBinding(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
RoleBinding is used to bind a user to a specific role for a specific resource.
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
subject: Optional[StrictStr] = Field(default=None, description="The subject to which the role is assigned.")
|
|
31
|
+
role: Optional[V1Role] = None
|
|
32
|
+
resource: Optional[StrictStr] = Field(default=None, description="The resource to which the role is assigned.")
|
|
33
|
+
__properties: ClassVar[List[str]] = ["subject", "role", "resource"]
|
|
34
|
+
|
|
35
|
+
model_config = ConfigDict(
|
|
36
|
+
populate_by_name=True,
|
|
37
|
+
validate_assignment=True,
|
|
38
|
+
protected_namespaces=(),
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def to_str(self) -> str:
|
|
43
|
+
"""Returns the string representation of the model using alias"""
|
|
44
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
45
|
+
|
|
46
|
+
def to_json(self) -> str:
|
|
47
|
+
"""Returns the JSON representation of the model using alias"""
|
|
48
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
49
|
+
return json.dumps(self.to_dict())
|
|
50
|
+
|
|
51
|
+
@classmethod
|
|
52
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
53
|
+
"""Create an instance of V1RoleBinding from a JSON string"""
|
|
54
|
+
return cls.from_dict(json.loads(json_str))
|
|
55
|
+
|
|
56
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
57
|
+
"""Return the dictionary representation of the model using alias.
|
|
58
|
+
|
|
59
|
+
This has the following differences from calling pydantic's
|
|
60
|
+
`self.model_dump(by_alias=True)`:
|
|
61
|
+
|
|
62
|
+
* `None` is only added to the output dict for nullable fields that
|
|
63
|
+
were set at model initialization. Other fields with value `None`
|
|
64
|
+
are ignored.
|
|
65
|
+
"""
|
|
66
|
+
excluded_fields: Set[str] = set([
|
|
67
|
+
])
|
|
68
|
+
|
|
69
|
+
_dict = self.model_dump(
|
|
70
|
+
by_alias=True,
|
|
71
|
+
exclude=excluded_fields,
|
|
72
|
+
exclude_none=True,
|
|
73
|
+
)
|
|
74
|
+
return _dict
|
|
75
|
+
|
|
76
|
+
@classmethod
|
|
77
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
78
|
+
"""Create an instance of V1RoleBinding from a dict"""
|
|
79
|
+
if obj is None:
|
|
80
|
+
return None
|
|
81
|
+
|
|
82
|
+
if not isinstance(obj, dict):
|
|
83
|
+
return cls.model_validate(obj)
|
|
84
|
+
|
|
85
|
+
_obj = cls.model_validate({
|
|
86
|
+
"subject": obj.get("subject"),
|
|
87
|
+
"role": obj.get("role"),
|
|
88
|
+
"resource": obj.get("resource")
|
|
89
|
+
})
|
|
90
|
+
return _obj
|
|
91
|
+
|
|
92
|
+
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ai/h2o/eval_studio/v1/insight.proto
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: version not set
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from typing import Optional, Set
|
|
23
|
+
from typing_extensions import Self
|
|
24
|
+
|
|
25
|
+
class V1Stats(BaseModel):
|
|
26
|
+
"""
|
|
27
|
+
Stats represents statistics about the Eval Studio instance, jobs and utilization.
|
|
28
|
+
""" # noqa: E501
|
|
29
|
+
topic_modeling_pending_jobs: Optional[StrictStr] = Field(default=None, description="Number of pending jobs in the topic modeling queue. It's marked as optional to always be part of the response, even when the value is zero.", alias="topicModelingPendingJobs")
|
|
30
|
+
test_validation_pending_jobs: Optional[StrictStr] = Field(default=None, description="Number of pending jobs in the test validation queue. It's marked as optional to always be part of the response, even when the value is zero.", alias="testValidationPendingJobs")
|
|
31
|
+
failure_clustering_pending_jobs: Optional[StrictStr] = Field(default=None, description="Number of pending jobs in the failure clustering queue. It's marked as optional to always be part of the response, even when the value is zero.", alias="failureClusteringPendingJobs")
|
|
32
|
+
__properties: ClassVar[List[str]] = ["topicModelingPendingJobs", "testValidationPendingJobs", "failureClusteringPendingJobs"]
|
|
33
|
+
|
|
34
|
+
model_config = ConfigDict(
|
|
35
|
+
populate_by_name=True,
|
|
36
|
+
validate_assignment=True,
|
|
37
|
+
protected_namespaces=(),
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def to_str(self) -> str:
|
|
42
|
+
"""Returns the string representation of the model using alias"""
|
|
43
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
44
|
+
|
|
45
|
+
def to_json(self) -> str:
|
|
46
|
+
"""Returns the JSON representation of the model using alias"""
|
|
47
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
48
|
+
return json.dumps(self.to_dict())
|
|
49
|
+
|
|
50
|
+
@classmethod
|
|
51
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
52
|
+
"""Create an instance of V1Stats from a JSON string"""
|
|
53
|
+
return cls.from_dict(json.loads(json_str))
|
|
54
|
+
|
|
55
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
56
|
+
"""Return the dictionary representation of the model using alias.
|
|
57
|
+
|
|
58
|
+
This has the following differences from calling pydantic's
|
|
59
|
+
`self.model_dump(by_alias=True)`:
|
|
60
|
+
|
|
61
|
+
* `None` is only added to the output dict for nullable fields that
|
|
62
|
+
were set at model initialization. Other fields with value `None`
|
|
63
|
+
are ignored.
|
|
64
|
+
"""
|
|
65
|
+
excluded_fields: Set[str] = set([
|
|
66
|
+
])
|
|
67
|
+
|
|
68
|
+
_dict = self.model_dump(
|
|
69
|
+
by_alias=True,
|
|
70
|
+
exclude=excluded_fields,
|
|
71
|
+
exclude_none=True,
|
|
72
|
+
)
|
|
73
|
+
# set to None if topic_modeling_pending_jobs (nullable) is None
|
|
74
|
+
# and model_fields_set contains the field
|
|
75
|
+
if self.topic_modeling_pending_jobs is None and "topic_modeling_pending_jobs" in self.model_fields_set:
|
|
76
|
+
_dict['topicModelingPendingJobs'] = None
|
|
77
|
+
|
|
78
|
+
# set to None if test_validation_pending_jobs (nullable) is None
|
|
79
|
+
# and model_fields_set contains the field
|
|
80
|
+
if self.test_validation_pending_jobs is None and "test_validation_pending_jobs" in self.model_fields_set:
|
|
81
|
+
_dict['testValidationPendingJobs'] = None
|
|
82
|
+
|
|
83
|
+
# set to None if failure_clustering_pending_jobs (nullable) is None
|
|
84
|
+
# and model_fields_set contains the field
|
|
85
|
+
if self.failure_clustering_pending_jobs is None and "failure_clustering_pending_jobs" in self.model_fields_set:
|
|
86
|
+
_dict['failureClusteringPendingJobs'] = None
|
|
87
|
+
|
|
88
|
+
return _dict
|
|
89
|
+
|
|
90
|
+
@classmethod
|
|
91
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
92
|
+
"""Create an instance of V1Stats from a dict"""
|
|
93
|
+
if obj is None:
|
|
94
|
+
return None
|
|
95
|
+
|
|
96
|
+
if not isinstance(obj, dict):
|
|
97
|
+
return cls.model_validate(obj)
|
|
98
|
+
|
|
99
|
+
_obj = cls.model_validate({
|
|
100
|
+
"topicModelingPendingJobs": obj.get("topicModelingPendingJobs"),
|
|
101
|
+
"testValidationPendingJobs": obj.get("testValidationPendingJobs"),
|
|
102
|
+
"failureClusteringPendingJobs": obj.get("failureClusteringPendingJobs")
|
|
103
|
+
})
|
|
104
|
+
return _obj
|
|
105
|
+
|
|
106
|
+
|
|
@@ -35,6 +35,7 @@ class V1WorkflowNodeType(str, Enum):
|
|
|
35
35
|
WORKFLOW_NODE_TYPE_MARGINAL_ANALYSIS = 'WORKFLOW_NODE_TYPE_MARGINAL_ANALYSIS'
|
|
36
36
|
WORKFLOW_NODE_TYPE_VALIDATION = 'WORKFLOW_NODE_TYPE_VALIDATION'
|
|
37
37
|
WORKFLOW_NODE_TYPE_ADVERSARIAL_INPUTS = 'WORKFLOW_NODE_TYPE_ADVERSARIAL_INPUTS'
|
|
38
|
+
WORKFLOW_NODE_TYPE_FAILURE_CLUSTERING = 'WORKFLOW_NODE_TYPE_FAILURE_CLUSTERING'
|
|
38
39
|
|
|
39
40
|
@classmethod
|
|
40
41
|
def from_json(cls, json_str: str) -> Self:
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ai/h2o/eval_studio/v1/insight.proto
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: version not set
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import json
|
|
17
|
+
from enum import Enum
|
|
18
|
+
from typing_extensions import Self
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class V1WorkflowResultArtifactType(str, Enum):
|
|
22
|
+
"""
|
|
23
|
+
WorkflowResultArtifactType enum representing the types of artifacts that can be produced by a Workflow result.
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
"""
|
|
27
|
+
allowed enum values
|
|
28
|
+
"""
|
|
29
|
+
WORKFLOW_RESULT_ARTIFACT_TYPE_UNSPECIFIED = 'WORKFLOW_RESULT_ARTIFACT_TYPE_UNSPECIFIED'
|
|
30
|
+
WORKFLOW_RESULT_ARTIFACT_TYPE_REPORT = 'WORKFLOW_RESULT_ARTIFACT_TYPE_REPORT'
|
|
31
|
+
WORKFLOW_RESULT_ARTIFACT_TYPE_CORPUS_PATCH = 'WORKFLOW_RESULT_ARTIFACT_TYPE_CORPUS_PATCH'
|
|
32
|
+
WORKFLOW_RESULT_ARTIFACT_TYPE_SYSTEM_PROMPT_PATCH = 'WORKFLOW_RESULT_ARTIFACT_TYPE_SYSTEM_PROMPT_PATCH'
|
|
33
|
+
WORKFLOW_RESULT_ARTIFACT_TYPE_GUARDRAIL_CONFIG = 'WORKFLOW_RESULT_ARTIFACT_TYPE_GUARDRAIL_CONFIG'
|
|
34
|
+
|
|
35
|
+
@classmethod
|
|
36
|
+
def from_json(cls, json_str: str) -> Self:
|
|
37
|
+
"""Create an instance of V1WorkflowResultArtifactType from a JSON string"""
|
|
38
|
+
return cls(json.loads(json_str))
|
|
39
|
+
|
|
40
|
+
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ai/h2o/eval_studio/v1/insight.proto
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: version not set
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import json
|
|
17
|
+
from enum import Enum
|
|
18
|
+
from typing_extensions import Self
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class V1WorkflowResultReportFormat(str, Enum):
|
|
22
|
+
"""
|
|
23
|
+
V1WorkflowResultReportFormat
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
"""
|
|
27
|
+
allowed enum values
|
|
28
|
+
"""
|
|
29
|
+
WORKFLOW_RESULT_REPORT_FORMAT_UNSPECIFIED = 'WORKFLOW_RESULT_REPORT_FORMAT_UNSPECIFIED'
|
|
30
|
+
WORKFLOW_RESULT_REPORT_FORMAT_HTML = 'WORKFLOW_RESULT_REPORT_FORMAT_HTML'
|
|
31
|
+
|
|
32
|
+
@classmethod
|
|
33
|
+
def from_json(cls, json_str: str) -> Self:
|
|
34
|
+
"""Create an instance of V1WorkflowResultReportFormat from a JSON string"""
|
|
35
|
+
return cls(json.loads(json_str))
|
|
36
|
+
|
|
37
|
+
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ai/h2o/eval_studio/v1/insight.proto
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: version not set
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from eval_studio_client.api.models.v1_role import V1Role
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class WorkflowServiceRevokeWorkflowAccessRequest(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
WorkflowServiceRevokeWorkflowAccessRequest
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
subject: Optional[StrictStr] = Field(default=None, description="Required. The subject to revoke access from.")
|
|
31
|
+
role: Optional[V1Role] = None
|
|
32
|
+
__properties: ClassVar[List[str]] = ["subject", "role"]
|
|
33
|
+
|
|
34
|
+
model_config = ConfigDict(
|
|
35
|
+
populate_by_name=True,
|
|
36
|
+
validate_assignment=True,
|
|
37
|
+
protected_namespaces=(),
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def to_str(self) -> str:
|
|
42
|
+
"""Returns the string representation of the model using alias"""
|
|
43
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
44
|
+
|
|
45
|
+
def to_json(self) -> str:
|
|
46
|
+
"""Returns the JSON representation of the model using alias"""
|
|
47
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
48
|
+
return json.dumps(self.to_dict())
|
|
49
|
+
|
|
50
|
+
@classmethod
|
|
51
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
52
|
+
"""Create an instance of WorkflowServiceRevokeWorkflowAccessRequest from a JSON string"""
|
|
53
|
+
return cls.from_dict(json.loads(json_str))
|
|
54
|
+
|
|
55
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
56
|
+
"""Return the dictionary representation of the model using alias.
|
|
57
|
+
|
|
58
|
+
This has the following differences from calling pydantic's
|
|
59
|
+
`self.model_dump(by_alias=True)`:
|
|
60
|
+
|
|
61
|
+
* `None` is only added to the output dict for nullable fields that
|
|
62
|
+
were set at model initialization. Other fields with value `None`
|
|
63
|
+
are ignored.
|
|
64
|
+
"""
|
|
65
|
+
excluded_fields: Set[str] = set([
|
|
66
|
+
])
|
|
67
|
+
|
|
68
|
+
_dict = self.model_dump(
|
|
69
|
+
by_alias=True,
|
|
70
|
+
exclude=excluded_fields,
|
|
71
|
+
exclude_none=True,
|
|
72
|
+
)
|
|
73
|
+
return _dict
|
|
74
|
+
|
|
75
|
+
@classmethod
|
|
76
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
77
|
+
"""Create an instance of WorkflowServiceRevokeWorkflowAccessRequest from a dict"""
|
|
78
|
+
if obj is None:
|
|
79
|
+
return None
|
|
80
|
+
|
|
81
|
+
if not isinstance(obj, dict):
|
|
82
|
+
return cls.model_validate(obj)
|
|
83
|
+
|
|
84
|
+
_obj = cls.model_validate({
|
|
85
|
+
"subject": obj.get("subject"),
|
|
86
|
+
"role": obj.get("role")
|
|
87
|
+
})
|
|
88
|
+
return _obj
|
|
89
|
+
|
|
90
|
+
|
|
@@ -56,18 +56,46 @@ class TestDashboardServiceApi(unittest.TestCase):
|
|
|
56
56
|
"""
|
|
57
57
|
pass
|
|
58
58
|
|
|
59
|
+
def test_dashboard_service_grant_dashboard_access(self) -> None:
|
|
60
|
+
"""Test case for dashboard_service_grant_dashboard_access
|
|
61
|
+
|
|
62
|
+
GrantDashboardAccess grants access to a Dashboard to a subject with a specified role.
|
|
63
|
+
"""
|
|
64
|
+
pass
|
|
65
|
+
|
|
66
|
+
def test_dashboard_service_list_dashboard_access(self) -> None:
|
|
67
|
+
"""Test case for dashboard_service_list_dashboard_access
|
|
68
|
+
|
|
69
|
+
ListDashboardAccess lists access to a Dashboard.
|
|
70
|
+
"""
|
|
71
|
+
pass
|
|
72
|
+
|
|
59
73
|
def test_dashboard_service_list_dashboards(self) -> None:
|
|
60
74
|
"""Test case for dashboard_service_list_dashboards
|
|
61
75
|
|
|
62
76
|
"""
|
|
63
77
|
pass
|
|
64
78
|
|
|
79
|
+
def test_dashboard_service_list_dashboards_shared_with_me(self) -> None:
|
|
80
|
+
"""Test case for dashboard_service_list_dashboards_shared_with_me
|
|
81
|
+
|
|
82
|
+
ListDashboardsSharedWithMe lists Dashboards shared with the authenticated user.
|
|
83
|
+
"""
|
|
84
|
+
pass
|
|
85
|
+
|
|
65
86
|
def test_dashboard_service_list_most_recent_dashboards(self) -> None:
|
|
66
87
|
"""Test case for dashboard_service_list_most_recent_dashboards
|
|
67
88
|
|
|
68
89
|
"""
|
|
69
90
|
pass
|
|
70
91
|
|
|
92
|
+
def test_dashboard_service_revoke_dashboard_access(self) -> None:
|
|
93
|
+
"""Test case for dashboard_service_revoke_dashboard_access
|
|
94
|
+
|
|
95
|
+
RevokeDashboardAccess revokes access to a Dashboard from a subject.
|
|
96
|
+
"""
|
|
97
|
+
pass
|
|
98
|
+
|
|
71
99
|
def test_dashboard_service_update_dashboard(self) -> None:
|
|
72
100
|
"""Test case for dashboard_service_update_dashboard
|
|
73
101
|
|
|
@@ -74,6 +74,12 @@ class TestTestServiceApi(unittest.TestCase):
|
|
|
74
74
|
"""
|
|
75
75
|
pass
|
|
76
76
|
|
|
77
|
+
def test_test_service_grant_test_access(self) -> None:
|
|
78
|
+
"""Test case for test_service_grant_test_access
|
|
79
|
+
|
|
80
|
+
"""
|
|
81
|
+
pass
|
|
82
|
+
|
|
77
83
|
def test_test_service_import_test_cases_from_library(self) -> None:
|
|
78
84
|
"""Test case for test_service_import_test_cases_from_library
|
|
79
85
|
|
|
@@ -86,6 +92,12 @@ class TestTestServiceApi(unittest.TestCase):
|
|
|
86
92
|
"""
|
|
87
93
|
pass
|
|
88
94
|
|
|
95
|
+
def test_test_service_list_test_access(self) -> None:
|
|
96
|
+
"""Test case for test_service_list_test_access
|
|
97
|
+
|
|
98
|
+
"""
|
|
99
|
+
pass
|
|
100
|
+
|
|
89
101
|
def test_test_service_list_test_case_library_items(self) -> None:
|
|
90
102
|
"""Test case for test_service_list_test_case_library_items
|
|
91
103
|
|
|
@@ -98,6 +110,12 @@ class TestTestServiceApi(unittest.TestCase):
|
|
|
98
110
|
"""
|
|
99
111
|
pass
|
|
100
112
|
|
|
113
|
+
def test_test_service_list_tests_shared_with_me(self) -> None:
|
|
114
|
+
"""Test case for test_service_list_tests_shared_with_me
|
|
115
|
+
|
|
116
|
+
"""
|
|
117
|
+
pass
|
|
118
|
+
|
|
101
119
|
def test_test_service_perturb_test(self) -> None:
|
|
102
120
|
"""Test case for test_service_perturb_test
|
|
103
121
|
|
|
@@ -110,6 +128,12 @@ class TestTestServiceApi(unittest.TestCase):
|
|
|
110
128
|
"""
|
|
111
129
|
pass
|
|
112
130
|
|
|
131
|
+
def test_test_service_revoke_test_access(self) -> None:
|
|
132
|
+
"""Test case for test_service_revoke_test_access
|
|
133
|
+
|
|
134
|
+
"""
|
|
135
|
+
pass
|
|
136
|
+
|
|
113
137
|
def test_test_service_update_test(self) -> None:
|
|
114
138
|
"""Test case for test_service_update_test
|
|
115
139
|
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
ai/h2o/eval_studio/v1/insight.proto
|
|
5
|
+
|
|
6
|
+
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: version not set
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
import unittest
|
|
16
|
+
|
|
17
|
+
from eval_studio_client.api.models.test_service_grant_test_access_request import TestServiceGrantTestAccessRequest
|
|
18
|
+
|
|
19
|
+
class TestTestServiceGrantTestAccessRequest(unittest.TestCase):
|
|
20
|
+
"""TestServiceGrantTestAccessRequest unit test stubs"""
|
|
21
|
+
|
|
22
|
+
def setUp(self):
|
|
23
|
+
pass
|
|
24
|
+
|
|
25
|
+
def tearDown(self):
|
|
26
|
+
pass
|
|
27
|
+
|
|
28
|
+
def make_instance(self, include_optional) -> TestServiceGrantTestAccessRequest:
|
|
29
|
+
"""Test TestServiceGrantTestAccessRequest
|
|
30
|
+
include_option is a boolean, when False only required
|
|
31
|
+
params are included, when True both required and
|
|
32
|
+
optional params are included """
|
|
33
|
+
# uncomment below to create an instance of `TestServiceGrantTestAccessRequest`
|
|
34
|
+
"""
|
|
35
|
+
model = TestServiceGrantTestAccessRequest()
|
|
36
|
+
if include_optional:
|
|
37
|
+
return TestServiceGrantTestAccessRequest(
|
|
38
|
+
subject = '',
|
|
39
|
+
role = 'ROLE_UNSPECIFIED'
|
|
40
|
+
)
|
|
41
|
+
else:
|
|
42
|
+
return TestServiceGrantTestAccessRequest(
|
|
43
|
+
)
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
def testTestServiceGrantTestAccessRequest(self):
|
|
47
|
+
"""Test TestServiceGrantTestAccessRequest"""
|
|
48
|
+
# inst_req_only = self.make_instance(include_optional=False)
|
|
49
|
+
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
50
|
+
|
|
51
|
+
if __name__ == '__main__':
|
|
52
|
+
unittest.main()
|