vellum-ai 0.3.19__py3-none-any.whl → 0.3.21__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
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,,