vellum-ai 0.0.29__py3-none-any.whl → 0.0.31__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
@@ -11,11 +11,13 @@ from .types import (
11
11
  DeploymentNodeResult,
12
12
  DeploymentNodeResultData,
13
13
  DeploymentRead,
14
- DeploymentReadStatusEnum,
14
+ DeploymentStatus,
15
15
  Document,
16
16
  DocumentDocumentToDocumentIndex,
17
17
  DocumentIndexRead,
18
18
  DocumentIndexStatus,
19
+ DocumentRead,
20
+ DocumentStatus,
19
21
  EnrichedNormalizedCompletion,
20
22
  EnvironmentEnum,
21
23
  EvaluationParams,
@@ -90,7 +92,6 @@ from .types import (
90
92
  SearchResultMergingRequest,
91
93
  SearchWeightsRequest,
92
94
  SlimDocument,
93
- SlimDocumentStatusEnum,
94
95
  SubmitCompletionActualRequest,
95
96
  SubmitCompletionActualsErrorResponse,
96
97
  TerminalNodeChatHistoryResult,
@@ -163,11 +164,13 @@ __all__ = [
163
164
  "DeploymentNodeResult",
164
165
  "DeploymentNodeResultData",
165
166
  "DeploymentRead",
166
- "DeploymentReadStatusEnum",
167
+ "DeploymentStatus",
167
168
  "Document",
168
169
  "DocumentDocumentToDocumentIndex",
169
170
  "DocumentIndexRead",
170
171
  "DocumentIndexStatus",
172
+ "DocumentRead",
173
+ "DocumentStatus",
171
174
  "EnrichedNormalizedCompletion",
172
175
  "EnvironmentEnum",
173
176
  "EvaluationParams",
@@ -245,7 +248,6 @@ __all__ = [
245
248
  "SearchResultMergingRequest",
246
249
  "SearchWeightsRequest",
247
250
  "SlimDocument",
248
- "SlimDocumentStatusEnum",
249
251
  "SubmitCompletionActualRequest",
250
252
  "SubmitCompletionActualsErrorResponse",
251
253
  "TerminalNodeChatHistoryResult",
vellum/client.py CHANGED
@@ -109,12 +109,14 @@ class Vellum:
109
109
  continue
110
110
  yield pydantic.parse_obj_as(WorkflowStreamEvent, json.loads(_text)) # type: ignore
111
111
  return
112
+ _response.read()
113
+ if _response.status_code == 400:
114
+ raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
112
115
  if _response.status_code == 404:
113
116
  raise NotFoundError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
114
117
  if _response.status_code == 500:
115
118
  raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
116
119
  try:
117
- _response.read()
118
120
  _response_json = _response.json()
119
121
  except JSONDecodeError:
120
122
  raise ApiError(status_code=_response.status_code, body=_response.text)
@@ -218,6 +220,7 @@ class Vellum:
218
220
  continue
219
221
  yield pydantic.parse_obj_as(GenerateStreamResponse, json.loads(_text)) # type: ignore
220
222
  return
223
+ _response.read()
221
224
  if _response.status_code == 400:
222
225
  raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
223
226
  if _response.status_code == 403:
@@ -227,7 +230,6 @@ class Vellum:
227
230
  if _response.status_code == 500:
228
231
  raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
229
232
  try:
230
- _response.read()
231
233
  _response_json = _response.json()
232
234
  except JSONDecodeError:
233
235
  raise ApiError(status_code=_response.status_code, body=_response.text)
@@ -405,12 +407,14 @@ class AsyncVellum:
405
407
  continue
406
408
  yield pydantic.parse_obj_as(WorkflowStreamEvent, json.loads(_text)) # type: ignore
407
409
  return
410
+ await _response.aread()
411
+ if _response.status_code == 400:
412
+ raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
408
413
  if _response.status_code == 404:
409
414
  raise NotFoundError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
410
415
  if _response.status_code == 500:
411
416
  raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
412
417
  try:
413
- await _response.aread()
414
418
  _response_json = _response.json()
415
419
  except JSONDecodeError:
416
420
  raise ApiError(status_code=_response.status_code, body=_response.text)
@@ -514,6 +518,7 @@ class AsyncVellum:
514
518
  continue
515
519
  yield pydantic.parse_obj_as(GenerateStreamResponse, json.loads(_text)) # type: ignore
516
520
  return
521
+ await _response.aread()
517
522
  if _response.status_code == 400:
518
523
  raise BadRequestError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
519
524
  if _response.status_code == 403:
@@ -523,7 +528,6 @@ class AsyncVellum:
523
528
  if _response.status_code == 500:
524
529
  raise InternalServerError(pydantic.parse_obj_as(typing.Any, _response.json())) # type: ignore
525
530
  try:
526
- await _response.aread()
527
531
  _response_json = _response.json()
528
532
  except JSONDecodeError:
529
533
  raise ApiError(status_code=_response.status_code, body=_response.text)
@@ -10,7 +10,11 @@ class BaseClientWrapper:
10
10
  self.api_key = api_key
11
11
 
12
12
  def get_headers(self) -> typing.Dict[str, str]:
13
- headers: typing.Dict[str, str] = {}
13
+ headers: typing.Dict[str, str] = {
14
+ "X-Fern-Language": "Python",
15
+ "X-Fern-SDK-Name": "vellum-ai",
16
+ "X-Fern-SDK-Version": "v0.0.31",
17
+ }
14
18
  headers["X_API_KEY"] = self.api_key
15
19
  return headers
16
20
 
@@ -14,6 +14,8 @@ from ...environment import VellumEnvironment
14
14
  from ...errors.bad_request_error import BadRequestError
15
15
  from ...errors.internal_server_error import InternalServerError
16
16
  from ...errors.not_found_error import NotFoundError
17
+ from ...types.document_read import DocumentRead
18
+ from ...types.document_status import DocumentStatus
17
19
  from ...types.paginated_slim_document_list import PaginatedSlimDocumentList
18
20
  from ...types.upload_document_response import UploadDocumentResponse
19
21
 
@@ -68,6 +70,52 @@ class DocumentsClient:
68
70
  raise ApiError(status_code=_response.status_code, body=_response.text)
69
71
  raise ApiError(status_code=_response.status_code, body=_response_json)
70
72
 
73
+ def partial_update(
74
+ self,
75
+ id: str,
76
+ *,
77
+ label: typing.Optional[str] = OMIT,
78
+ status: typing.Optional[DocumentStatus] = OMIT,
79
+ metadata: typing.Optional[typing.Dict[str, typing.Any]] = OMIT,
80
+ ) -> DocumentRead:
81
+ """
82
+
83
+ <strong style="background-color:#ffc107; color:white; padding:4px; border-radius:4px">Unstable</strong>
84
+
85
+ Update a Document, keying off of its Vellum-generated ID. Particularly useful for updating its metadata.
86
+
87
+ Parameters:
88
+ - id: str. A UUID string identifying this document.
89
+
90
+ - label: typing.Optional[str]. A human-readable label for the document. Defaults to the originally uploaded file's file name. <span style="white-space: nowrap">`non-empty`</span> <span style="white-space: nowrap">`<= 1000 characters`</span>
91
+
92
+ - status: typing.Optional[DocumentStatus]. The current status of the document
93
+
94
+ * `ACTIVE` - Active
95
+ - metadata: typing.Optional[typing.Dict[str, typing.Any]]. A JSON object containing any metadata associated with the document that you'd like to filter upon later.
96
+ """
97
+ _request: typing.Dict[str, typing.Any] = {}
98
+ if label is not OMIT:
99
+ _request["label"] = label
100
+ if status is not OMIT:
101
+ _request["status"] = status
102
+ if metadata is not OMIT:
103
+ _request["metadata"] = metadata
104
+ _response = self._client_wrapper.httpx_client.request(
105
+ "PATCH",
106
+ urllib.parse.urljoin(f"{self._environment.default}/", f"v1/documents/{id}"),
107
+ json=jsonable_encoder(_request),
108
+ headers=self._client_wrapper.get_headers(),
109
+ timeout=None,
110
+ )
111
+ if 200 <= _response.status_code < 300:
112
+ return pydantic.parse_obj_as(DocumentRead, _response.json()) # type: ignore
113
+ try:
114
+ _response_json = _response.json()
115
+ except JSONDecodeError:
116
+ raise ApiError(status_code=_response.status_code, body=_response.text)
117
+ raise ApiError(status_code=_response.status_code, body=_response_json)
118
+
71
119
  def upload(
72
120
  self,
73
121
  *,
@@ -176,6 +224,52 @@ class AsyncDocumentsClient:
176
224
  raise ApiError(status_code=_response.status_code, body=_response.text)
177
225
  raise ApiError(status_code=_response.status_code, body=_response_json)
178
226
 
227
+ async def partial_update(
228
+ self,
229
+ id: str,
230
+ *,
231
+ label: typing.Optional[str] = OMIT,
232
+ status: typing.Optional[DocumentStatus] = OMIT,
233
+ metadata: typing.Optional[typing.Dict[str, typing.Any]] = OMIT,
234
+ ) -> DocumentRead:
235
+ """
236
+
237
+ <strong style="background-color:#ffc107; color:white; padding:4px; border-radius:4px">Unstable</strong>
238
+
239
+ Update a Document, keying off of its Vellum-generated ID. Particularly useful for updating its metadata.
240
+
241
+ Parameters:
242
+ - id: str. A UUID string identifying this document.
243
+
244
+ - label: typing.Optional[str]. A human-readable label for the document. Defaults to the originally uploaded file's file name. <span style="white-space: nowrap">`non-empty`</span> <span style="white-space: nowrap">`<= 1000 characters`</span>
245
+
246
+ - status: typing.Optional[DocumentStatus]. The current status of the document
247
+
248
+ * `ACTIVE` - Active
249
+ - metadata: typing.Optional[typing.Dict[str, typing.Any]]. A JSON object containing any metadata associated with the document that you'd like to filter upon later.
250
+ """
251
+ _request: typing.Dict[str, typing.Any] = {}
252
+ if label is not OMIT:
253
+ _request["label"] = label
254
+ if status is not OMIT:
255
+ _request["status"] = status
256
+ if metadata is not OMIT:
257
+ _request["metadata"] = metadata
258
+ _response = await self._client_wrapper.httpx_client.request(
259
+ "PATCH",
260
+ urllib.parse.urljoin(f"{self._environment.default}/", f"v1/documents/{id}"),
261
+ json=jsonable_encoder(_request),
262
+ headers=self._client_wrapper.get_headers(),
263
+ timeout=None,
264
+ )
265
+ if 200 <= _response.status_code < 300:
266
+ return pydantic.parse_obj_as(DocumentRead, _response.json()) # type: ignore
267
+ try:
268
+ _response_json = _response.json()
269
+ except JSONDecodeError:
270
+ raise ApiError(status_code=_response.status_code, body=_response.text)
271
+ raise ApiError(status_code=_response.status_code, body=_response_json)
272
+
179
273
  async def upload(
180
274
  self,
181
275
  *,
vellum/types/__init__.py CHANGED
@@ -10,11 +10,13 @@ from .content_type import ContentType
10
10
  from .deployment_node_result import DeploymentNodeResult
11
11
  from .deployment_node_result_data import DeploymentNodeResultData
12
12
  from .deployment_read import DeploymentRead
13
- from .deployment_read_status_enum import DeploymentReadStatusEnum
13
+ from .deployment_status import DeploymentStatus
14
14
  from .document import Document
15
15
  from .document_document_to_document_index import DocumentDocumentToDocumentIndex
16
16
  from .document_index_read import DocumentIndexRead
17
17
  from .document_index_status import DocumentIndexStatus
18
+ from .document_read import DocumentRead
19
+ from .document_status import DocumentStatus
18
20
  from .enriched_normalized_completion import EnrichedNormalizedCompletion
19
21
  from .environment_enum import EnvironmentEnum
20
22
  from .evaluation_params import EvaluationParams
@@ -89,7 +91,6 @@ from .search_result import SearchResult
89
91
  from .search_result_merging_request import SearchResultMergingRequest
90
92
  from .search_weights_request import SearchWeightsRequest
91
93
  from .slim_document import SlimDocument
92
- from .slim_document_status_enum import SlimDocumentStatusEnum
93
94
  from .submit_completion_actual_request import SubmitCompletionActualRequest
94
95
  from .submit_completion_actuals_error_response import SubmitCompletionActualsErrorResponse
95
96
  from .terminal_node_chat_history_result import TerminalNodeChatHistoryResult
@@ -154,11 +155,13 @@ __all__ = [
154
155
  "DeploymentNodeResult",
155
156
  "DeploymentNodeResultData",
156
157
  "DeploymentRead",
157
- "DeploymentReadStatusEnum",
158
+ "DeploymentStatus",
158
159
  "Document",
159
160
  "DocumentDocumentToDocumentIndex",
160
161
  "DocumentIndexRead",
161
162
  "DocumentIndexStatus",
163
+ "DocumentRead",
164
+ "DocumentStatus",
162
165
  "EnrichedNormalizedCompletion",
163
166
  "EnvironmentEnum",
164
167
  "EvaluationParams",
@@ -233,7 +236,6 @@ __all__ = [
233
236
  "SearchResultMergingRequest",
234
237
  "SearchWeightsRequest",
235
238
  "SlimDocument",
236
- "SlimDocumentStatusEnum",
237
239
  "SubmitCompletionActualRequest",
238
240
  "SubmitCompletionActualsErrorResponse",
239
241
  "TerminalNodeChatHistoryResult",
@@ -6,7 +6,7 @@ import typing
6
6
  import pydantic
7
7
 
8
8
  from ..core.datetime_utils import serialize_datetime
9
- from .deployment_read_status_enum import DeploymentReadStatusEnum
9
+ from .deployment_status import DeploymentStatus
10
10
  from .environment_enum import EnvironmentEnum
11
11
  from .input_variable import InputVariable
12
12
  from .model_type_enum import ModelTypeEnum
@@ -21,7 +21,7 @@ class DeploymentRead(pydantic.BaseModel):
21
21
  name: str = pydantic.Field(
22
22
  description='A name that uniquely identifies this deployment within its workspace <span style="white-space: nowrap">`<= 150 characters`</span> '
23
23
  )
24
- status: typing.Optional[DeploymentReadStatusEnum] = pydantic.Field(
24
+ status: typing.Optional[DeploymentStatus] = pydantic.Field(
25
25
  description=(
26
26
  "The current status of the deployment\n"
27
27
  "\n"
@@ -6,7 +6,7 @@ import typing
6
6
  T_Result = typing.TypeVar("T_Result")
7
7
 
8
8
 
9
- class DeploymentReadStatusEnum(str, enum.Enum):
9
+ class DeploymentStatus(str, enum.Enum):
10
10
  """
11
11
  * `ACTIVE` - Active
12
12
  * `INACTIVE` - Inactive
@@ -23,9 +23,9 @@ class DeploymentReadStatusEnum(str, enum.Enum):
23
23
  inactive: typing.Callable[[], T_Result],
24
24
  archived: typing.Callable[[], T_Result],
25
25
  ) -> T_Result:
26
- if self is DeploymentReadStatusEnum.ACTIVE:
26
+ if self is DeploymentStatus.ACTIVE:
27
27
  return active()
28
- if self is DeploymentReadStatusEnum.INACTIVE:
28
+ if self is DeploymentStatus.INACTIVE:
29
29
  return inactive()
30
- if self is DeploymentReadStatusEnum.ARCHIVED:
30
+ if self is DeploymentStatus.ARCHIVED:
31
31
  return archived()
@@ -0,0 +1,53 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import datetime as dt
4
+ import typing
5
+
6
+ import pydantic
7
+
8
+ from ..core.datetime_utils import serialize_datetime
9
+ from .document_document_to_document_index import DocumentDocumentToDocumentIndex
10
+ from .document_status import DocumentStatus
11
+ from .processing_state_enum import ProcessingStateEnum
12
+
13
+
14
+ class DocumentRead(pydantic.BaseModel):
15
+ id: str
16
+ external_id: typing.Optional[str] = pydantic.Field(
17
+ description="The unique id of this document as it exists in the user's system."
18
+ )
19
+ last_uploaded_at: str
20
+ label: str = pydantic.Field(
21
+ description='A human-readable label for the document. Defaults to the originally uploaded file\'s file name. <span style="white-space: nowrap">`<= 1000 characters`</span> '
22
+ )
23
+ processing_state: typing.Optional[ProcessingStateEnum] = pydantic.Field(
24
+ description=(
25
+ "The current processing state of the document\n"
26
+ "\n"
27
+ "* `QUEUED` - Queued\n"
28
+ "* `PROCESSING` - Processing\n"
29
+ "* `PROCESSED` - Processed\n"
30
+ "* `FAILED` - Failed\n"
31
+ )
32
+ )
33
+ status: typing.Optional[DocumentStatus] = pydantic.Field(
34
+ description=("The current status of the document\n" "\n" "* `ACTIVE` - Active\n")
35
+ )
36
+ original_file_url: typing.Optional[str]
37
+ processed_file_url: typing.Optional[str]
38
+ document_to_document_indexes: typing.List[DocumentDocumentToDocumentIndex]
39
+ metadata: typing.Optional[typing.Dict[str, typing.Any]] = pydantic.Field(
40
+ description="A previously supplied JSON object containing metadata that can filtered on when searching."
41
+ )
42
+
43
+ def json(self, **kwargs: typing.Any) -> str:
44
+ kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
45
+ return super().json(**kwargs_with_defaults)
46
+
47
+ def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
48
+ kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
49
+ return super().dict(**kwargs_with_defaults)
50
+
51
+ class Config:
52
+ frozen = True
53
+ json_encoders = {dt.datetime: serialize_datetime}
@@ -2,4 +2,4 @@
2
2
 
3
3
  import typing_extensions
4
4
 
5
- SlimDocumentStatusEnum = typing_extensions.Literal["ACTIVE"]
5
+ DocumentStatus = typing_extensions.Literal["ACTIVE"]
@@ -7,9 +7,9 @@ import pydantic
7
7
 
8
8
  from ..core.datetime_utils import serialize_datetime
9
9
  from .document_document_to_document_index import DocumentDocumentToDocumentIndex
10
+ from .document_status import DocumentStatus
10
11
  from .processing_failure_reason_enum import ProcessingFailureReasonEnum
11
12
  from .processing_state_enum import ProcessingStateEnum
12
- from .slim_document_status_enum import SlimDocumentStatusEnum
13
13
 
14
14
 
15
15
  class SlimDocument(pydantic.BaseModel):
@@ -41,7 +41,7 @@ class SlimDocument(pydantic.BaseModel):
41
41
  "* `INVALID_FILE` - Invalid File\n"
42
42
  )
43
43
  )
44
- status: typing.Optional[SlimDocumentStatusEnum] = pydantic.Field(
44
+ status: typing.Optional[DocumentStatus] = pydantic.Field(
45
45
  description=("The document's current status.\n" "\n" "* `ACTIVE` - Active\n")
46
46
  )
47
47
  keywords: typing.Optional[typing.List[str]] = pydantic.Field(
@@ -11,7 +11,7 @@ from .chat_message import ChatMessage
11
11
 
12
12
  class TerminalNodeChatHistoryResult(pydantic.BaseModel):
13
13
  name: str = pydantic.Field(description="The unique name given to the terminal node that produced this output.")
14
- value: typing.List[ChatMessage]
14
+ value: typing.Optional[typing.List[ChatMessage]]
15
15
 
16
16
  def json(self, **kwargs: typing.Any) -> str:
17
17
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -10,7 +10,7 @@ from ..core.datetime_utils import serialize_datetime
10
10
 
11
11
  class TerminalNodeJsonResult(pydantic.BaseModel):
12
12
  name: str = pydantic.Field(description="The unique name given to the terminal node that produced this output.")
13
- value: typing.Dict[str, typing.Any]
13
+ value: typing.Optional[typing.Dict[str, typing.Any]]
14
14
 
15
15
  def json(self, **kwargs: typing.Any) -> str:
16
16
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -10,7 +10,7 @@ from ..core.datetime_utils import serialize_datetime
10
10
 
11
11
  class TerminalNodeStringResult(pydantic.BaseModel):
12
12
  name: str = pydantic.Field(description="The unique name given to the terminal node that produced this output.")
13
- value: str
13
+ value: typing.Optional[str]
14
14
 
15
15
  def json(self, **kwargs: typing.Any) -> str:
16
16
  kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vellum-ai
3
- Version: 0.0.29
3
+ Version: 0.0.31
4
4
  Summary:
5
5
  Requires-Python: >=3.7,<4.0
6
6
  Classifier: Programming Language :: Python :: 3
@@ -1,8 +1,8 @@
1
- vellum/__init__.py,sha256=qlDI7ztUbsINm5ZJah3pvEradgWSDQjvQZu_UUW1JLY,9121
2
- vellum/client.py,sha256=Kxyp8ZazvSbjIEEoBAVCDJeqIHCfW4OMa5vZl84cRYQ,32325
1
+ vellum/__init__.py,sha256=HrSVslaxHhe2HO6epFwF49_XWDS4HhbfNRrSNVqZdss,9127
2
+ vellum/client.py,sha256=FXZCbMfR3jgPMXAdobRkPpInZN1dz4kOjKPgRsyvSEQ,32613
3
3
  vellum/core/__init__.py,sha256=QJS3CJ2TYP2E1Tge0CS6Z7r8LTNzJHQVX1hD3558eP0,519
4
4
  vellum/core/api_error.py,sha256=RE8LELok2QCjABadECTvtDp7qejA1VmINCh6TbqPwSE,426
5
- vellum/core/client_wrapper.py,sha256=wNp6eZVx2wfl0CBL2eRja6VzGPjd-VH0F27tkE1YSGk,758
5
+ vellum/core/client_wrapper.py,sha256=svrxCUFTlYC-vgNq0OcVMPv2gWSuK7bbuGWyWJ2Y7f8,897
6
6
  vellum/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
7
7
  vellum/core/jsonable_encoder.py,sha256=yHrx0C19n1H77G-GanO-HsFyBPVMlsJz7WffsHwXEVI,3710
8
8
  vellum/core/remove_none_from_dict.py,sha256=8m91FC3YuVem0Gm9_sXhJ2tGvP33owJJdrqCLEdowGw,330
@@ -20,7 +20,7 @@ vellum/resources/deployments/client.py,sha256=cCnzNh50THrjuM8hAB6M40bTtKWo4u4mEH
20
20
  vellum/resources/document_indexes/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
21
21
  vellum/resources/document_indexes/client.py,sha256=Ced_UO_Ds1EU-TGTSCtzH7vCSE1JoM2XoUE9RB9tVJg,7198
22
22
  vellum/resources/documents/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
23
- vellum/resources/documents/client.py,sha256=IoTSqAIL7mWmXSyK6V3iJJdVYJYMhUX3-SMaiFRR_No,9827
23
+ vellum/resources/documents/client.py,sha256=r8O7lv6fJznAERSSPr2VHr3FdQhNIiVcd2xeKS-j4-k,14263
24
24
  vellum/resources/model_versions/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
25
25
  vellum/resources/model_versions/client.py,sha256=EURN_8gzN_jxq1ElyOIud4RZm2xFNua9kI--ntR0FdQ,5890
26
26
  vellum/resources/registered_prompts/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
@@ -29,7 +29,7 @@ vellum/resources/sandboxes/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roe
29
29
  vellum/resources/sandboxes/client.py,sha256=pj0PeQocAszu5-uPXjsOOSvGkHfgJpHIzmTfU5-CmPM,8292
30
30
  vellum/resources/test_suites/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
31
31
  vellum/resources/test_suites/client.py,sha256=KzFNGnFLRGkgrdZIpXtSOKntsqE79GPl1kkGc6qhNJg,8419
32
- vellum/types/__init__.py,sha256=Gfq7DSPHR2tuwixkHheEBWpbYY0ouAsOFso5-uXIX-0,12637
32
+ vellum/types/__init__.py,sha256=fVhnxjEvUapHISFHJwN5Prgaf62O8hZNCDHxDAgFXGE,12645
33
33
  vellum/types/block_type_enum.py,sha256=BQ8ZN1OKhOdmHeQ3-bhMfkLLohirsNhHPljBJX8Bbmo,1051
34
34
  vellum/types/chat_message.py,sha256=ESrounRUkV54kKOgc2oaz_mPvpl-xntCDfxEnSt9A4c,818
35
35
  vellum/types/chat_message_request.py,sha256=7M8f8F6qRSl93WxkiEsZAJLrQYVRkKchkcbUmcikK7o,825
@@ -39,12 +39,14 @@ vellum/types/conditional_node_result_data.py,sha256=00r_gnLm_vl21ca3msx2h8E2kAfu
39
39
  vellum/types/content_type.py,sha256=a1VMXJl7XOcb0dPUw1mCHPQMElextdsjvTi-tTeJNsg,508
40
40
  vellum/types/deployment_node_result.py,sha256=ogzAlyhpH4_w9PKPMOVMRvseRv_t3FJLHS2bauK3pQo,841
41
41
  vellum/types/deployment_node_result_data.py,sha256=5SMqC-X7S99aEvhfTUZ579affaisap-OG7ELWwDnfZU,826
42
- vellum/types/deployment_read.py,sha256=4TLUYQ2lof0sfbnPj-7xB_DxdcCG-CJCP6dsPtSstCU,2247
43
- vellum/types/deployment_read_status_enum.py,sha256=LrMcVcuZcPJqWYmbE_am0G_pQl_fDYKO1ktnzdVECqQ,793
42
+ vellum/types/deployment_read.py,sha256=3rzcDbwGZq0cdfmd09x076KjzFd8Plu6QWIWyF8njXA,2221
43
+ vellum/types/deployment_status.py,sha256=rtsRFv9cx0kEwNYkgscGzo62bvaNME-rU8ZxFlcY0M8,761
44
44
  vellum/types/document.py,sha256=fdiJyRyO0nec1foyfYDMy1K9mZlI80qSUT5_lMmYoyo,1160
45
45
  vellum/types/document_document_to_document_index.py,sha256=UUIbQNz5ejctfe_VFReG8JHp1oD7ESFQOeuCkNWurys,1511
46
46
  vellum/types/document_index_read.py,sha256=b-ps3EnmTE1_NSCIpAae0eqw_X3_LpgV9xIJsqCUxNU,1910
47
47
  vellum/types/document_index_status.py,sha256=DtcNtByS8wUEuxfYAW7IQVPSN4HaGJTynP0jNkxgbKE,560
48
+ vellum/types/document_read.py,sha256=w5Q7aZGl9YByXWlnYKf-Ws-90XMhok3bvAqrcyOhQMo,2194
49
+ vellum/types/document_status.py,sha256=dkotle2rykOxF1QxqcM8af2ORzmFjZR5a7pHXP6SjDQ,144
48
50
  vellum/types/enriched_normalized_completion.py,sha256=CrDe9H5Nz38mPT32klFpzg4Z8b2hMVIQP_O3g-F5r3Q,1911
49
51
  vellum/types/environment_enum.py,sha256=16gr0xkzNIO5dhrOnJNjcQ34z9Xk1oE-egW17P0RWDs,799
50
52
  vellum/types/evaluation_params.py,sha256=t3jChEFTUnXPMrNRpq9YuKQ8ssfuOZBi96Pbx3SImx4,925
@@ -118,16 +120,15 @@ vellum/types/search_response.py,sha256=VuPbVXkJ_OHDuJJEGZDVwB7DcTbcTmstixantli7l
118
120
  vellum/types/search_result.py,sha256=WRAlpIxxNDmSOkoEWHshK74zmuItDrbOwvvChrb33lQ,1145
119
121
  vellum/types/search_result_merging_request.py,sha256=2P02ejNr_m_Sx_vdPTQEcDuGPdFI_37nExX9UNQD0pk,830
120
122
  vellum/types/search_weights_request.py,sha256=EdAbOOXOWXCq0C3lziyRHTuNIlODw0BECQNu9IUlfZ0,953
121
- vellum/types/slim_document.py,sha256=KHAesS9x23OFs_GD8L1YKLQp8CzUPOzjl5dChp8RqnI,2846
122
- vellum/types/slim_document_status_enum.py,sha256=_j2jq3_Acudzgb2tlDIwvl6aBkRLoZ0HAbnKtVCi5G8,152
123
+ vellum/types/slim_document.py,sha256=BnS2YA9JLj6dBm21Z-GXnPSgi1T-RWWTaIjx2RKpk84,2820
123
124
  vellum/types/submit_completion_actual_request.py,sha256=k5BHx1JUfq8XcLbBZOsbSNzVA3xNVNVFsJkM7tMtXpo,1656
124
125
  vellum/types/submit_completion_actuals_error_response.py,sha256=8ZNcGD7l4crYQoKn4LTdMKbRVGHs3v-M3ER9lTkKzmM,772
125
- vellum/types/terminal_node_chat_history_result.py,sha256=SvlvoLfQFxUNRpaBNAbE6X72X54GrM1ERmaZ373efto,939
126
- vellum/types/terminal_node_json_result.py,sha256=X9Dzwy25RcBLU_8s2pK5bc-nHWRfoOUslJyKYAj0SsU,898
126
+ vellum/types/terminal_node_chat_history_result.py,sha256=RzqPzyUswQ86pXHgjCPMhmkBhqjQVcTcLipwygXNQqY,956
127
+ vellum/types/terminal_node_json_result.py,sha256=d85-Q-1NJLk8cVq6mWHUgQssYABe0sNHqkAOpV0l7Dk,915
127
128
  vellum/types/terminal_node_result.py,sha256=dNdckayDfIQ_LR9IKfklxyFfJErPgtxA9tzsDUXjiPA,833
128
129
  vellum/types/terminal_node_result_data.py,sha256=4fsLNH_jkTOIKViXfHavkpE2GhB5NBUJdnVni82tEpk,845
129
130
  vellum/types/terminal_node_result_output.py,sha256=QkdMPv5SH8gvtfVd2md9KoAe2inIBMINGul94ZZ-YXE,1107
130
- vellum/types/terminal_node_string_result.py,sha256=puo54vwX0G-3zDZVRlz5deVA8K-lOQQt0Lu50g8zWmA,875
131
+ vellum/types/terminal_node_string_result.py,sha256=xl19fA2GR705Qx0MFQsz0vgl1XApcJL0njue85gMeCo,892
131
132
  vellum/types/test_suite_test_case.py,sha256=_zk_wcESjEWG_fePNPLXsmvpFJmB_bPueacVLVeihNg,1439
132
133
  vellum/types/upload_document_error_response.py,sha256=VNSsUbd0TSCKnlBohoKv1h3AJDJeicH-q3kjkXpxKG4,763
133
134
  vellum/types/upload_document_response.py,sha256=wi6kn2SWkE5ZlbSQvGXKuQUZInz-2ik1ib7A4kqvkGo,833
@@ -149,6 +150,6 @@ vellum/types/workflow_result_event_output_data_chat_history.py,sha256=viyNe9VF8-
149
150
  vellum/types/workflow_result_event_output_data_json.py,sha256=-zLIOCCOurui_vXE_WJlaDO5xfTQx81EGyWdgSurItk,1125
150
151
  vellum/types/workflow_result_event_output_data_string.py,sha256=EqTpT1SJxagtuFCxFkJuze64MgUjGuZlzYEOqnR1UGM,1253
151
152
  vellum/types/workflow_stream_event.py,sha256=sVpX2OBZq-vVn8A74opHnV_pD83eoICS5_aJ1H9WjxM,819
152
- vellum_ai-0.0.29.dist-info/METADATA,sha256=RXBKyRSfoR5eS8UEBsLQFi7q2exz_Qs5cXuogl9-IW8,3487
153
- vellum_ai-0.0.29.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
154
- vellum_ai-0.0.29.dist-info/RECORD,,
153
+ vellum_ai-0.0.31.dist-info/METADATA,sha256=mM6eMuIL0jR9oUFxNFfOVt7SAygB6X9mkiwbGVe6UbU,3487
154
+ vellum_ai-0.0.31.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
155
+ vellum_ai-0.0.31.dist-info/RECORD,,