vellum-ai 0.3.21__py3-none-any.whl → 0.3.23__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- vellum/__init__.py +48 -0
- vellum/core/client_wrapper.py +1 -1
- vellum/resources/test_suite_runs/client.py +14 -0
- vellum/terraform/__init__.py +26 -0
- vellum/terraform/_jsii/__init__.py +27 -0
- vellum/terraform/_jsii/vellum-ai_vellum@0.0.0.jsii.tgz +0 -0
- vellum/terraform/constraints.json +4 -0
- vellum/terraform/data_vellum_document_index/__init__.py +409 -0
- vellum/terraform/document_index/__init__.py +490 -0
- vellum/terraform/provider/__init__.py +237 -0
- vellum/terraform/py.typed +1 -0
- vellum/terraform/versions.json +3 -0
- vellum/types/__init__.py +50 -0
- vellum/types/external_test_case_execution.py +35 -0
- vellum/types/external_test_case_execution_request.py +35 -0
- vellum/types/fulfilled_workflow_node_result_event.py +1 -1
- vellum/types/named_test_case_chat_history_variable_value.py +35 -0
- vellum/types/named_test_case_chat_history_variable_value_request.py +5 -1
- vellum/types/named_test_case_error_variable_value.py +35 -0
- vellum/types/named_test_case_error_variable_value_request.py +5 -1
- vellum/types/named_test_case_json_variable_value.py +34 -0
- vellum/types/named_test_case_json_variable_value_request.py +5 -1
- vellum/types/named_test_case_number_variable_value.py +34 -0
- vellum/types/named_test_case_number_variable_value_request.py +5 -1
- vellum/types/named_test_case_search_results_variable_value.py +35 -0
- vellum/types/named_test_case_search_results_variable_value_request.py +5 -1
- vellum/types/named_test_case_string_variable_value.py +34 -0
- vellum/types/named_test_case_string_variable_value_request.py +5 -1
- vellum/types/named_test_case_variable_value.py +82 -0
- vellum/types/prompt_template_block.py +2 -0
- vellum/types/prompt_template_block_request.py +2 -0
- vellum/types/prompt_template_block_state.py +22 -0
- vellum/types/sandbox_scenario.py +4 -0
- vellum/types/test_case_chat_history_variable_value.py +5 -0
- vellum/types/test_case_error_variable_value.py +5 -0
- vellum/types/test_case_json_variable_value.py +5 -0
- vellum/types/test_case_number_variable_value.py +5 -0
- vellum/types/test_case_search_results_variable_value.py +5 -0
- vellum/types/test_case_string_variable_value.py +5 -0
- vellum/types/test_suite_run_exec_config.py +14 -1
- vellum/types/test_suite_run_exec_config_request.py +14 -1
- vellum/types/test_suite_run_execution_chat_history_output.py +6 -1
- vellum/types/test_suite_run_execution_error_output.py +6 -1
- vellum/types/test_suite_run_execution_json_output.py +6 -1
- vellum/types/test_suite_run_execution_metric_definition.py +31 -0
- vellum/types/test_suite_run_execution_metric_result.py +3 -0
- vellum/types/test_suite_run_execution_number_output.py +6 -1
- vellum/types/test_suite_run_execution_search_results_output.py +6 -1
- vellum/types/test_suite_run_execution_string_output.py +6 -1
- vellum/types/test_suite_run_external_exec_config.py +38 -0
- vellum/types/test_suite_run_external_exec_config_data.py +33 -0
- vellum/types/test_suite_run_external_exec_config_data_request.py +33 -0
- vellum/types/test_suite_run_external_exec_config_request.py +38 -0
- vellum/types/test_suite_run_external_exec_config_type_enum.py +5 -0
- {vellum_ai-0.3.21.dist-info → vellum_ai-0.3.23.dist-info}/METADATA +2 -1
- {vellum_ai-0.3.21.dist-info → vellum_ai-0.3.23.dist-info}/RECORD +58 -33
- {vellum_ai-0.3.21.dist-info → vellum_ai-0.3.23.dist-info}/LICENSE +0 -0
- {vellum_ai-0.3.21.dist-info → vellum_ai-0.3.23.dist-info}/WHEEL +0 -0
@@ -12,8 +12,12 @@ except ImportError:
|
|
12
12
|
|
13
13
|
|
14
14
|
class NamedTestCaseNumberVariableValueRequest(pydantic.BaseModel):
|
15
|
-
|
15
|
+
"""
|
16
|
+
Named Test Case value that is of type NUMBER
|
17
|
+
"""
|
18
|
+
|
16
19
|
value: typing.Optional[float] = None
|
20
|
+
name: str
|
17
21
|
|
18
22
|
def json(self, **kwargs: typing.Any) -> str:
|
19
23
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
import datetime as dt
|
4
|
+
import typing
|
5
|
+
|
6
|
+
from ..core.datetime_utils import serialize_datetime
|
7
|
+
from .search_result import SearchResult
|
8
|
+
|
9
|
+
try:
|
10
|
+
import pydantic.v1 as pydantic # type: ignore
|
11
|
+
except ImportError:
|
12
|
+
import pydantic # type: ignore
|
13
|
+
|
14
|
+
|
15
|
+
class NamedTestCaseSearchResultsVariableValue(pydantic.BaseModel):
|
16
|
+
"""
|
17
|
+
Named Test Case value that is of type SEARCH_RESULTS
|
18
|
+
"""
|
19
|
+
|
20
|
+
value: typing.Optional[typing.List[SearchResult]] = None
|
21
|
+
name: str
|
22
|
+
|
23
|
+
def json(self, **kwargs: typing.Any) -> str:
|
24
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
25
|
+
return super().json(**kwargs_with_defaults)
|
26
|
+
|
27
|
+
def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
|
28
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
29
|
+
return super().dict(**kwargs_with_defaults)
|
30
|
+
|
31
|
+
class Config:
|
32
|
+
frozen = True
|
33
|
+
smart_union = True
|
34
|
+
extra = pydantic.Extra.allow
|
35
|
+
json_encoders = {dt.datetime: serialize_datetime}
|
@@ -13,8 +13,12 @@ except ImportError:
|
|
13
13
|
|
14
14
|
|
15
15
|
class NamedTestCaseSearchResultsVariableValueRequest(pydantic.BaseModel):
|
16
|
-
|
16
|
+
"""
|
17
|
+
Named Test Case value that is of type SEARCH_RESULTS
|
18
|
+
"""
|
19
|
+
|
17
20
|
value: typing.Optional[typing.List[SearchResultRequest]] = None
|
21
|
+
name: str
|
18
22
|
|
19
23
|
def json(self, **kwargs: typing.Any) -> str:
|
20
24
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
import datetime as dt
|
4
|
+
import typing
|
5
|
+
|
6
|
+
from ..core.datetime_utils import serialize_datetime
|
7
|
+
|
8
|
+
try:
|
9
|
+
import pydantic.v1 as pydantic # type: ignore
|
10
|
+
except ImportError:
|
11
|
+
import pydantic # type: ignore
|
12
|
+
|
13
|
+
|
14
|
+
class NamedTestCaseStringVariableValue(pydantic.BaseModel):
|
15
|
+
"""
|
16
|
+
Named Test Case value that is of type STRING
|
17
|
+
"""
|
18
|
+
|
19
|
+
value: typing.Optional[str] = None
|
20
|
+
name: str
|
21
|
+
|
22
|
+
def json(self, **kwargs: typing.Any) -> str:
|
23
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
24
|
+
return super().json(**kwargs_with_defaults)
|
25
|
+
|
26
|
+
def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
|
27
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
28
|
+
return super().dict(**kwargs_with_defaults)
|
29
|
+
|
30
|
+
class Config:
|
31
|
+
frozen = True
|
32
|
+
smart_union = True
|
33
|
+
extra = pydantic.Extra.allow
|
34
|
+
json_encoders = {dt.datetime: serialize_datetime}
|
@@ -12,8 +12,12 @@ except ImportError:
|
|
12
12
|
|
13
13
|
|
14
14
|
class NamedTestCaseStringVariableValueRequest(pydantic.BaseModel):
|
15
|
-
|
15
|
+
"""
|
16
|
+
Named Test Case value that is of type STRING
|
17
|
+
"""
|
18
|
+
|
16
19
|
value: typing.Optional[str] = None
|
20
|
+
name: str
|
17
21
|
|
18
22
|
def json(self, **kwargs: typing.Any) -> str:
|
19
23
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -0,0 +1,82 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
from __future__ import annotations
|
4
|
+
|
5
|
+
import typing
|
6
|
+
|
7
|
+
from .named_test_case_chat_history_variable_value import NamedTestCaseChatHistoryVariableValue
|
8
|
+
from .named_test_case_error_variable_value import NamedTestCaseErrorVariableValue
|
9
|
+
from .named_test_case_json_variable_value import NamedTestCaseJsonVariableValue
|
10
|
+
from .named_test_case_number_variable_value import NamedTestCaseNumberVariableValue
|
11
|
+
from .named_test_case_search_results_variable_value import NamedTestCaseSearchResultsVariableValue
|
12
|
+
from .named_test_case_string_variable_value import NamedTestCaseStringVariableValue
|
13
|
+
|
14
|
+
|
15
|
+
class NamedTestCaseVariableValue_String(NamedTestCaseStringVariableValue):
|
16
|
+
type: typing.Literal["STRING"] = "STRING"
|
17
|
+
|
18
|
+
class Config:
|
19
|
+
frozen = True
|
20
|
+
smart_union = True
|
21
|
+
allow_population_by_field_name = True
|
22
|
+
populate_by_name = True
|
23
|
+
|
24
|
+
|
25
|
+
class NamedTestCaseVariableValue_Number(NamedTestCaseNumberVariableValue):
|
26
|
+
type: typing.Literal["NUMBER"] = "NUMBER"
|
27
|
+
|
28
|
+
class Config:
|
29
|
+
frozen = True
|
30
|
+
smart_union = True
|
31
|
+
allow_population_by_field_name = True
|
32
|
+
populate_by_name = True
|
33
|
+
|
34
|
+
|
35
|
+
class NamedTestCaseVariableValue_Json(NamedTestCaseJsonVariableValue):
|
36
|
+
type: typing.Literal["JSON"] = "JSON"
|
37
|
+
|
38
|
+
class Config:
|
39
|
+
frozen = True
|
40
|
+
smart_union = True
|
41
|
+
allow_population_by_field_name = True
|
42
|
+
populate_by_name = True
|
43
|
+
|
44
|
+
|
45
|
+
class NamedTestCaseVariableValue_ChatHistory(NamedTestCaseChatHistoryVariableValue):
|
46
|
+
type: typing.Literal["CHAT_HISTORY"] = "CHAT_HISTORY"
|
47
|
+
|
48
|
+
class Config:
|
49
|
+
frozen = True
|
50
|
+
smart_union = True
|
51
|
+
allow_population_by_field_name = True
|
52
|
+
populate_by_name = True
|
53
|
+
|
54
|
+
|
55
|
+
class NamedTestCaseVariableValue_SearchResults(NamedTestCaseSearchResultsVariableValue):
|
56
|
+
type: typing.Literal["SEARCH_RESULTS"] = "SEARCH_RESULTS"
|
57
|
+
|
58
|
+
class Config:
|
59
|
+
frozen = True
|
60
|
+
smart_union = True
|
61
|
+
allow_population_by_field_name = True
|
62
|
+
populate_by_name = True
|
63
|
+
|
64
|
+
|
65
|
+
class NamedTestCaseVariableValue_Error(NamedTestCaseErrorVariableValue):
|
66
|
+
type: typing.Literal["ERROR"] = "ERROR"
|
67
|
+
|
68
|
+
class Config:
|
69
|
+
frozen = True
|
70
|
+
smart_union = True
|
71
|
+
allow_population_by_field_name = True
|
72
|
+
populate_by_name = True
|
73
|
+
|
74
|
+
|
75
|
+
NamedTestCaseVariableValue = typing.Union[
|
76
|
+
NamedTestCaseVariableValue_String,
|
77
|
+
NamedTestCaseVariableValue_Number,
|
78
|
+
NamedTestCaseVariableValue_Json,
|
79
|
+
NamedTestCaseVariableValue_ChatHistory,
|
80
|
+
NamedTestCaseVariableValue_SearchResults,
|
81
|
+
NamedTestCaseVariableValue_Error,
|
82
|
+
]
|
@@ -7,6 +7,7 @@ import typing
|
|
7
7
|
|
8
8
|
from ..core.datetime_utils import serialize_datetime
|
9
9
|
from .block_type_enum import BlockTypeEnum
|
10
|
+
from .prompt_template_block_state import PromptTemplateBlockState
|
10
11
|
|
11
12
|
try:
|
12
13
|
import pydantic.v1 as pydantic # type: ignore
|
@@ -18,6 +19,7 @@ class PromptTemplateBlock(pydantic.BaseModel):
|
|
18
19
|
id: str
|
19
20
|
block_type: BlockTypeEnum
|
20
21
|
properties: PromptTemplateBlockProperties
|
22
|
+
state: typing.Optional[PromptTemplateBlockState] = None
|
21
23
|
|
22
24
|
def json(self, **kwargs: typing.Any) -> str:
|
23
25
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -7,6 +7,7 @@ import typing
|
|
7
7
|
|
8
8
|
from ..core.datetime_utils import serialize_datetime
|
9
9
|
from .block_type_enum import BlockTypeEnum
|
10
|
+
from .prompt_template_block_state import PromptTemplateBlockState
|
10
11
|
|
11
12
|
try:
|
12
13
|
import pydantic.v1 as pydantic # type: ignore
|
@@ -18,6 +19,7 @@ class PromptTemplateBlockRequest(pydantic.BaseModel):
|
|
18
19
|
id: str
|
19
20
|
block_type: BlockTypeEnum
|
20
21
|
properties: PromptTemplateBlockPropertiesRequest
|
22
|
+
state: typing.Optional[PromptTemplateBlockState] = None
|
21
23
|
|
22
24
|
def json(self, **kwargs: typing.Any) -> str:
|
23
25
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
import enum
|
4
|
+
import typing
|
5
|
+
|
6
|
+
T_Result = typing.TypeVar("T_Result")
|
7
|
+
|
8
|
+
|
9
|
+
class PromptTemplateBlockState(str, enum.Enum):
|
10
|
+
"""
|
11
|
+
- `ENABLED` - ENABLED
|
12
|
+
- `DISABLED` - DISABLED
|
13
|
+
"""
|
14
|
+
|
15
|
+
ENABLED = "ENABLED"
|
16
|
+
DISABLED = "DISABLED"
|
17
|
+
|
18
|
+
def visit(self, enabled: typing.Callable[[], T_Result], disabled: typing.Callable[[], T_Result]) -> T_Result:
|
19
|
+
if self is PromptTemplateBlockState.ENABLED:
|
20
|
+
return enabled()
|
21
|
+
if self is PromptTemplateBlockState.DISABLED:
|
22
|
+
return disabled()
|
vellum/types/sandbox_scenario.py
CHANGED
@@ -13,7 +13,12 @@ except ImportError:
|
|
13
13
|
|
14
14
|
|
15
15
|
class TestCaseChatHistoryVariableValue(pydantic.BaseModel):
|
16
|
+
"""
|
17
|
+
A chat history value for a variable in a Test Case.
|
18
|
+
"""
|
19
|
+
|
16
20
|
variable_id: str
|
21
|
+
name: str
|
17
22
|
value: typing.Optional[typing.List[ChatMessage]] = None
|
18
23
|
|
19
24
|
def json(self, **kwargs: typing.Any) -> str:
|
@@ -13,7 +13,12 @@ except ImportError:
|
|
13
13
|
|
14
14
|
|
15
15
|
class TestCaseErrorVariableValue(pydantic.BaseModel):
|
16
|
+
"""
|
17
|
+
An error value for a variable in a Test Case.
|
18
|
+
"""
|
19
|
+
|
16
20
|
variable_id: str
|
21
|
+
name: str
|
17
22
|
value: typing.Optional[VellumError] = None
|
18
23
|
|
19
24
|
def json(self, **kwargs: typing.Any) -> str:
|
@@ -12,7 +12,12 @@ except ImportError:
|
|
12
12
|
|
13
13
|
|
14
14
|
class TestCaseJsonVariableValue(pydantic.BaseModel):
|
15
|
+
"""
|
16
|
+
A JSON value for a variable in a Test Case.
|
17
|
+
"""
|
18
|
+
|
15
19
|
variable_id: str
|
20
|
+
name: str
|
16
21
|
value: typing.Optional[typing.Dict[str, typing.Any]] = None
|
17
22
|
|
18
23
|
def json(self, **kwargs: typing.Any) -> str:
|
@@ -12,7 +12,12 @@ except ImportError:
|
|
12
12
|
|
13
13
|
|
14
14
|
class TestCaseNumberVariableValue(pydantic.BaseModel):
|
15
|
+
"""
|
16
|
+
A numerical value for a variable in a Test Case.
|
17
|
+
"""
|
18
|
+
|
15
19
|
variable_id: str
|
20
|
+
name: str
|
16
21
|
value: typing.Optional[float] = None
|
17
22
|
|
18
23
|
def json(self, **kwargs: typing.Any) -> str:
|
@@ -13,7 +13,12 @@ except ImportError:
|
|
13
13
|
|
14
14
|
|
15
15
|
class TestCaseSearchResultsVariableValue(pydantic.BaseModel):
|
16
|
+
"""
|
17
|
+
A search results value for a variable in a Test Case.
|
18
|
+
"""
|
19
|
+
|
16
20
|
variable_id: str
|
21
|
+
name: str
|
17
22
|
value: typing.Optional[typing.List[SearchResult]] = None
|
18
23
|
|
19
24
|
def json(self, **kwargs: typing.Any) -> str:
|
@@ -12,7 +12,12 @@ except ImportError:
|
|
12
12
|
|
13
13
|
|
14
14
|
class TestCaseStringVariableValue(pydantic.BaseModel):
|
15
|
+
"""
|
16
|
+
A string value for a variable in a Test Case.
|
17
|
+
"""
|
18
|
+
|
15
19
|
variable_id: str
|
20
|
+
name: str
|
16
21
|
value: typing.Optional[str] = None
|
17
22
|
|
18
23
|
def json(self, **kwargs: typing.Any) -> str:
|
@@ -5,6 +5,7 @@ from __future__ import annotations
|
|
5
5
|
import typing
|
6
6
|
|
7
7
|
from .test_suite_run_deployment_release_tag_exec_config import TestSuiteRunDeploymentReleaseTagExecConfig
|
8
|
+
from .test_suite_run_external_exec_config import TestSuiteRunExternalExecConfig
|
8
9
|
from .test_suite_run_workflow_release_tag_exec_config import TestSuiteRunWorkflowReleaseTagExecConfig
|
9
10
|
|
10
11
|
|
@@ -28,6 +29,18 @@ class TestSuiteRunExecConfig_WorkflowReleaseTag(TestSuiteRunWorkflowReleaseTagEx
|
|
28
29
|
populate_by_name = True
|
29
30
|
|
30
31
|
|
32
|
+
class TestSuiteRunExecConfig_External(TestSuiteRunExternalExecConfig):
|
33
|
+
type: typing.Literal["EXTERNAL"] = "EXTERNAL"
|
34
|
+
|
35
|
+
class Config:
|
36
|
+
frozen = True
|
37
|
+
smart_union = True
|
38
|
+
allow_population_by_field_name = True
|
39
|
+
populate_by_name = True
|
40
|
+
|
41
|
+
|
31
42
|
TestSuiteRunExecConfig = typing.Union[
|
32
|
-
TestSuiteRunExecConfig_DeploymentReleaseTag,
|
43
|
+
TestSuiteRunExecConfig_DeploymentReleaseTag,
|
44
|
+
TestSuiteRunExecConfig_WorkflowReleaseTag,
|
45
|
+
TestSuiteRunExecConfig_External,
|
33
46
|
]
|
@@ -5,6 +5,7 @@ from __future__ import annotations
|
|
5
5
|
import typing
|
6
6
|
|
7
7
|
from .test_suite_run_deployment_release_tag_exec_config_request import TestSuiteRunDeploymentReleaseTagExecConfigRequest
|
8
|
+
from .test_suite_run_external_exec_config_request import TestSuiteRunExternalExecConfigRequest
|
8
9
|
from .test_suite_run_workflow_release_tag_exec_config_request import TestSuiteRunWorkflowReleaseTagExecConfigRequest
|
9
10
|
|
10
11
|
|
@@ -28,6 +29,18 @@ class TestSuiteRunExecConfigRequest_WorkflowReleaseTag(TestSuiteRunWorkflowRelea
|
|
28
29
|
populate_by_name = True
|
29
30
|
|
30
31
|
|
32
|
+
class TestSuiteRunExecConfigRequest_External(TestSuiteRunExternalExecConfigRequest):
|
33
|
+
type: typing.Literal["EXTERNAL"] = "EXTERNAL"
|
34
|
+
|
35
|
+
class Config:
|
36
|
+
frozen = True
|
37
|
+
smart_union = True
|
38
|
+
allow_population_by_field_name = True
|
39
|
+
populate_by_name = True
|
40
|
+
|
41
|
+
|
31
42
|
TestSuiteRunExecConfigRequest = typing.Union[
|
32
|
-
TestSuiteRunExecConfigRequest_DeploymentReleaseTag,
|
43
|
+
TestSuiteRunExecConfigRequest_DeploymentReleaseTag,
|
44
|
+
TestSuiteRunExecConfigRequest_WorkflowReleaseTag,
|
45
|
+
TestSuiteRunExecConfigRequest_External,
|
33
46
|
]
|
@@ -13,8 +13,13 @@ except ImportError:
|
|
13
13
|
|
14
14
|
|
15
15
|
class TestSuiteRunExecutionChatHistoryOutput(pydantic.BaseModel):
|
16
|
-
|
16
|
+
"""
|
17
|
+
Execution output of an entity evaluated during a Test Suite Run that is of type CHAT_HISTORY
|
18
|
+
"""
|
19
|
+
|
20
|
+
name: str
|
17
21
|
value: typing.Optional[typing.List[ChatMessage]] = None
|
22
|
+
output_variable_id: str
|
18
23
|
|
19
24
|
def json(self, **kwargs: typing.Any) -> str:
|
20
25
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -13,8 +13,13 @@ except ImportError:
|
|
13
13
|
|
14
14
|
|
15
15
|
class TestSuiteRunExecutionErrorOutput(pydantic.BaseModel):
|
16
|
-
|
16
|
+
"""
|
17
|
+
Execution output of an entity evaluated during a Test Suite Run that is of type ERROR
|
18
|
+
"""
|
19
|
+
|
20
|
+
name: str
|
17
21
|
value: typing.Optional[VellumError] = None
|
22
|
+
output_variable_id: str
|
18
23
|
|
19
24
|
def json(self, **kwargs: typing.Any) -> str:
|
20
25
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -12,8 +12,13 @@ except ImportError:
|
|
12
12
|
|
13
13
|
|
14
14
|
class TestSuiteRunExecutionJsonOutput(pydantic.BaseModel):
|
15
|
-
|
15
|
+
"""
|
16
|
+
Execution output of an entity evaluated during a Test Suite Run that is of type JSON
|
17
|
+
"""
|
18
|
+
|
19
|
+
name: str
|
16
20
|
value: typing.Optional[typing.Dict[str, typing.Any]] = None
|
21
|
+
output_variable_id: str
|
17
22
|
|
18
23
|
def json(self, **kwargs: typing.Any) -> str:
|
19
24
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
import datetime as dt
|
4
|
+
import typing
|
5
|
+
|
6
|
+
from ..core.datetime_utils import serialize_datetime
|
7
|
+
|
8
|
+
try:
|
9
|
+
import pydantic.v1 as pydantic # type: ignore
|
10
|
+
except ImportError:
|
11
|
+
import pydantic # type: ignore
|
12
|
+
|
13
|
+
|
14
|
+
class TestSuiteRunExecutionMetricDefinition(pydantic.BaseModel):
|
15
|
+
id: typing.Optional[str] = None
|
16
|
+
label: typing.Optional[str] = None
|
17
|
+
name: typing.Optional[str] = None
|
18
|
+
|
19
|
+
def json(self, **kwargs: typing.Any) -> str:
|
20
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
21
|
+
return super().json(**kwargs_with_defaults)
|
22
|
+
|
23
|
+
def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
|
24
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
25
|
+
return super().dict(**kwargs_with_defaults)
|
26
|
+
|
27
|
+
class Config:
|
28
|
+
frozen = True
|
29
|
+
smart_union = True
|
30
|
+
extra = pydantic.Extra.allow
|
31
|
+
json_encoders = {dt.datetime: serialize_datetime}
|
@@ -4,6 +4,7 @@ import datetime as dt
|
|
4
4
|
import typing
|
5
5
|
|
6
6
|
from ..core.datetime_utils import serialize_datetime
|
7
|
+
from .test_suite_run_execution_metric_definition import TestSuiteRunExecutionMetricDefinition
|
7
8
|
from .test_suite_run_metric_output import TestSuiteRunMetricOutput
|
8
9
|
|
9
10
|
try:
|
@@ -15,6 +16,8 @@ except ImportError:
|
|
15
16
|
class TestSuiteRunExecutionMetricResult(pydantic.BaseModel):
|
16
17
|
metric_id: str
|
17
18
|
outputs: typing.List[TestSuiteRunMetricOutput]
|
19
|
+
metric_label: typing.Optional[str] = None
|
20
|
+
metric_definition: typing.Optional[TestSuiteRunExecutionMetricDefinition] = None
|
18
21
|
|
19
22
|
def json(self, **kwargs: typing.Any) -> str:
|
20
23
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -12,8 +12,13 @@ except ImportError:
|
|
12
12
|
|
13
13
|
|
14
14
|
class TestSuiteRunExecutionNumberOutput(pydantic.BaseModel):
|
15
|
-
|
15
|
+
"""
|
16
|
+
Execution output of an entity evaluated during a Test Suite Run that is of type NUMBER
|
17
|
+
"""
|
18
|
+
|
19
|
+
name: str
|
16
20
|
value: typing.Optional[float] = None
|
21
|
+
output_variable_id: str
|
17
22
|
|
18
23
|
def json(self, **kwargs: typing.Any) -> str:
|
19
24
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -13,8 +13,13 @@ except ImportError:
|
|
13
13
|
|
14
14
|
|
15
15
|
class TestSuiteRunExecutionSearchResultsOutput(pydantic.BaseModel):
|
16
|
-
|
16
|
+
"""
|
17
|
+
Execution output of an entity evaluated during a Test Suite Run that is of type SEARCH_RESULTS
|
18
|
+
"""
|
19
|
+
|
20
|
+
name: str
|
17
21
|
value: typing.Optional[typing.List[SearchResult]] = None
|
22
|
+
output_variable_id: str
|
18
23
|
|
19
24
|
def json(self, **kwargs: typing.Any) -> str:
|
20
25
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -12,8 +12,13 @@ except ImportError:
|
|
12
12
|
|
13
13
|
|
14
14
|
class TestSuiteRunExecutionStringOutput(pydantic.BaseModel):
|
15
|
-
|
15
|
+
"""
|
16
|
+
Execution output of an entity evaluated during a Test Suite Run that is of type STRING
|
17
|
+
"""
|
18
|
+
|
19
|
+
name: str
|
16
20
|
value: typing.Optional[str] = None
|
21
|
+
output_variable_id: str
|
17
22
|
|
18
23
|
def json(self, **kwargs: typing.Any) -> str:
|
19
24
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
import datetime as dt
|
4
|
+
import typing
|
5
|
+
|
6
|
+
from ..core.datetime_utils import serialize_datetime
|
7
|
+
from .test_suite_run_external_exec_config_data import TestSuiteRunExternalExecConfigData
|
8
|
+
|
9
|
+
try:
|
10
|
+
import pydantic.v1 as pydantic # type: ignore
|
11
|
+
except ImportError:
|
12
|
+
import pydantic # type: ignore
|
13
|
+
|
14
|
+
|
15
|
+
class TestSuiteRunExternalExecConfig(pydantic.BaseModel):
|
16
|
+
"""
|
17
|
+
Execution configuration for running a Vellum Test Suite against an external callable
|
18
|
+
"""
|
19
|
+
|
20
|
+
data: TestSuiteRunExternalExecConfigData
|
21
|
+
test_case_ids: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
|
22
|
+
"""
|
23
|
+
Optionally specify a subset of test case ids to run. If not provided, all test cases within the test suite will be run by default.
|
24
|
+
"""
|
25
|
+
|
26
|
+
def json(self, **kwargs: typing.Any) -> str:
|
27
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
28
|
+
return super().json(**kwargs_with_defaults)
|
29
|
+
|
30
|
+
def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
|
31
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
32
|
+
return super().dict(**kwargs_with_defaults)
|
33
|
+
|
34
|
+
class Config:
|
35
|
+
frozen = True
|
36
|
+
smart_union = True
|
37
|
+
extra = pydantic.Extra.allow
|
38
|
+
json_encoders = {dt.datetime: serialize_datetime}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
import datetime as dt
|
4
|
+
import typing
|
5
|
+
|
6
|
+
from ..core.datetime_utils import serialize_datetime
|
7
|
+
from .external_test_case_execution import ExternalTestCaseExecution
|
8
|
+
|
9
|
+
try:
|
10
|
+
import pydantic.v1 as pydantic # type: ignore
|
11
|
+
except ImportError:
|
12
|
+
import pydantic # type: ignore
|
13
|
+
|
14
|
+
|
15
|
+
class TestSuiteRunExternalExecConfigData(pydantic.BaseModel):
|
16
|
+
executions: typing.List[ExternalTestCaseExecution] = pydantic.Field()
|
17
|
+
"""
|
18
|
+
The executions of some callable external to Vellum whose outputs you would like to evaluate.
|
19
|
+
"""
|
20
|
+
|
21
|
+
def json(self, **kwargs: typing.Any) -> str:
|
22
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
23
|
+
return super().json(**kwargs_with_defaults)
|
24
|
+
|
25
|
+
def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
|
26
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
27
|
+
return super().dict(**kwargs_with_defaults)
|
28
|
+
|
29
|
+
class Config:
|
30
|
+
frozen = True
|
31
|
+
smart_union = True
|
32
|
+
extra = pydantic.Extra.allow
|
33
|
+
json_encoders = {dt.datetime: serialize_datetime}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
import datetime as dt
|
4
|
+
import typing
|
5
|
+
|
6
|
+
from ..core.datetime_utils import serialize_datetime
|
7
|
+
from .external_test_case_execution_request import ExternalTestCaseExecutionRequest
|
8
|
+
|
9
|
+
try:
|
10
|
+
import pydantic.v1 as pydantic # type: ignore
|
11
|
+
except ImportError:
|
12
|
+
import pydantic # type: ignore
|
13
|
+
|
14
|
+
|
15
|
+
class TestSuiteRunExternalExecConfigDataRequest(pydantic.BaseModel):
|
16
|
+
executions: typing.List[ExternalTestCaseExecutionRequest] = pydantic.Field()
|
17
|
+
"""
|
18
|
+
The executions of some callable external to Vellum whose outputs you would like to evaluate.
|
19
|
+
"""
|
20
|
+
|
21
|
+
def json(self, **kwargs: typing.Any) -> str:
|
22
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
23
|
+
return super().json(**kwargs_with_defaults)
|
24
|
+
|
25
|
+
def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
|
26
|
+
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
27
|
+
return super().dict(**kwargs_with_defaults)
|
28
|
+
|
29
|
+
class Config:
|
30
|
+
frozen = True
|
31
|
+
smart_union = True
|
32
|
+
extra = pydantic.Extra.allow
|
33
|
+
json_encoders = {dt.datetime: serialize_datetime}
|