vellum-ai 0.3.19__py3-none-any.whl → 0.3.21__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.
vellum/__init__.py CHANGED
@@ -148,6 +148,7 @@ from .types import (
148
148
  MetadataFilterConfigRequest,
149
149
  MetadataFilterRuleCombinator,
150
150
  MetadataFilterRuleRequest,
151
+ MlModelUsage,
151
152
  ModelVersionBuildConfig,
152
153
  ModelVersionExecConfig,
153
154
  ModelVersionExecConfigParameters,
@@ -210,6 +211,7 @@ from .types import (
210
211
  PaginatedSlimDocumentList,
211
212
  PaginatedSlimWorkflowDeploymentList,
212
213
  PaginatedTestSuiteRunExecutionList,
214
+ PaginatedTestSuiteTestCaseList,
213
215
  ProcessingFailureReasonEnum,
214
216
  ProcessingStateEnum,
215
217
  PromptDeploymentExpandMetaRequestRequest,
@@ -372,6 +374,9 @@ from .types import (
372
374
  TestSuiteRunMetricOutput,
373
375
  TestSuiteRunMetricOutput_Error,
374
376
  TestSuiteRunMetricOutput_Number,
377
+ TestSuiteRunMetricOutput_String,
378
+ TestSuiteRunMetricStringOutput,
379
+ TestSuiteRunMetricStringOutputTypeEnum,
375
380
  TestSuiteRunRead,
376
381
  TestSuiteRunState,
377
382
  TestSuiteRunTestSuite,
@@ -637,6 +642,7 @@ __all__ = [
637
642
  "MetadataFilterConfigRequest",
638
643
  "MetadataFilterRuleCombinator",
639
644
  "MetadataFilterRuleRequest",
645
+ "MlModelUsage",
640
646
  "ModelVersionBuildConfig",
641
647
  "ModelVersionExecConfig",
642
648
  "ModelVersionExecConfigParameters",
@@ -700,6 +706,7 @@ __all__ = [
700
706
  "PaginatedSlimDocumentList",
701
707
  "PaginatedSlimWorkflowDeploymentList",
702
708
  "PaginatedTestSuiteRunExecutionList",
709
+ "PaginatedTestSuiteTestCaseList",
703
710
  "ProcessingFailureReasonEnum",
704
711
  "ProcessingStateEnum",
705
712
  "PromptDeploymentExpandMetaRequestRequest",
@@ -862,6 +869,9 @@ __all__ = [
862
869
  "TestSuiteRunMetricOutput",
863
870
  "TestSuiteRunMetricOutput_Error",
864
871
  "TestSuiteRunMetricOutput_Number",
872
+ "TestSuiteRunMetricOutput_String",
873
+ "TestSuiteRunMetricStringOutput",
874
+ "TestSuiteRunMetricStringOutputTypeEnum",
865
875
  "TestSuiteRunRead",
866
876
  "TestSuiteRunState",
867
877
  "TestSuiteRunTestSuite",
vellum/client.py CHANGED
@@ -167,6 +167,7 @@ class Vellum:
167
167
  deployment_release_tag=True,
168
168
  prompt_version_id=True,
169
169
  finish_reason=True,
170
+ usage=True,
170
171
  ),
171
172
  raw_overrides=RawPromptExecutionOverridesRequest(
172
173
  body={"string": {"key": "value"}},
@@ -301,6 +302,7 @@ class Vellum:
301
302
  deployment_release_tag=True,
302
303
  prompt_version_id=True,
303
304
  finish_reason=True,
305
+ usage=True,
304
306
  ),
305
307
  raw_overrides=RawPromptExecutionOverridesRequest(
306
308
  body={"string": {"key": "value"}},
@@ -1123,6 +1125,7 @@ class AsyncVellum:
1123
1125
  deployment_release_tag=True,
1124
1126
  prompt_version_id=True,
1125
1127
  finish_reason=True,
1128
+ usage=True,
1126
1129
  ),
1127
1130
  raw_overrides=RawPromptExecutionOverridesRequest(
1128
1131
  body={"string": {"key": "value"}},
@@ -1257,6 +1260,7 @@ class AsyncVellum:
1257
1260
  deployment_release_tag=True,
1258
1261
  prompt_version_id=True,
1259
1262
  finish_reason=True,
1263
+ usage=True,
1260
1264
  ),
1261
1265
  raw_overrides=RawPromptExecutionOverridesRequest(
1262
1266
  body={"string": {"key": "value"}},
@@ -18,7 +18,7 @@ class BaseClientWrapper:
18
18
  headers: typing.Dict[str, str] = {
19
19
  "X-Fern-Language": "Python",
20
20
  "X-Fern-SDK-Name": "vellum-ai",
21
- "X-Fern-SDK-Version": "0.3.19",
21
+ "X-Fern-SDK-Version": "0.3.21",
22
22
  }
23
23
  headers["X_API_KEY"] = self.api_key
24
24
  return headers
@@ -10,6 +10,7 @@ from ...core.jsonable_encoder import jsonable_encoder
10
10
  from ...core.remove_none_from_dict import remove_none_from_dict
11
11
  from ...core.request_options import RequestOptions
12
12
  from ...types.named_test_case_variable_value_request import NamedTestCaseVariableValueRequest
13
+ from ...types.paginated_test_suite_test_case_list import PaginatedTestSuiteTestCaseList
13
14
  from ...types.test_suite_test_case import TestSuiteTestCase
14
15
 
15
16
  try:
@@ -25,6 +26,76 @@ class TestSuitesClient:
25
26
  def __init__(self, *, client_wrapper: SyncClientWrapper):
26
27
  self._client_wrapper = client_wrapper
27
28
 
29
+ def list_test_suite_test_cases(
30
+ self,
31
+ id: str,
32
+ *,
33
+ limit: typing.Optional[int] = None,
34
+ offset: typing.Optional[int] = None,
35
+ request_options: typing.Optional[RequestOptions] = None,
36
+ ) -> PaginatedTestSuiteTestCaseList:
37
+ """
38
+ List the Test Cases associated with a Test Suite
39
+
40
+ Parameters:
41
+ - id: str. A UUID string identifying this test suite.
42
+
43
+ - limit: typing.Optional[int]. Number of results to return per page.
44
+
45
+ - offset: typing.Optional[int]. The initial index from which to return the results.
46
+
47
+ - request_options: typing.Optional[RequestOptions]. Request-specific configuration.
48
+ ---
49
+ from vellum.client import Vellum
50
+
51
+ client = Vellum(
52
+ api_key="YOUR_API_KEY",
53
+ )
54
+ client.test_suites.list_test_suite_test_cases(
55
+ id="id",
56
+ )
57
+ """
58
+ _response = self._client_wrapper.httpx_client.request(
59
+ "GET",
60
+ urllib.parse.urljoin(
61
+ f"{self._client_wrapper.get_environment().default}/",
62
+ f"v1/test-suites/{jsonable_encoder(id)}/test-cases",
63
+ ),
64
+ params=jsonable_encoder(
65
+ remove_none_from_dict(
66
+ {
67
+ "limit": limit,
68
+ "offset": offset,
69
+ **(
70
+ request_options.get("additional_query_parameters", {})
71
+ if request_options is not None
72
+ else {}
73
+ ),
74
+ }
75
+ )
76
+ ),
77
+ headers=jsonable_encoder(
78
+ remove_none_from_dict(
79
+ {
80
+ **self._client_wrapper.get_headers(),
81
+ **(request_options.get("additional_headers", {}) if request_options is not None else {}),
82
+ }
83
+ )
84
+ ),
85
+ timeout=request_options.get("timeout_in_seconds")
86
+ if request_options is not None and request_options.get("timeout_in_seconds") is not None
87
+ else self._client_wrapper.get_timeout(),
88
+ retries=0,
89
+ max_retries=request_options.get("max_retries") if request_options is not None else 0, # type: ignore
90
+ )
91
+ if 200 <= _response.status_code < 300:
92
+ return pydantic.parse_obj_as(PaginatedTestSuiteTestCaseList, _response.json()) # type: ignore
93
+ try:
94
+ _response_json = _response.json()
95
+ except JSONDecodeError:
96
+ raise ApiError(status_code=_response.status_code, body=_response.text)
97
+ raise ApiError(status_code=_response.status_code, body=_response_json)
98
+
28
99
  def upsert_test_suite_test_case(
29
100
  self,
30
101
  id: str,
@@ -169,6 +240,76 @@ class AsyncTestSuitesClient:
169
240
  def __init__(self, *, client_wrapper: AsyncClientWrapper):
170
241
  self._client_wrapper = client_wrapper
171
242
 
243
+ async def list_test_suite_test_cases(
244
+ self,
245
+ id: str,
246
+ *,
247
+ limit: typing.Optional[int] = None,
248
+ offset: typing.Optional[int] = None,
249
+ request_options: typing.Optional[RequestOptions] = None,
250
+ ) -> PaginatedTestSuiteTestCaseList:
251
+ """
252
+ List the Test Cases associated with a Test Suite
253
+
254
+ Parameters:
255
+ - id: str. A UUID string identifying this test suite.
256
+
257
+ - limit: typing.Optional[int]. Number of results to return per page.
258
+
259
+ - offset: typing.Optional[int]. The initial index from which to return the results.
260
+
261
+ - request_options: typing.Optional[RequestOptions]. Request-specific configuration.
262
+ ---
263
+ from vellum.client import AsyncVellum
264
+
265
+ client = AsyncVellum(
266
+ api_key="YOUR_API_KEY",
267
+ )
268
+ await client.test_suites.list_test_suite_test_cases(
269
+ id="id",
270
+ )
271
+ """
272
+ _response = await self._client_wrapper.httpx_client.request(
273
+ "GET",
274
+ urllib.parse.urljoin(
275
+ f"{self._client_wrapper.get_environment().default}/",
276
+ f"v1/test-suites/{jsonable_encoder(id)}/test-cases",
277
+ ),
278
+ params=jsonable_encoder(
279
+ remove_none_from_dict(
280
+ {
281
+ "limit": limit,
282
+ "offset": offset,
283
+ **(
284
+ request_options.get("additional_query_parameters", {})
285
+ if request_options is not None
286
+ else {}
287
+ ),
288
+ }
289
+ )
290
+ ),
291
+ headers=jsonable_encoder(
292
+ remove_none_from_dict(
293
+ {
294
+ **self._client_wrapper.get_headers(),
295
+ **(request_options.get("additional_headers", {}) if request_options is not None else {}),
296
+ }
297
+ )
298
+ ),
299
+ timeout=request_options.get("timeout_in_seconds")
300
+ if request_options is not None and request_options.get("timeout_in_seconds") is not None
301
+ else self._client_wrapper.get_timeout(),
302
+ retries=0,
303
+ max_retries=request_options.get("max_retries") if request_options is not None else 0, # type: ignore
304
+ )
305
+ if 200 <= _response.status_code < 300:
306
+ return pydantic.parse_obj_as(PaginatedTestSuiteTestCaseList, _response.json()) # type: ignore
307
+ try:
308
+ _response_json = _response.json()
309
+ except JSONDecodeError:
310
+ raise ApiError(status_code=_response.status_code, body=_response.text)
311
+ raise ApiError(status_code=_response.status_code, body=_response_json)
312
+
172
313
  async def upsert_test_suite_test_case(
173
314
  self,
174
315
  id: str,
vellum/types/__init__.py CHANGED
@@ -165,6 +165,7 @@ from .logprobs_enum import LogprobsEnum
165
165
  from .metadata_filter_config_request import MetadataFilterConfigRequest
166
166
  from .metadata_filter_rule_combinator import MetadataFilterRuleCombinator
167
167
  from .metadata_filter_rule_request import MetadataFilterRuleRequest
168
+ from .ml_model_usage import MlModelUsage
168
169
  from .model_version_build_config import ModelVersionBuildConfig
169
170
  from .model_version_exec_config import ModelVersionExecConfig
170
171
  from .model_version_exec_config_parameters import ModelVersionExecConfigParameters
@@ -233,6 +234,7 @@ from .paginated_slim_deployment_read_list import PaginatedSlimDeploymentReadList
233
234
  from .paginated_slim_document_list import PaginatedSlimDocumentList
234
235
  from .paginated_slim_workflow_deployment_list import PaginatedSlimWorkflowDeploymentList
235
236
  from .paginated_test_suite_run_execution_list import PaginatedTestSuiteRunExecutionList
237
+ from .paginated_test_suite_test_case_list import PaginatedTestSuiteTestCaseList
236
238
  from .processing_failure_reason_enum import ProcessingFailureReasonEnum
237
239
  from .processing_state_enum import ProcessingStateEnum
238
240
  from .prompt_deployment_expand_meta_request_request import PromptDeploymentExpandMetaRequestRequest
@@ -418,7 +420,10 @@ from .test_suite_run_metric_output import (
418
420
  TestSuiteRunMetricOutput,
419
421
  TestSuiteRunMetricOutput_Error,
420
422
  TestSuiteRunMetricOutput_Number,
423
+ TestSuiteRunMetricOutput_String,
421
424
  )
425
+ from .test_suite_run_metric_string_output import TestSuiteRunMetricStringOutput
426
+ from .test_suite_run_metric_string_output_type_enum import TestSuiteRunMetricStringOutputTypeEnum
422
427
  from .test_suite_run_read import TestSuiteRunRead
423
428
  from .test_suite_run_state import TestSuiteRunState
424
429
  from .test_suite_run_test_suite import TestSuiteRunTestSuite
@@ -669,6 +674,7 @@ __all__ = [
669
674
  "MetadataFilterConfigRequest",
670
675
  "MetadataFilterRuleCombinator",
671
676
  "MetadataFilterRuleRequest",
677
+ "MlModelUsage",
672
678
  "ModelVersionBuildConfig",
673
679
  "ModelVersionExecConfig",
674
680
  "ModelVersionExecConfigParameters",
@@ -731,6 +737,7 @@ __all__ = [
731
737
  "PaginatedSlimDocumentList",
732
738
  "PaginatedSlimWorkflowDeploymentList",
733
739
  "PaginatedTestSuiteRunExecutionList",
740
+ "PaginatedTestSuiteTestCaseList",
734
741
  "ProcessingFailureReasonEnum",
735
742
  "ProcessingStateEnum",
736
743
  "PromptDeploymentExpandMetaRequestRequest",
@@ -893,6 +900,9 @@ __all__ = [
893
900
  "TestSuiteRunMetricOutput",
894
901
  "TestSuiteRunMetricOutput_Error",
895
902
  "TestSuiteRunMetricOutput_Number",
903
+ "TestSuiteRunMetricOutput_String",
904
+ "TestSuiteRunMetricStringOutput",
905
+ "TestSuiteRunMetricStringOutputTypeEnum",
896
906
  "TestSuiteRunRead",
897
907
  "TestSuiteRunState",
898
908
  "TestSuiteRunTestSuite",
@@ -5,6 +5,7 @@ import typing
5
5
 
6
6
  from ..core.datetime_utils import serialize_datetime
7
7
  from .finish_reason_enum import FinishReasonEnum
8
+ from .ml_model_usage import MlModelUsage
8
9
 
9
10
  try:
10
11
  import pydantic.v1 as pydantic # type: ignore
@@ -19,6 +20,7 @@ class FulfilledPromptExecutionMeta(pydantic.BaseModel):
19
20
 
20
21
  latency: typing.Optional[int] = None
21
22
  finish_reason: typing.Optional[FinishReasonEnum] = None
23
+ usage: typing.Optional[MlModelUsage] = None
22
24
 
23
25
  def json(self, **kwargs: typing.Any) -> str:
24
26
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -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
+
8
+ try:
9
+ import pydantic.v1 as pydantic # type: ignore
10
+ except ImportError:
11
+ import pydantic # type: ignore
12
+
13
+
14
+ class MlModelUsage(pydantic.BaseModel):
15
+ output_token_count: typing.Optional[int] = None
16
+ input_token_count: typing.Optional[int] = None
17
+ input_char_count: typing.Optional[int] = None
18
+ output_char_count: typing.Optional[int] = None
19
+ compute_nanos: typing.Optional[int] = None
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 .test_suite_test_case import TestSuiteTestCase
8
+
9
+ try:
10
+ import pydantic.v1 as pydantic # type: ignore
11
+ except ImportError:
12
+ import pydantic # type: ignore
13
+
14
+
15
+ class PaginatedTestSuiteTestCaseList(pydantic.BaseModel):
16
+ count: int
17
+ next: typing.Optional[str] = None
18
+ previous: typing.Optional[str] = None
19
+ results: typing.List[TestSuiteTestCase]
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}
@@ -37,6 +37,11 @@ class PromptDeploymentExpandMetaRequestRequest(pydantic.BaseModel):
37
37
  If enabled, the response will include the reason provided by the model for why the execution finished.
38
38
  """
39
39
 
40
+ usage: typing.Optional[bool] = pydantic.Field(default=None)
41
+ """
42
+ If enabled, the response will include model host usage tracking. This may increase latency for some model hosts.
43
+ """
44
+
40
45
  def json(self, **kwargs: typing.Any) -> str:
41
46
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
42
47
  return super().json(**kwargs_with_defaults)
@@ -5,6 +5,7 @@ import typing
5
5
 
6
6
  from ..core.datetime_utils import serialize_datetime
7
7
  from .finish_reason_enum import FinishReasonEnum
8
+ from .ml_model_usage import MlModelUsage
8
9
 
9
10
  try:
10
11
  import pydantic.v1 as pydantic # type: ignore
@@ -17,6 +18,7 @@ class PromptExecutionMeta(pydantic.BaseModel):
17
18
  The subset of the metadata tracked by Vellum during prompt execution that the request opted into with `expand_meta`.
18
19
  """
19
20
 
21
+ usage: typing.Optional[MlModelUsage] = None
20
22
  model_name: typing.Optional[str] = None
21
23
  latency: typing.Optional[int] = None
22
24
  deployment_release_tag: typing.Optional[str] = None
@@ -6,6 +6,17 @@ import typing
6
6
 
7
7
  from .test_suite_run_metric_error_output import TestSuiteRunMetricErrorOutput
8
8
  from .test_suite_run_metric_number_output import TestSuiteRunMetricNumberOutput
9
+ from .test_suite_run_metric_string_output import TestSuiteRunMetricStringOutput
10
+
11
+
12
+ class TestSuiteRunMetricOutput_String(TestSuiteRunMetricStringOutput):
13
+ type: typing.Literal["STRING"] = "STRING"
14
+
15
+ class Config:
16
+ frozen = True
17
+ smart_union = True
18
+ allow_population_by_field_name = True
19
+ populate_by_name = True
9
20
 
10
21
 
11
22
  class TestSuiteRunMetricOutput_Number(TestSuiteRunMetricNumberOutput):
@@ -28,4 +39,6 @@ class TestSuiteRunMetricOutput_Error(TestSuiteRunMetricErrorOutput):
28
39
  populate_by_name = True
29
40
 
30
41
 
31
- TestSuiteRunMetricOutput = typing.Union[TestSuiteRunMetricOutput_Number, TestSuiteRunMetricOutput_Error]
42
+ TestSuiteRunMetricOutput = typing.Union[
43
+ TestSuiteRunMetricOutput_String, TestSuiteRunMetricOutput_Number, TestSuiteRunMetricOutput_Error
44
+ ]
@@ -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 TestSuiteRunMetricStringOutput(pydantic.BaseModel):
15
+ """
16
+ Output for a test suite run metric that is of type STRING
17
+ """
18
+
19
+ value: str
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}
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ TestSuiteRunMetricStringOutputTypeEnum = typing.Literal["STRING"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vellum-ai
3
- Version: 0.3.19
3
+ Version: 0.3.21
4
4
  Summary:
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Programming Language :: Python :: 3
@@ -1,8 +1,8 @@
1
- vellum/__init__.py,sha256=17WXNkvq4OC3V1VqGWc64nJklzsPgBH0D_uux72OYng,33627
2
- vellum/client.py,sha256=XB_tltKpWwPoZpsm4g0ftLPKFYjZSLjLAteJwp-xSWA,96636
1
+ vellum/__init__.py,sha256=h2QBLHkAs9OTsNI_W0fYfaUrQUmLd37wNbkK63TQcGY,33979
2
+ vellum/client.py,sha256=ViOMnbiP_kKm3ayXW6DY1wC7Ge8tnI389qC8XVffyB8,96748
3
3
  vellum/core/__init__.py,sha256=RWfyDqkzWsf8e3VGc3NV60MovfJbg5XWzNFGB2DZ0hA,790
4
4
  vellum/core/api_error.py,sha256=RE8LELok2QCjABadECTvtDp7qejA1VmINCh6TbqPwSE,426
5
- vellum/core/client_wrapper.py,sha256=g4ugtTY_3bC7PtOub1v7_JStUsGSQkAytTegUNwUuWY,1698
5
+ vellum/core/client_wrapper.py,sha256=zOXh9ZnRKMmvfCIpadlblmkfFSVgnNdLnEaRVillKps,1698
6
6
  vellum/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
7
7
  vellum/core/file.py,sha256=sy1RUGZ3aJYuw998bZytxxo6QdgKmlnlgBaMvwEKCGg,1480
8
8
  vellum/core/http_client.py,sha256=5ok6hqgZDJhg57EHvMnr0BBaHdG50QxFPKaCZ9aVWTc,5059
@@ -39,12 +39,12 @@ vellum/resources/sandboxes/client.py,sha256=gW_DTrJ3w6BfaSATZxB0Z-bxVUXQ0JtPAjL6
39
39
  vellum/resources/test_suite_runs/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
40
40
  vellum/resources/test_suite_runs/client.py,sha256=T5vF1S5jDfQLxKOg-2Q2XYCF9g5W-dos6Ff6Av21gr8,17120
41
41
  vellum/resources/test_suites/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
42
- vellum/resources/test_suites/client.py,sha256=zB8Ne4rUqwyazytyBWNKuI449C8MB7S5dugRg5NBjd4,13316
42
+ vellum/resources/test_suites/client.py,sha256=7PmEjJ_2TlvqJoP3C4XkdA8SyYMHVQwREB4T8LowZbM,18966
43
43
  vellum/resources/workflow_deployments/__init__.py,sha256=-5BCA0kSmW6WUh4gqLuQtHv4zFdt9lccuDwMU5YvEu4,173
44
44
  vellum/resources/workflow_deployments/client.py,sha256=DUY1h8mvXqwP-zilmwoek_XbLNTFeeVbxgd7M-k2IzA,11164
45
45
  vellum/resources/workflow_deployments/types/__init__.py,sha256=rmS_4dtbgLHGNQJ_pOloygrjl4sNbKZjTEKBxbMyz6E,208
46
46
  vellum/resources/workflow_deployments/types/workflow_deployments_list_request_status.py,sha256=8-G1SalBR6-AfRnb6POOR9M3tvZa3CGwFIs1ArZb6uw,542
47
- vellum/types/__init__.py,sha256=59p1m_erR_1kg_kWmTUWaBafV5zzijV_5EZ7yJXIRvI,44795
47
+ vellum/types/__init__.py,sha256=aXYiDbcBGEypul3Ae4DcgwNT55UtGftQsVxTPRpVAZU,45312
48
48
  vellum/types/api_node_result.py,sha256=aLOooryBCfglTeZwOuyyqRoHz5oPTja2mYYY7Gj8XxA,1040
49
49
  vellum/types/api_node_result_data.py,sha256=cQcZiwI1hjRvQFlkVEGxyaD360vEklIfjBmhBAeI75U,1215
50
50
  vellum/types/array_chat_message_content.py,sha256=Z7nKH8RNgot0i4-159w95OHywLjc-376gBPOovbw2hk,1087
@@ -108,7 +108,7 @@ vellum/types/fulfilled_execute_prompt_event.py,sha256=2_jNUOaSg12WKggFiczulVoHFM
108
108
  vellum/types/fulfilled_execute_prompt_response.py,sha256=LyVpUlphfBrqSWzo1QyIzdTjAJ8cgW60U98VnMd83ws,1508
109
109
  vellum/types/fulfilled_execute_workflow_workflow_result_event.py,sha256=ROLCpeU2FoqyisPDvgumUlYFDUbwOr93pEfII-ST3NI,1146
110
110
  vellum/types/fulfilled_function_call.py,sha256=wIk8JVy9HyjSbY7rPOhrXPh3OuKy3mtpUvPSOx2FcUc,1056
111
- vellum/types/fulfilled_prompt_execution_meta.py,sha256=_cDf859bAtbKHRt3cvdLHeuQi44CUqjUSYWITLBeubk,1196
111
+ vellum/types/fulfilled_prompt_execution_meta.py,sha256=FHivWXQbtMMoud9vMC4rc_ik1JWPZG6HfJOkuevCnCs,1285
112
112
  vellum/types/fulfilled_workflow_node_result_event.py,sha256=MGxts5L-VBaYP7xbL5ojjtKWEXUv45XSPqT7Y2RtvjI,1454
113
113
  vellum/types/function_call.py,sha256=U1_fLhZ_VGnHYPX8rb7iqyyUhBzzbRAGR-ai4wLDrs4,813
114
114
  vellum/types/function_call_chat_message_content.py,sha256=z9bTybrPXuhztOUw65PXGws-obJkCJWhc0Zfv1ZwA-k,1122
@@ -144,6 +144,7 @@ vellum/types/logprobs_enum.py,sha256=cw9yroKgrZzpPHniPV4hg7_21PM9_FSX1GArHHC_-_o
144
144
  vellum/types/metadata_filter_config_request.py,sha256=JH5EBNES30DuRIhgad6IYwXZcuAW6bRajSnWUqs4hG4,1412
145
145
  vellum/types/metadata_filter_rule_combinator.py,sha256=hmfQ3drGlGYqRA78iZr7ek8qZTFN-WENrwL3_OlexMM,528
146
146
  vellum/types/metadata_filter_rule_request.py,sha256=JGPkjXzMS9I3dlEQUAJ0HllJ3F-Znp-0x-4hp06miPs,1428
147
+ vellum/types/ml_model_usage.py,sha256=2o6Yy9lMDTqRHQNpUzQSoQMfA5_my79LA1pBZDcGLV0,1143
147
148
  vellum/types/model_version_build_config.py,sha256=0dOGfizN30eYJtjs-fJc32TUBGdpYuMFo57a_tEutSg,1400
148
149
  vellum/types/model_version_exec_config.py,sha256=tJJ1Kb8rBdbkD4z9fVwP94bjR9gee4I9N-i9o9w8vVs,1677
149
150
  vellum/types/model_version_exec_config_parameters.py,sha256=jF4wm_GIeITFavMNGSvBd-fa5v9fEjWxoHaZhVFx0CI,1326
@@ -184,11 +185,12 @@ vellum/types/paginated_slim_deployment_read_list.py,sha256=4pMZYAVl7pLI8d9-CE3NY
184
185
  vellum/types/paginated_slim_document_list.py,sha256=Zvr_VzHcUEEiqAXEitoaM5YcPcaTKgEx8fziy3SH1CU,1127
185
186
  vellum/types/paginated_slim_workflow_deployment_list.py,sha256=dCew3Xy72Mo5MHIBdCbcuDaH0v2yeCRNBDt4m-8tb0A,1168
186
187
  vellum/types/paginated_test_suite_run_execution_list.py,sha256=pwT-FeIxOBnP_S3kpqlAUOtlXEYfFgfViRGxeFTebRI,1117
188
+ vellum/types/paginated_test_suite_test_case_list.py,sha256=0XlghGkiSubI41oR1UGSdYOKDUM4XLCgmcElKaYFdkA,1101
187
189
  vellum/types/processing_failure_reason_enum.py,sha256=MDj2vNyO1Y-2WHuolkrGez8F1cZqS6ultfsqvGI4Fg8,752
188
190
  vellum/types/processing_state_enum.py,sha256=rMhw5oLZNfhR4QkIgFfLMWRSLXgHt9qhiguEqWQNz5k,962
189
- vellum/types/prompt_deployment_expand_meta_request_request.py,sha256=jvi3NW0nJxyLwNEhk35oEdAm_aDOuy48eNy5LqvkkRs,1885
191
+ vellum/types/prompt_deployment_expand_meta_request_request.py,sha256=bpA4eO3wIwg5fZK89eoC8B8QsRrKFddIN69o04YEBPk,2083
190
192
  vellum/types/prompt_deployment_input_request.py,sha256=o8PCi7TsitddNxiAfDblxaXkJ1-WjuDTAW0LnKbMDY4,1233
191
- vellum/types/prompt_execution_meta.py,sha256=ix_1Wscqv3kthyyirFEjwY6xXYD5wuw0sdypyfb8hAo,1338
193
+ vellum/types/prompt_execution_meta.py,sha256=4RNkaZ2QjUtZwGUc9574Y4KuoZnzW2UCWj2RNiNiGKQ,1427
192
194
  vellum/types/prompt_node_result.py,sha256=s6jusFXMD1calmDVdL0lWO0NIqILWpdLP8xFRqf-5-k,1054
193
195
  vellum/types/prompt_node_result_data.py,sha256=q6y32EyaaAoIxM1od6-5RQAmPTitBQ-Hlkw5QNdeo6g,1045
194
196
  vellum/types/prompt_output.py,sha256=Df5UnLyBRf79_oUnYiMl9vi_h41yKEDLw1KgkgiX1Uk,1442
@@ -301,7 +303,9 @@ vellum/types/test_suite_run_metric_error_output.py,sha256=N0ZRTO1QV4Bobrh9u1-k5q
301
303
  vellum/types/test_suite_run_metric_error_output_type_enum.py,sha256=ZPKy0jkcgfuMhI2hG_3UUcw2sYH1BlV_ze8Axlq5nIU,144
302
304
  vellum/types/test_suite_run_metric_number_output.py,sha256=vedeqnSpDl7Y23DdgAlcl16Gxd1WlNo4m4PQ2SGI8Tk,1020
303
305
  vellum/types/test_suite_run_metric_number_output_type_enum.py,sha256=sXoES0zoliicpd66SwlF6xsVUjWSezGNkuxp6CthO2s,146
304
- vellum/types/test_suite_run_metric_output.py,sha256=O_v0dGiAnXXRc_MpEZT3La5p6iBPPRNfNWJesGIHe9M,907
306
+ vellum/types/test_suite_run_metric_output.py,sha256=QkHRKO1tnQWoeCq7xc7TfSiAjC927Ha2hdePBJeEn0A,1291
307
+ vellum/types/test_suite_run_metric_string_output.py,sha256=FxScPpKm8kj6pGTTQ9slJgkb1PQZn5LBa0ZFOnCUxJw,1018
308
+ vellum/types/test_suite_run_metric_string_output_type_enum.py,sha256=6OKwFyk0SUq4IKp6yg_FAc3ADM0jVCK-chq5JR9iwqo,146
305
309
  vellum/types/test_suite_run_read.py,sha256=bb6kgQaMQpkshETe_dXiMNVCx3r05t12ajaiqTAnvHg,1551
306
310
  vellum/types/test_suite_run_state.py,sha256=myD2yLYpEiTUK4AyRZwl3MrXOKYkDA8k4fpqnDnALAY,1111
307
311
  vellum/types/test_suite_run_test_suite.py,sha256=jsSjV803xCQ4zQ29MCvCM06rH1PCviCZ7G8KzR-LiOA,953
@@ -359,7 +363,7 @@ vellum/types/workflow_result_event_output_data_search_results.py,sha256=wYc76-DW
359
363
  vellum/types/workflow_result_event_output_data_string.py,sha256=7SR46tKt-I_cGd_eVeKU8ymQ7R3vKkA_dFHCgAU1GcQ,1533
360
364
  vellum/types/workflow_stream_event.py,sha256=KA6Bkk_XA6AIPWR-1vKnwF1A8l_Bm5y0arQCWWWRpsk,911
361
365
  vellum/version.py,sha256=neLt8HBHHUtDF9M5fsyUzHT-pKooEPvceaLDqqIGb0s,77
362
- vellum_ai-0.3.19.dist-info/LICENSE,sha256=CcaljEIoOBaU-wItPH4PmM_mDCGpyuUY0Er1BGu5Ti8,1073
363
- vellum_ai-0.3.19.dist-info/METADATA,sha256=F_XSE4YdnDaMpkP7fdqrL6I8THooOux4LK9VkieCbEI,3550
364
- vellum_ai-0.3.19.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
365
- vellum_ai-0.3.19.dist-info/RECORD,,
366
+ vellum_ai-0.3.21.dist-info/LICENSE,sha256=CcaljEIoOBaU-wItPH4PmM_mDCGpyuUY0Er1BGu5Ti8,1073
367
+ vellum_ai-0.3.21.dist-info/METADATA,sha256=BPMxESrgGDvdc1CRhBOdYCRugknRd_NwOR5D5NzmRI4,3550
368
+ vellum_ai-0.3.21.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
369
+ vellum_ai-0.3.21.dist-info/RECORD,,