vellum-ai 0.3.11__py3-none-any.whl → 0.3.12__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 +4 -0
- vellum/core/client_wrapper.py +1 -1
- vellum/resources/document_indexes/client.py +282 -0
- vellum/types/__init__.py +4 -0
- vellum/types/array_variable_value_item.py +11 -0
- vellum/types/fulfilled_workflow_node_result_event.py +2 -0
- vellum/types/generate_request.py +1 -1
- vellum/types/image_variable_value.py +33 -0
- vellum/types/initiated_workflow_node_result_event.py +1 -0
- vellum/types/rejected_workflow_node_result_event.py +1 -0
- vellum/types/streaming_workflow_node_result_event.py +1 -0
- vellum/types/workflow_execution_event_error_code.py +5 -0
- {vellum_ai-0.3.11.dist-info → vellum_ai-0.3.12.dist-info}/METADATA +1 -1
- {vellum_ai-0.3.11.dist-info → vellum_ai-0.3.12.dist-info}/RECORD +16 -15
- {vellum_ai-0.3.11.dist-info → vellum_ai-0.3.12.dist-info}/LICENSE +0 -0
- {vellum_ai-0.3.11.dist-info → vellum_ai-0.3.12.dist-info}/WHEEL +0 -0
vellum/__init__.py
CHANGED
@@ -18,6 +18,7 @@ from .types import (
|
|
18
18
|
ArrayVariableValueItem_ChatHistory,
|
19
19
|
ArrayVariableValueItem_Error,
|
20
20
|
ArrayVariableValueItem_FunctionCall,
|
21
|
+
ArrayVariableValueItem_Image,
|
21
22
|
ArrayVariableValueItem_Json,
|
22
23
|
ArrayVariableValueItem_Number,
|
23
24
|
ArrayVariableValueItem_SearchResults,
|
@@ -129,6 +130,7 @@ from .types import (
|
|
129
130
|
ImageChatMessageContent,
|
130
131
|
ImageChatMessageContentRequest,
|
131
132
|
ImageEnum,
|
133
|
+
ImageVariableValue,
|
132
134
|
IndexingStateEnum,
|
133
135
|
InitiatedEnum,
|
134
136
|
InitiatedExecutePromptEvent,
|
@@ -445,6 +447,7 @@ __all__ = [
|
|
445
447
|
"ArrayVariableValueItem_ChatHistory",
|
446
448
|
"ArrayVariableValueItem_Error",
|
447
449
|
"ArrayVariableValueItem_FunctionCall",
|
450
|
+
"ArrayVariableValueItem_Image",
|
448
451
|
"ArrayVariableValueItem_Json",
|
449
452
|
"ArrayVariableValueItem_Number",
|
450
453
|
"ArrayVariableValueItem_SearchResults",
|
@@ -561,6 +564,7 @@ __all__ = [
|
|
561
564
|
"ImageChatMessageContent",
|
562
565
|
"ImageChatMessageContentRequest",
|
563
566
|
"ImageEnum",
|
567
|
+
"ImageVariableValue",
|
564
568
|
"IndexingStateEnum",
|
565
569
|
"InitiatedEnum",
|
566
570
|
"InitiatedExecutePromptEvent",
|
vellum/core/client_wrapper.py
CHANGED
@@ -16,7 +16,7 @@ class BaseClientWrapper:
|
|
16
16
|
headers: typing.Dict[str, str] = {
|
17
17
|
"X-Fern-Language": "Python",
|
18
18
|
"X-Fern-SDK-Name": "vellum-ai",
|
19
|
-
"X-Fern-SDK-Version": "0.3.
|
19
|
+
"X-Fern-SDK-Version": "0.3.12",
|
20
20
|
}
|
21
21
|
headers["X_API_KEY"] = self.api_key
|
22
22
|
return headers
|
@@ -187,6 +187,147 @@ class DocumentIndexesClient:
|
|
187
187
|
raise ApiError(status_code=_response.status_code, body=_response.text)
|
188
188
|
raise ApiError(status_code=_response.status_code, body=_response_json)
|
189
189
|
|
190
|
+
def update(
|
191
|
+
self,
|
192
|
+
id: str,
|
193
|
+
*,
|
194
|
+
label: str,
|
195
|
+
status: typing.Optional[EntityStatus] = OMIT,
|
196
|
+
environment: typing.Optional[EnvironmentEnum] = OMIT,
|
197
|
+
) -> DocumentIndexRead:
|
198
|
+
"""
|
199
|
+
Used to fully update a Document Index given its ID.
|
200
|
+
|
201
|
+
Parameters:
|
202
|
+
- id: str. A UUID string identifying this document index.
|
203
|
+
|
204
|
+
- label: str. A human-readable label for the document index
|
205
|
+
|
206
|
+
- status: typing.Optional[EntityStatus]. The current status of the document index
|
207
|
+
|
208
|
+
* `ACTIVE` - Active
|
209
|
+
* `ARCHIVED` - Archived
|
210
|
+
- environment: typing.Optional[EnvironmentEnum]. The environment this document index is used in
|
211
|
+
|
212
|
+
* `DEVELOPMENT` - Development
|
213
|
+
* `STAGING` - Staging
|
214
|
+
* `PRODUCTION` - Production---
|
215
|
+
from vellum.client import Vellum
|
216
|
+
|
217
|
+
client = Vellum(
|
218
|
+
api_key="YOUR_API_KEY",
|
219
|
+
)
|
220
|
+
client.document_indexes.update(
|
221
|
+
id="id",
|
222
|
+
label="label",
|
223
|
+
)
|
224
|
+
"""
|
225
|
+
_request: typing.Dict[str, typing.Any] = {"label": label}
|
226
|
+
if status is not OMIT:
|
227
|
+
_request["status"] = status
|
228
|
+
if environment is not OMIT:
|
229
|
+
_request["environment"] = environment
|
230
|
+
_response = self._client_wrapper.httpx_client.request(
|
231
|
+
"PUT",
|
232
|
+
urllib.parse.urljoin(f"{self._client_wrapper.get_environment().default}/", f"v1/document-indexes/{id}"),
|
233
|
+
json=jsonable_encoder(_request),
|
234
|
+
headers=self._client_wrapper.get_headers(),
|
235
|
+
timeout=None,
|
236
|
+
)
|
237
|
+
if 200 <= _response.status_code < 300:
|
238
|
+
return pydantic.parse_obj_as(DocumentIndexRead, _response.json()) # type: ignore
|
239
|
+
try:
|
240
|
+
_response_json = _response.json()
|
241
|
+
except JSONDecodeError:
|
242
|
+
raise ApiError(status_code=_response.status_code, body=_response.text)
|
243
|
+
raise ApiError(status_code=_response.status_code, body=_response_json)
|
244
|
+
|
245
|
+
def destroy(self, id: str) -> None:
|
246
|
+
"""
|
247
|
+
Used to delete a Document Index given its ID.
|
248
|
+
|
249
|
+
Parameters:
|
250
|
+
- id: str. A UUID string identifying this document index.
|
251
|
+
---
|
252
|
+
from vellum.client import Vellum
|
253
|
+
|
254
|
+
client = Vellum(
|
255
|
+
api_key="YOUR_API_KEY",
|
256
|
+
)
|
257
|
+
client.document_indexes.destroy(
|
258
|
+
id="id",
|
259
|
+
)
|
260
|
+
"""
|
261
|
+
_response = self._client_wrapper.httpx_client.request(
|
262
|
+
"DELETE",
|
263
|
+
urllib.parse.urljoin(f"{self._client_wrapper.get_environment().default}/", f"v1/document-indexes/{id}"),
|
264
|
+
headers=self._client_wrapper.get_headers(),
|
265
|
+
timeout=None,
|
266
|
+
)
|
267
|
+
if 200 <= _response.status_code < 300:
|
268
|
+
return
|
269
|
+
try:
|
270
|
+
_response_json = _response.json()
|
271
|
+
except JSONDecodeError:
|
272
|
+
raise ApiError(status_code=_response.status_code, body=_response.text)
|
273
|
+
raise ApiError(status_code=_response.status_code, body=_response_json)
|
274
|
+
|
275
|
+
def partial_update(
|
276
|
+
self,
|
277
|
+
id: str,
|
278
|
+
*,
|
279
|
+
label: typing.Optional[str] = OMIT,
|
280
|
+
status: typing.Optional[EntityStatus] = OMIT,
|
281
|
+
environment: typing.Optional[EnvironmentEnum] = OMIT,
|
282
|
+
) -> DocumentIndexRead:
|
283
|
+
"""
|
284
|
+
Used to partial update a Document Index given its ID.
|
285
|
+
|
286
|
+
Parameters:
|
287
|
+
- id: str. A UUID string identifying this document index.
|
288
|
+
|
289
|
+
- label: typing.Optional[str]. A human-readable label for the document index
|
290
|
+
|
291
|
+
- status: typing.Optional[EntityStatus]. The current status of the document index
|
292
|
+
|
293
|
+
* `ACTIVE` - Active
|
294
|
+
* `ARCHIVED` - Archived
|
295
|
+
- environment: typing.Optional[EnvironmentEnum]. The environment this document index is used in
|
296
|
+
|
297
|
+
* `DEVELOPMENT` - Development
|
298
|
+
* `STAGING` - Staging
|
299
|
+
* `PRODUCTION` - Production---
|
300
|
+
from vellum.client import Vellum
|
301
|
+
|
302
|
+
client = Vellum(
|
303
|
+
api_key="YOUR_API_KEY",
|
304
|
+
)
|
305
|
+
client.document_indexes.partial_update(
|
306
|
+
id="id",
|
307
|
+
)
|
308
|
+
"""
|
309
|
+
_request: typing.Dict[str, typing.Any] = {}
|
310
|
+
if label is not OMIT:
|
311
|
+
_request["label"] = label
|
312
|
+
if status is not OMIT:
|
313
|
+
_request["status"] = status
|
314
|
+
if environment is not OMIT:
|
315
|
+
_request["environment"] = environment
|
316
|
+
_response = self._client_wrapper.httpx_client.request(
|
317
|
+
"PATCH",
|
318
|
+
urllib.parse.urljoin(f"{self._client_wrapper.get_environment().default}/", f"v1/document-indexes/{id}"),
|
319
|
+
json=jsonable_encoder(_request),
|
320
|
+
headers=self._client_wrapper.get_headers(),
|
321
|
+
timeout=None,
|
322
|
+
)
|
323
|
+
if 200 <= _response.status_code < 300:
|
324
|
+
return pydantic.parse_obj_as(DocumentIndexRead, _response.json()) # type: ignore
|
325
|
+
try:
|
326
|
+
_response_json = _response.json()
|
327
|
+
except JSONDecodeError:
|
328
|
+
raise ApiError(status_code=_response.status_code, body=_response.text)
|
329
|
+
raise ApiError(status_code=_response.status_code, body=_response_json)
|
330
|
+
|
190
331
|
|
191
332
|
class AsyncDocumentIndexesClient:
|
192
333
|
def __init__(self, *, client_wrapper: AsyncClientWrapper):
|
@@ -351,3 +492,144 @@ class AsyncDocumentIndexesClient:
|
|
351
492
|
except JSONDecodeError:
|
352
493
|
raise ApiError(status_code=_response.status_code, body=_response.text)
|
353
494
|
raise ApiError(status_code=_response.status_code, body=_response_json)
|
495
|
+
|
496
|
+
async def update(
|
497
|
+
self,
|
498
|
+
id: str,
|
499
|
+
*,
|
500
|
+
label: str,
|
501
|
+
status: typing.Optional[EntityStatus] = OMIT,
|
502
|
+
environment: typing.Optional[EnvironmentEnum] = OMIT,
|
503
|
+
) -> DocumentIndexRead:
|
504
|
+
"""
|
505
|
+
Used to fully update a Document Index given its ID.
|
506
|
+
|
507
|
+
Parameters:
|
508
|
+
- id: str. A UUID string identifying this document index.
|
509
|
+
|
510
|
+
- label: str. A human-readable label for the document index
|
511
|
+
|
512
|
+
- status: typing.Optional[EntityStatus]. The current status of the document index
|
513
|
+
|
514
|
+
* `ACTIVE` - Active
|
515
|
+
* `ARCHIVED` - Archived
|
516
|
+
- environment: typing.Optional[EnvironmentEnum]. The environment this document index is used in
|
517
|
+
|
518
|
+
* `DEVELOPMENT` - Development
|
519
|
+
* `STAGING` - Staging
|
520
|
+
* `PRODUCTION` - Production---
|
521
|
+
from vellum.client import AsyncVellum
|
522
|
+
|
523
|
+
client = AsyncVellum(
|
524
|
+
api_key="YOUR_API_KEY",
|
525
|
+
)
|
526
|
+
await client.document_indexes.update(
|
527
|
+
id="id",
|
528
|
+
label="label",
|
529
|
+
)
|
530
|
+
"""
|
531
|
+
_request: typing.Dict[str, typing.Any] = {"label": label}
|
532
|
+
if status is not OMIT:
|
533
|
+
_request["status"] = status
|
534
|
+
if environment is not OMIT:
|
535
|
+
_request["environment"] = environment
|
536
|
+
_response = await self._client_wrapper.httpx_client.request(
|
537
|
+
"PUT",
|
538
|
+
urllib.parse.urljoin(f"{self._client_wrapper.get_environment().default}/", f"v1/document-indexes/{id}"),
|
539
|
+
json=jsonable_encoder(_request),
|
540
|
+
headers=self._client_wrapper.get_headers(),
|
541
|
+
timeout=None,
|
542
|
+
)
|
543
|
+
if 200 <= _response.status_code < 300:
|
544
|
+
return pydantic.parse_obj_as(DocumentIndexRead, _response.json()) # type: ignore
|
545
|
+
try:
|
546
|
+
_response_json = _response.json()
|
547
|
+
except JSONDecodeError:
|
548
|
+
raise ApiError(status_code=_response.status_code, body=_response.text)
|
549
|
+
raise ApiError(status_code=_response.status_code, body=_response_json)
|
550
|
+
|
551
|
+
async def destroy(self, id: str) -> None:
|
552
|
+
"""
|
553
|
+
Used to delete a Document Index given its ID.
|
554
|
+
|
555
|
+
Parameters:
|
556
|
+
- id: str. A UUID string identifying this document index.
|
557
|
+
---
|
558
|
+
from vellum.client import AsyncVellum
|
559
|
+
|
560
|
+
client = AsyncVellum(
|
561
|
+
api_key="YOUR_API_KEY",
|
562
|
+
)
|
563
|
+
await client.document_indexes.destroy(
|
564
|
+
id="id",
|
565
|
+
)
|
566
|
+
"""
|
567
|
+
_response = await self._client_wrapper.httpx_client.request(
|
568
|
+
"DELETE",
|
569
|
+
urllib.parse.urljoin(f"{self._client_wrapper.get_environment().default}/", f"v1/document-indexes/{id}"),
|
570
|
+
headers=self._client_wrapper.get_headers(),
|
571
|
+
timeout=None,
|
572
|
+
)
|
573
|
+
if 200 <= _response.status_code < 300:
|
574
|
+
return
|
575
|
+
try:
|
576
|
+
_response_json = _response.json()
|
577
|
+
except JSONDecodeError:
|
578
|
+
raise ApiError(status_code=_response.status_code, body=_response.text)
|
579
|
+
raise ApiError(status_code=_response.status_code, body=_response_json)
|
580
|
+
|
581
|
+
async def partial_update(
|
582
|
+
self,
|
583
|
+
id: str,
|
584
|
+
*,
|
585
|
+
label: typing.Optional[str] = OMIT,
|
586
|
+
status: typing.Optional[EntityStatus] = OMIT,
|
587
|
+
environment: typing.Optional[EnvironmentEnum] = OMIT,
|
588
|
+
) -> DocumentIndexRead:
|
589
|
+
"""
|
590
|
+
Used to partial update a Document Index given its ID.
|
591
|
+
|
592
|
+
Parameters:
|
593
|
+
- id: str. A UUID string identifying this document index.
|
594
|
+
|
595
|
+
- label: typing.Optional[str]. A human-readable label for the document index
|
596
|
+
|
597
|
+
- status: typing.Optional[EntityStatus]. The current status of the document index
|
598
|
+
|
599
|
+
* `ACTIVE` - Active
|
600
|
+
* `ARCHIVED` - Archived
|
601
|
+
- environment: typing.Optional[EnvironmentEnum]. The environment this document index is used in
|
602
|
+
|
603
|
+
* `DEVELOPMENT` - Development
|
604
|
+
* `STAGING` - Staging
|
605
|
+
* `PRODUCTION` - Production---
|
606
|
+
from vellum.client import AsyncVellum
|
607
|
+
|
608
|
+
client = AsyncVellum(
|
609
|
+
api_key="YOUR_API_KEY",
|
610
|
+
)
|
611
|
+
await client.document_indexes.partial_update(
|
612
|
+
id="id",
|
613
|
+
)
|
614
|
+
"""
|
615
|
+
_request: typing.Dict[str, typing.Any] = {}
|
616
|
+
if label is not OMIT:
|
617
|
+
_request["label"] = label
|
618
|
+
if status is not OMIT:
|
619
|
+
_request["status"] = status
|
620
|
+
if environment is not OMIT:
|
621
|
+
_request["environment"] = environment
|
622
|
+
_response = await self._client_wrapper.httpx_client.request(
|
623
|
+
"PATCH",
|
624
|
+
urllib.parse.urljoin(f"{self._client_wrapper.get_environment().default}/", f"v1/document-indexes/{id}"),
|
625
|
+
json=jsonable_encoder(_request),
|
626
|
+
headers=self._client_wrapper.get_headers(),
|
627
|
+
timeout=None,
|
628
|
+
)
|
629
|
+
if 200 <= _response.status_code < 300:
|
630
|
+
return pydantic.parse_obj_as(DocumentIndexRead, _response.json()) # type: ignore
|
631
|
+
try:
|
632
|
+
_response_json = _response.json()
|
633
|
+
except JSONDecodeError:
|
634
|
+
raise ApiError(status_code=_response.status_code, body=_response.text)
|
635
|
+
raise ApiError(status_code=_response.status_code, body=_response_json)
|
vellum/types/__init__.py
CHANGED
@@ -22,6 +22,7 @@ from .array_variable_value_item import (
|
|
22
22
|
ArrayVariableValueItem_ChatHistory,
|
23
23
|
ArrayVariableValueItem_Error,
|
24
24
|
ArrayVariableValueItem_FunctionCall,
|
25
|
+
ArrayVariableValueItem_Image,
|
25
26
|
ArrayVariableValueItem_Json,
|
26
27
|
ArrayVariableValueItem_Number,
|
27
28
|
ArrayVariableValueItem_SearchResults,
|
@@ -146,6 +147,7 @@ from .generate_stream_result_data import GenerateStreamResultData
|
|
146
147
|
from .image_chat_message_content import ImageChatMessageContent
|
147
148
|
from .image_chat_message_content_request import ImageChatMessageContentRequest
|
148
149
|
from .image_enum import ImageEnum
|
150
|
+
from .image_variable_value import ImageVariableValue
|
149
151
|
from .indexing_state_enum import IndexingStateEnum
|
150
152
|
from .initiated_enum import InitiatedEnum
|
151
153
|
from .initiated_execute_prompt_event import InitiatedExecutePromptEvent
|
@@ -471,6 +473,7 @@ __all__ = [
|
|
471
473
|
"ArrayVariableValueItem_ChatHistory",
|
472
474
|
"ArrayVariableValueItem_Error",
|
473
475
|
"ArrayVariableValueItem_FunctionCall",
|
476
|
+
"ArrayVariableValueItem_Image",
|
474
477
|
"ArrayVariableValueItem_Json",
|
475
478
|
"ArrayVariableValueItem_Number",
|
476
479
|
"ArrayVariableValueItem_SearchResults",
|
@@ -582,6 +585,7 @@ __all__ = [
|
|
582
585
|
"ImageChatMessageContent",
|
583
586
|
"ImageChatMessageContentRequest",
|
584
587
|
"ImageEnum",
|
588
|
+
"ImageVariableValue",
|
585
589
|
"IndexingStateEnum",
|
586
590
|
"InitiatedEnum",
|
587
591
|
"InitiatedExecutePromptEvent",
|
@@ -9,6 +9,7 @@ import typing_extensions
|
|
9
9
|
from .chat_history_variable_value import ChatHistoryVariableValue
|
10
10
|
from .error_variable_value import ErrorVariableValue
|
11
11
|
from .function_call_variable_value import FunctionCallVariableValue
|
12
|
+
from .image_variable_value import ImageVariableValue
|
12
13
|
from .json_variable_value import JsonVariableValue
|
13
14
|
from .number_variable_value import NumberVariableValue
|
14
15
|
from .search_results_variable_value import SearchResultsVariableValue
|
@@ -78,6 +79,15 @@ class ArrayVariableValueItem_FunctionCall(FunctionCallVariableValue):
|
|
78
79
|
allow_population_by_field_name = True
|
79
80
|
|
80
81
|
|
82
|
+
class ArrayVariableValueItem_Image(ImageVariableValue):
|
83
|
+
type: typing_extensions.Literal["IMAGE"]
|
84
|
+
|
85
|
+
class Config:
|
86
|
+
frozen = True
|
87
|
+
smart_union = True
|
88
|
+
allow_population_by_field_name = True
|
89
|
+
|
90
|
+
|
81
91
|
ArrayVariableValueItem = typing.Union[
|
82
92
|
ArrayVariableValueItem_String,
|
83
93
|
ArrayVariableValueItem_Number,
|
@@ -86,4 +96,5 @@ ArrayVariableValueItem = typing.Union[
|
|
86
96
|
ArrayVariableValueItem_SearchResults,
|
87
97
|
ArrayVariableValueItem_Error,
|
88
98
|
ArrayVariableValueItem_FunctionCall,
|
99
|
+
ArrayVariableValueItem_Image,
|
89
100
|
]
|
@@ -23,7 +23,9 @@ class FulfilledWorkflowNodeResultEvent(pydantic.BaseModel):
|
|
23
23
|
node_result_id: str
|
24
24
|
ts: typing.Optional[dt.datetime]
|
25
25
|
data: typing.Optional[WorkflowNodeResultData]
|
26
|
+
source_execution_id: typing.Optional[str]
|
26
27
|
output_values: typing.Optional[typing.List[NodeOutputCompiledValue]]
|
28
|
+
mocked: typing.Optional[bool]
|
27
29
|
|
28
30
|
def json(self, **kwargs: typing.Any) -> str:
|
29
31
|
kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
|
vellum/types/generate_request.py
CHANGED
@@ -17,7 +17,7 @@ class GenerateRequest(pydantic.BaseModel):
|
|
17
17
|
description="Key/value pairs for each template variable defined in the deployment's prompt."
|
18
18
|
)
|
19
19
|
chat_history: typing.Optional[typing.List[ChatMessageRequest]] = pydantic.Field(
|
20
|
-
description="Optionally provide a list of chat messages that'll be used in place of the special
|
20
|
+
description="Optionally provide a list of chat messages that'll be used in place of the special chat_history variable, if included in the prompt."
|
21
21
|
)
|
22
22
|
external_ids: typing.Optional[typing.List[str]] = pydantic.Field(
|
23
23
|
description="Optionally include a unique identifier for each generation, as represented outside of Vellum. Note that this should generally be a list of length one."
|
@@ -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 .vellum_image import VellumImage
|
8
|
+
|
9
|
+
try:
|
10
|
+
import pydantic.v1 as pydantic # type: ignore
|
11
|
+
except ImportError:
|
12
|
+
import pydantic # type: ignore
|
13
|
+
|
14
|
+
|
15
|
+
class ImageVariableValue(pydantic.BaseModel):
|
16
|
+
"""
|
17
|
+
A base Vellum primitive value representing an image.
|
18
|
+
"""
|
19
|
+
|
20
|
+
value: typing.Optional[VellumImage]
|
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
|
+
json_encoders = {dt.datetime: serialize_datetime}
|
@@ -23,6 +23,7 @@ class InitiatedWorkflowNodeResultEvent(pydantic.BaseModel):
|
|
23
23
|
node_result_id: str
|
24
24
|
ts: typing.Optional[dt.datetime]
|
25
25
|
data: typing.Optional[WorkflowNodeResultData]
|
26
|
+
source_execution_id: typing.Optional[str]
|
26
27
|
input_values: typing.Optional[typing.List[NodeInputVariableCompiledValue]]
|
27
28
|
|
28
29
|
def json(self, **kwargs: typing.Any) -> str:
|
@@ -23,6 +23,7 @@ class RejectedWorkflowNodeResultEvent(pydantic.BaseModel):
|
|
23
23
|
node_result_id: str
|
24
24
|
ts: typing.Optional[dt.datetime]
|
25
25
|
data: typing.Optional[WorkflowNodeResultData]
|
26
|
+
source_execution_id: typing.Optional[str]
|
26
27
|
error: WorkflowEventError
|
27
28
|
|
28
29
|
def json(self, **kwargs: typing.Any) -> str:
|
@@ -23,6 +23,7 @@ class StreamingWorkflowNodeResultEvent(pydantic.BaseModel):
|
|
23
23
|
node_result_id: str
|
24
24
|
ts: typing.Optional[dt.datetime]
|
25
25
|
data: typing.Optional[WorkflowNodeResultData]
|
26
|
+
source_execution_id: typing.Optional[str]
|
26
27
|
output: typing.Optional[NodeOutputCompiledValue]
|
27
28
|
output_index: typing.Optional[int]
|
28
29
|
|
@@ -9,6 +9,7 @@ T_Result = typing.TypeVar("T_Result")
|
|
9
9
|
class WorkflowExecutionEventErrorCode(str, enum.Enum):
|
10
10
|
"""
|
11
11
|
- `WORKFLOW_INITIALIZATION` - WORKFLOW_INITIALIZATION
|
12
|
+
- `WORKFLOW_CANCELLED` - WORKFLOW_CANCELLED
|
12
13
|
- `NODE_EXECUTION_COUNT_LIMIT_REACHED` - NODE_EXECUTION_COUNT_LIMIT_REACHED
|
13
14
|
- `INTERNAL_SERVER_ERROR` - INTERNAL_SERVER_ERROR
|
14
15
|
- `NODE_EXECUTION` - NODE_EXECUTION
|
@@ -18,6 +19,7 @@ class WorkflowExecutionEventErrorCode(str, enum.Enum):
|
|
18
19
|
"""
|
19
20
|
|
20
21
|
WORKFLOW_INITIALIZATION = "WORKFLOW_INITIALIZATION"
|
22
|
+
WORKFLOW_CANCELLED = "WORKFLOW_CANCELLED"
|
21
23
|
NODE_EXECUTION_COUNT_LIMIT_REACHED = "NODE_EXECUTION_COUNT_LIMIT_REACHED"
|
22
24
|
INTERNAL_SERVER_ERROR = "INTERNAL_SERVER_ERROR"
|
23
25
|
NODE_EXECUTION = "NODE_EXECUTION"
|
@@ -28,6 +30,7 @@ class WorkflowExecutionEventErrorCode(str, enum.Enum):
|
|
28
30
|
def visit(
|
29
31
|
self,
|
30
32
|
workflow_initialization: typing.Callable[[], T_Result],
|
33
|
+
workflow_cancelled: typing.Callable[[], T_Result],
|
31
34
|
node_execution_count_limit_reached: typing.Callable[[], T_Result],
|
32
35
|
internal_server_error: typing.Callable[[], T_Result],
|
33
36
|
node_execution: typing.Callable[[], T_Result],
|
@@ -37,6 +40,8 @@ class WorkflowExecutionEventErrorCode(str, enum.Enum):
|
|
37
40
|
) -> T_Result:
|
38
41
|
if self is WorkflowExecutionEventErrorCode.WORKFLOW_INITIALIZATION:
|
39
42
|
return workflow_initialization()
|
43
|
+
if self is WorkflowExecutionEventErrorCode.WORKFLOW_CANCELLED:
|
44
|
+
return workflow_cancelled()
|
40
45
|
if self is WorkflowExecutionEventErrorCode.NODE_EXECUTION_COUNT_LIMIT_REACHED:
|
41
46
|
return node_execution_count_limit_reached()
|
42
47
|
if self is WorkflowExecutionEventErrorCode.INTERNAL_SERVER_ERROR:
|
@@ -1,8 +1,8 @@
|
|
1
|
-
vellum/__init__.py,sha256=
|
1
|
+
vellum/__init__.py,sha256=zTwQHri6cl5qHzBUy2wPgPBCM7e15rlv_GQZs7EmGx4,29101
|
2
2
|
vellum/client.py,sha256=dwO7KhE6C9Fyxbvq1C6xhxl1G5NsRoczvQKYhv1tV5A,61953
|
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
|
5
|
+
vellum/core/client_wrapper.py,sha256=ElH_xC4Zo62H4hZneZCIwgB6ztFvMft6KUpdXJj1-bQ,1213
|
6
6
|
vellum/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
|
7
7
|
vellum/core/jsonable_encoder.py,sha256=MTYkDov2EryHgee4QM46uZiBOuOXK9KTHlBdBwU-CpU,3799
|
8
8
|
vellum/core/remove_none_from_dict.py,sha256=8m91FC3YuVem0Gm9_sXhJ2tGvP33owJJdrqCLEdowGw,330
|
@@ -20,7 +20,7 @@ vellum/resources/deployments/client.py,sha256=qBfKoPVgxvAgL5jFnfhA1QgAOILYR8Yuu5
|
|
20
20
|
vellum/resources/deployments/types/__init__.py,sha256=IhwnmoXJ0r_QEhh1b2tBcaAm_x3fWMVuIhYmAapp_ZA,183
|
21
21
|
vellum/resources/deployments/types/deployments_list_request_status.py,sha256=phuWe_3mJi4tJh2XR9BFw5QimgzBBWKzKRG2huILy8o,518
|
22
22
|
vellum/resources/document_indexes/__init__.py,sha256=YpOl_9IV7xOlH4OmusQxtAJB11kxQfCSMDyT1_UD0oM,165
|
23
|
-
vellum/resources/document_indexes/client.py,sha256=
|
23
|
+
vellum/resources/document_indexes/client.py,sha256=Xk1Yp3mzCpVz7xnIO3Nv0qVkItt2ZsS4Lc9QpgBwuxk,26348
|
24
24
|
vellum/resources/document_indexes/types/__init__.py,sha256=IoFqKHN_VBdEhC7VL8_6Jbatrn0e0zuYEJAJUahcUR0,196
|
25
25
|
vellum/resources/document_indexes/types/document_indexes_list_request_status.py,sha256=oW_LSbBd7Rsz9Agw5SGZQgWdqoJkMAPAS2olMLvWr04,530
|
26
26
|
vellum/resources/documents/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
@@ -39,7 +39,7 @@ vellum/resources/workflow_deployments/__init__.py,sha256=-5BCA0kSmW6WUh4gqLuQtHv
|
|
39
39
|
vellum/resources/workflow_deployments/client.py,sha256=9MTY1hrzOjy1n7uMD6PDHZ1rFvdKGI2YEQHGJeLbLiw,6711
|
40
40
|
vellum/resources/workflow_deployments/types/__init__.py,sha256=rmS_4dtbgLHGNQJ_pOloygrjl4sNbKZjTEKBxbMyz6E,208
|
41
41
|
vellum/resources/workflow_deployments/types/workflow_deployments_list_request_status.py,sha256=8-G1SalBR6-AfRnb6POOR9M3tvZa3CGwFIs1ArZb6uw,542
|
42
|
-
vellum/types/__init__.py,sha256=
|
42
|
+
vellum/types/__init__.py,sha256=tkWNUKSGa_QhsONxqydC_eSqTVN8YdPiLUoDLKFaQW8,38585
|
43
43
|
vellum/types/api_node_result.py,sha256=ESEn5ydtAWsyEI1H3vYbhh1eiByPWNlNzsgQcUWPIfw,1003
|
44
44
|
vellum/types/api_node_result_data.py,sha256=HvpZaAKYXsoBOnobACIYCmIdxbRc7Zp-ibIohiz_Nzc,1125
|
45
45
|
vellum/types/array_chat_message_content.py,sha256=9aHCzT66f7zTX0oWEL-yvIL8L81joe2Qe5L_DaRDqnU,1050
|
@@ -47,7 +47,7 @@ vellum/types/array_chat_message_content_item.py,sha256=a383gaeYCucVDvnY1Xk1z8INb
|
|
47
47
|
vellum/types/array_chat_message_content_item_request.py,sha256=Plg6Ny8pwn-na1r1vPeJSdg1IovFcJqcyT_0UiYqfWs,1345
|
48
48
|
vellum/types/array_chat_message_content_request.py,sha256=nXvKOArX2Bx_T2S4-ZK_09bfsSkCQb69OahL1Q_h3bU,1079
|
49
49
|
vellum/types/array_enum.py,sha256=ZpwcTHF6WuYeP8QlVfkuJ_YSyPH0iYjeydvHV5kF0HU,138
|
50
|
-
vellum/types/array_variable_value_item.py,sha256=
|
50
|
+
vellum/types/array_variable_value_item.py,sha256=BJpv0duFE0t5J-vnI-4DnwbYFn-M5RSDWonTQi5PENo,2755
|
51
51
|
vellum/types/block_type_enum.py,sha256=w6z5D3RTe75YQBG6HpX8NCbO_kSZxIL0Xy1xss2RKS8,1051
|
52
52
|
vellum/types/chat_history_enum.py,sha256=aiUhxKMC4D83EjGnKNPSzSwoBT5J6G0O-TvBTKr4Oek,151
|
53
53
|
vellum/types/chat_history_input_request.py,sha256=VyGS0Mv_He-fI2d22ygpC2k5ddXKnzWDRFc7-Xkryog,1130
|
@@ -102,7 +102,7 @@ vellum/types/fulfilled_execute_prompt_response.py,sha256=YAvwKdFuo_uT8G2LqOOjtkw
|
|
102
102
|
vellum/types/fulfilled_execute_workflow_workflow_result_event.py,sha256=TK8fgst0AlvtZXM1SstNvmiWlrz5yJuwI0c4S3FAE4g,1109
|
103
103
|
vellum/types/fulfilled_function_call.py,sha256=fZrTh53XN3dO5bvdtVWGtQ91VgLPKzeMY-b-Z53-uKo,1012
|
104
104
|
vellum/types/fulfilled_prompt_execution_meta.py,sha256=FDCQoqisV2SzUVD_Yw0lMv9tM7gW_6wHTbobUBz9Jwk,1145
|
105
|
-
vellum/types/fulfilled_workflow_node_result_event.py,sha256=
|
105
|
+
vellum/types/fulfilled_workflow_node_result_event.py,sha256=grzFXlragKZp80ZJqYtdJKeICp2ScfmlXhl2NIKP-1c,1382
|
106
106
|
vellum/types/function_call.py,sha256=-eKu1NTK3WevQDZVVwaMzYkctl8KErZq9bh1qOxc4MA,770
|
107
107
|
vellum/types/function_call_chat_message_content.py,sha256=23LvUR_xUKOylDGjal0JIhdY5BEkvj_aZ64iZxRKZxM,1085
|
108
108
|
vellum/types/function_call_chat_message_content_request.py,sha256=XS0Hu4KsSixRG0TN5u7OUhMJXlOtCpwUv86MR3yQUwc,1114
|
@@ -112,7 +112,7 @@ vellum/types/function_call_enum.py,sha256=lZBEEFornevJE_dyUkeoeR4MNR-4SEY1Mdu2F5
|
|
112
112
|
vellum/types/function_call_variable_value.py,sha256=tS-nHSwuue4EWOLXEuLI4xSjSNGVoHBK15Dd0C4hu30,932
|
113
113
|
vellum/types/generate_error_response.py,sha256=auz4NPbyceabCe0eN89lavEwotWbqsTSbkJtI_lgXJs,950
|
114
114
|
vellum/types/generate_options_request.py,sha256=iqmaim-vkUgVsPMmDJ7sMmSl1WOGB4Psgfg-GvNe0ik,1117
|
115
|
-
vellum/types/generate_request.py,sha256=
|
115
|
+
vellum/types/generate_request.py,sha256=qCVZ4jR-aqU9P_7h80alVN2rRXxAoxDvP5ZG36jd2Ow,1578
|
116
116
|
vellum/types/generate_response.py,sha256=DQNreImNi2knMgzvt4q-VPitdhS6cxj_xCoUYtAaOIs,1342
|
117
117
|
vellum/types/generate_result.py,sha256=1MVaFTb1rh2_bN2smGBbFTanYGBvldM2sqULWoLonE4,1397
|
118
118
|
vellum/types/generate_result_data.py,sha256=T66DWYhJs48Td0OAjMm87FRFGD92hhSEYZJERc9Xa7Q,1111
|
@@ -123,11 +123,12 @@ vellum/types/generate_stream_result_data.py,sha256=lyAvxY714Zo5W1i4WkuIbKjyP3rLG
|
|
123
123
|
vellum/types/image_chat_message_content.py,sha256=1b9g-yESgYCT9JVeNEvkpSdP483zac83yvsqYUhYAy4,995
|
124
124
|
vellum/types/image_chat_message_content_request.py,sha256=DEHXr7I9Ei5wrVP2PC1iRwLAwbrO7xDnNdJMmaTvVQE,1024
|
125
125
|
vellum/types/image_enum.py,sha256=wbwM5geMGBoG_Lyb7-YOcd7LNZWtTGaA2HTPAmSX-j4,138
|
126
|
+
vellum/types/image_variable_value.py,sha256=uCnQqsZUQMwMT9U2yoZtXCFtGbSXEyEdms4lmnOT8JI,1013
|
126
127
|
vellum/types/indexing_state_enum.py,sha256=uzSb7J75Ge0vxH_WQ2WHKQbZIjvfluyZ2IjqyJjVCrs,1181
|
127
128
|
vellum/types/initiated_enum.py,sha256=WitSWqhr_zFsxu2mxpl3lTVKYJApUT0YrVLSAK6ZJGY,146
|
128
129
|
vellum/types/initiated_execute_prompt_event.py,sha256=MJFmfVzldEDwnnM_RW0gOsEuN1pUzBcyWPzCqfBUAic,1147
|
129
130
|
vellum/types/initiated_prompt_execution_meta.py,sha256=ZVno9in1xXbxsOg7WuJmnIWdB6yVHfGI-8hUqMhWLeo,1173
|
130
|
-
vellum/types/initiated_workflow_node_result_event.py,sha256=
|
131
|
+
vellum/types/initiated_workflow_node_result_event.py,sha256=bNih_dkUEl2fDV5oQpHvO5Xplyinyde6SGDXYr9yyGI,1369
|
131
132
|
vellum/types/json_enum.py,sha256=H2EVEuwMW8VUcLhN3fRxbH15yre0hIvZ0eI3A78E7lY,136
|
132
133
|
vellum/types/json_input_request.py,sha256=9eUhL2wKld-1T7DPoisa61IIBqQXFrydxaX_kGRtElQ,1057
|
133
134
|
vellum/types/json_variable_value.py,sha256=khIv0GUMx3sTl2Y8LtRe3PAFWRYXejThDBYMolVbA6Y,917
|
@@ -206,7 +207,7 @@ vellum/types/rejected_execute_prompt_response.py,sha256=JOf1cYJ3TVR8aWLuL1R-sj7D
|
|
206
207
|
vellum/types/rejected_execute_workflow_workflow_result_event.py,sha256=b7nicyHuhAOc5R_KrWAkRZ30BHAEddgSTMTihjXobx8,1123
|
207
208
|
vellum/types/rejected_function_call.py,sha256=c14z0BPFs48ifoccraOShFaQDz6D6g2kpktJs1TE39E,1051
|
208
209
|
vellum/types/rejected_prompt_execution_meta.py,sha256=rJsnrz0E0W6Mkq9gBLN4c3sXrr1Mg14feUtj4bKZgvY,1144
|
209
|
-
vellum/types/rejected_workflow_node_result_event.py,sha256=
|
210
|
+
vellum/types/rejected_workflow_node_result_event.py,sha256=W0xjG4jueOKMxoNOc0UYTSpOA6mCVKt_3_-RjrKh6OI,1292
|
210
211
|
vellum/types/sandbox_scenario.py,sha256=VSw8QtLk3ryMBVM_L4Pdd4f4eqgGU7SG5bR7bSqTx5E,1098
|
211
212
|
vellum/types/scenario_input.py,sha256=a1OMFt1RxJMNYoJ9PclhJof_IBuJE6B4fb6kPdIuLTg,1108
|
212
213
|
vellum/types/scenario_input_request.py,sha256=kXki5ENoCHDSajT5pcL_NRi4urAtZvg5d2-B7zHDIsY,1137
|
@@ -231,7 +232,7 @@ vellum/types/slim_workflow_deployment.py,sha256=dkluwIhwpxDcC54QLIIQgBOSK-hCFsbY
|
|
231
232
|
vellum/types/streaming_enum.py,sha256=-cknmHCDQ3FJXHthl5jH-UpZxhIqjGjNxhQR9w1RdTY,146
|
232
233
|
vellum/types/streaming_execute_prompt_event.py,sha256=WaXFjOukP3MOgSWkZgmjKw9hNOvVjJtHi1xqM1pUgys,1393
|
233
234
|
vellum/types/streaming_prompt_execution_meta.py,sha256=2cCvMZZqVL2s2X7VrfiyDuLEwemBylDQVlyOfsVFF7A,1043
|
234
|
-
vellum/types/streaming_workflow_node_result_event.py,sha256=
|
235
|
+
vellum/types/streaming_workflow_node_result_event.py,sha256=djA6RLSaJoxPBIvEGxJqGMi2sVb2Pr1awhfizBJ_wCw,1368
|
235
236
|
vellum/types/string_chat_message_content.py,sha256=c9jLLefmb-ABurTEbOOslDPtKt6Pl5xgUSfvBUb__bI,950
|
236
237
|
vellum/types/string_chat_message_content_request.py,sha256=1dsWZfgFrcgp6VdndL_cIj-grkX0QORlETb9ZraEesA,957
|
237
238
|
vellum/types/string_enum.py,sha256=66RXPEf5TwDtolzhy2Nvoa1VV4dfg-ATn35Rakofg7I,140
|
@@ -284,7 +285,7 @@ vellum/types/workflow_event_error.py,sha256=X1jEuhnsZoh75FN6XpTvtbO67UD_1SiACsBk
|
|
284
285
|
vellum/types/workflow_execution_actual_chat_history_request.py,sha256=skI-SuvBfJc8wxH2EDMqyKCGUgjfFFBUPkCLyncHgmM,2014
|
285
286
|
vellum/types/workflow_execution_actual_json_request.py,sha256=hVKpBukLehwDUopO7iiKv-wTvxDDg4SXMYmmexZDMo0,1951
|
286
287
|
vellum/types/workflow_execution_actual_string_request.py,sha256=uKnv8Ds88GF-Jjc1BoaFhhqmw89MnWeD4JyrpUjjttA,1928
|
287
|
-
vellum/types/workflow_execution_event_error_code.py,sha256=
|
288
|
+
vellum/types/workflow_execution_event_error_code.py,sha256=1_DYokaHexD0qZFdcAlSwdWFHvWPSfohpg2H3ruWkIQ,2449
|
288
289
|
vellum/types/workflow_execution_event_type.py,sha256=3wBRqajwUjytX6akx2zXkWxUB-iqB7xLIK4kAKNISPk,567
|
289
290
|
vellum/types/workflow_execution_node_result_event.py,sha256=Bt1G9Oh0vX5eQQiWR1EW0meerlZbfWexYwdlOxNXuFQ,1145
|
290
291
|
vellum/types/workflow_execution_workflow_result_event.py,sha256=OjXgi0Z7dmX3aY1CDF2PLzFQhtsfb80dgtMlecvKOXo,1140
|
@@ -317,7 +318,7 @@ vellum/types/workflow_result_event_output_data_number.py,sha256=5IG_4XZhUZjwCfX1
|
|
317
318
|
vellum/types/workflow_result_event_output_data_search_results.py,sha256=FZeTLuHIBJp0AZUqBOzzMN4ntf_Q3hKP4m3vIzVq2cQ,1404
|
318
319
|
vellum/types/workflow_result_event_output_data_string.py,sha256=XJ7ZFTS2eqIMwa-zXFPDowu3o3JnRUfxC1MJIk8nPDI,1478
|
319
320
|
vellum/types/workflow_stream_event.py,sha256=OQUSzwoM-OCfWxNzeOVVLsjCue_WWqin3tGMtwvp_rc,873
|
320
|
-
vellum_ai-0.3.
|
321
|
-
vellum_ai-0.3.
|
322
|
-
vellum_ai-0.3.
|
323
|
-
vellum_ai-0.3.
|
321
|
+
vellum_ai-0.3.12.dist-info/LICENSE,sha256=CcaljEIoOBaU-wItPH4PmM_mDCGpyuUY0Er1BGu5Ti8,1073
|
322
|
+
vellum_ai-0.3.12.dist-info/METADATA,sha256=cyR7MfsEHtK3cooJEGMcvwSBr_2dlaYtSZMcIuYh48U,3487
|
323
|
+
vellum_ai-0.3.12.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
|
324
|
+
vellum_ai-0.3.12.dist-info/RECORD,,
|
File without changes
|
File without changes
|